receive schedule events and markdown and removeitemsseeninpreviousexecutions remove duplicates
Configured with Chain LLM, Gmail, Linear, OpenAI Chat Model, and additional nodes. Review the connections and setup before adapting this template.
Node categories in this workflow
- Trigger
- AI & models
- Transform
- Messaging
- Integration
Icons describe general node roles, inferred from node types. Inspect the parameters for the configured action.
Drag to pan; use + and − to zoom. Reconstructed from the exported node positions; nothing runs here. Dashed lines represent non-main connections. Full node names and notes appear below.
How it works
The exported workflow contains the following configured nodes. Their connections are shown above; inspect the JSON for the complete logic, expressions, and external actions.
| Node | Category | Type | Operation |
|---|---|---|---|
| Schedule Trigger | Trigger | Schedule Trigger | See node parameters |
| OpenAI Chat Model | AI & models | OpenAI Chat Model | See node parameters |
| Structured Output Parser | Transform | Output Parser Structured | See node parameters |
| Markdown | Transform | Markdown | See node parameters |
| Mark as Seen | Transform | Remove Duplicates | removeItemsSeenInPreviousExecutions |
| Generate Issue From Support Request | AI & models | Chain LLM | See node parameters |
| Get Recent Messages | Messaging | Gmail | getAll |
| Create Issue in Linear.App | Integration | Linear | See node parameters |
Setup
- Download the JSON and import it into an isolated n8n instance. Leave the workflow inactive.
- Connect your own credentials through n8n’s credential store. Replace
REPLACE_WITH_*values with your resource identifiers. - Inspect API destinations, Code nodes, database queries, file paths, and outbound actions.
- Run with synthetic data and harmless destinations. Enable triggers only after checking the actual outputs.
Requirements
An n8n instance with the listed node types and compatible versions. Service-connected workflows may require accounts, credentials, or paid APIs.
Credential types declared in the source
gmailOAuth2linearApiopenAiApi
Workflow notes
2. Automate Generation and Triaging of Ticket
2. Automate Generation and Triaging of Ticket
Read more about the Basic LLM node
New tickets always need to be properly labelled and prioritised but it's not always possible to get to update all incoming tickets if you're light on hands. Using an AI is a great use-case for triaging of tickets as its contextual understanding helps automates this step.
1. Watch Gmail Inbox for Support Emails
1. Watch Gmail Inbox for Support Emails
Learn more about the Gmail node
This template assumes a group email specifically for support tickets! If you have a general inbox, you may need to classify and filter each message which might become costly. The "remove duplicates" node (ie. "Mark as seen") ensures we only process each email exactly once.
3. Create Issue in Linear.App
3. Create Issue in Linear.App
Read more about the Linear.App node
This is only a simple example to create an issue in Linear.App but easily extendable to add much more!
Try It Out!
Try It Out!
This n8n template watches a Gmail inbox for support messages and creates an equivalent issue item in Linear.
How it works
- A scheduled trigger fetches recent Gmail messages from the inbox which collects support requests.
- These support requests are filtered to ensure they are only processed once and their HTML body is converted to markdown for easier parsing.
- Each support request is then triaged via an AI Agent which adds appropriate labels, assesses priority and summarises a title and description of the original request.
- Finally, the AI generated values are used to create an issue in Linear to be actioned.
How to use
- Ensure the messages fetched are solely support requests otherwise you'll need to classify messages before processing them.
- Specify the labels and priorities to use in the system prompt of the AI agent.
Requirements
- Gmail for incoming support messages
- OpenAI for LLM
- Linear for issue management
Customising this workflow
- Consider automating more steps after the issue is created such as attempting issue resolution or capacity planning.
Need Help?
Join the Discord or ask in the Forum!
Happy Hacking!
Gmail Filters
Gmail Filters
Here we're using the filter to:user@example.com to capture support requests.
receive schedule events and markdown and removeitemsseeninpreviousexecutions remove duplicates
receive schedule events and markdown and removeitemsseeninpreviousexecutions remove duplicates
Purpose and structure
This folder contains the receive schedule events and markdown and removeitemsseeninpreviousexecutions remove duplicates workflow. Its executable nodes use chainLlm, gmail, linear, lmChatOpenAi, markdown, outputParserStructured, removeDuplicates, scheduleTrigger. The table and connection map below are derived from the JSON, not an inferred guarantee of behavior.
Setup
Import inactive. Configure your own credentials and replace REPLACE_WITH_* values. Review external destinations and Code nodes before running.
Entry points
Schedule Trigger
Verification
Sanitized source candidate; not runtime-tested. This overview is generated from node metadata. Read the folder README for the connection map, credential types, and license.
Attribution
https://github.com/Zie619/n8n-workflows/blob/94007c1445d9258a7da116646b79473e7c7c3282/workflows/Schedule/0912_Schedule_Removeduplicates_Create_Scheduled.json MIT; preserve source notices.