ChatGPTWorkPlanningAI score · PendingAI-assisted edit · no obvious prompt-injection riskn8n.io

Auto-Assign JIRA Tickets with n8n: Supabase Vector Store + AI Matching

Periodically write resolved JIRA tickets to a Supabase vector store; for stale unassigned tickets, use AI to find similar historical records and auto-assign by workload

ExperiencedStepsWorkflowPrompt
Who
Technical teams or ops leads who need to reduce ticket backlog and automatically assign pending JIRA issues
You get
Stale unassigned tickets are auto-assigned to the most capable member with the lowest current load, with a comment left on the issue
You need
n8n · supabase

Constraints

Prerequisites: accessible n8n instance; JIRA Cloud project and API credentials (jiraSoftwareCloudApi); Supabase project with pgvector extension enabled and a documents table; OpenAI API credentials (openAiApi). The template contains two scheduled flows: Flow 1 pulls resolved tickets daily into the vector store; Flow 2 scans stale unassigned tickets, runs AI similarity search and workload-based sorting, then auto-assigns. You must modify JQL and parameters to match your actual project name, team members, and time thresholds. Source does not provide cost estimates.

What they did

Author jimleuk published a dual-flow automation template on the n8n official template gallery: Flow 1 periodically pulls resolved JIRA issues into a Supabase vector store; Flow 2 scans stale unassigned issues, uses an AI Agent with similarity search to find members who previously resolved similar issues, then sorts by current workload and auto-assigns the ticket, leaving a comment on the issue.

How it went

The author states this template can help busy teams reduce manual backlog management effort (author_report). The template is listed on n8n.io with 2041 views. This site has not tested execution; actual results are not guaranteed.

Worth knowing

1) If no similar issues are found, the template skips the issue; the author suggests escalating to a project manager in this case. 2) The assignment logic is simplified and can be extended with department, vacation, or other criteria. 3) JIRA and Supabase can be swapped for alternatives like Linear or Qdrant. 4) The workflow.json hardcodes 'My Kanban Project' and a 5-day threshold in JQL, which must be updated for your environment. 5) Ensure your Supabase documents table is compatible with Langchain vector store expectations.

n8n workflow template

Structure checked · Not run-tested

Use “Import from File” in n8n, or copy the JSON and paste it into the editor. Connect your own accounts, then try test data. The template is inactive by default.

Setup and test checklist

Credentials to connect

  • Embeddings OpenAI node: connect OpenAI API credentials.
  • Issues Similarity Database node: connect supabaseApi credentials.
  • Supabase Vector Store node: connect supabaseApi credentials.
  • Embeddings OpenAI1 node: connect OpenAI API credentials.
  • OpenAI Chat Model node: connect OpenAI API credentials.
  • Check User Workflow node: connect jiraSoftwareCloudApi credentials.
  • Assign User to Ticket node: connect jiraSoftwareCloudApi credentials.
  • Get Unassigned Tickets more than 5 days node: connect jiraSoftwareCloudApi credentials.
  • Add Comment to Issue node: connect jiraSoftwareCloudApi credentials.
  • Last 50 Resolved node: connect jiraSoftwareCloudApi credentials.
  • OpenAI Chat Model1 node: connect OpenAI API credentials.

Configuration to replace

  • Source template is n8n public workflow #3395 (~36 nodes). Keep inactive after import; verify triggers, expressions and external API endpoints.
  • Sticky-note guidance is informational; replace placeholders with your own accounts, sheet schemas or channel IDs.

Test input and expected output

  • Manually run the main path once in a test workspace and confirm credentialed nodes authenticate without errors.
  • Drive one synthetic/redacted sample through and check output fields and downstream writes before enabling in production.

Template changes

  • Author credential bindings, webhookId and execution data are removed; the workflow is inactive. Nodes, connections and original prompts are preserved. Not run-tested in n8n.
  • No business-logic edits; verify keys, quotas and privacy compliance before use.

Template retrieved: 2026-10-24

Steps

  1. Prepare credentials and Supabase vector store

    Configure three credential types in n8n: OpenAI API (openAiApi), Supabase (supabaseApi), and JIRA Cloud (jiraSoftwareCloudApi). In Supabase, follow the Langchain quickstart to create a pgvector-enabled database and documents table for later vector storage.

  2. Get resolved issues

    Flow 1 starts with a Schedule Trigger, then uses a JIRA node with JQL to fetch recently resolved issues. A Remove Duplicates node ensures each issue is inserted only once.

  3. Build the vector store index

    JIRA issue summary, description, creation/resolution dates, and assignee metadata are processed through Default Data Loader and Recursive Character Text Splitter, then embedded with OpenAI Embeddings and written to Supabase Vector Store (Issues Similarity Database).

    Execution prompt · Source text。Default Data Loader node JSON Data field (jsonMode=expressionData)

    =# {{ $json.title }}
    - created {{ $json.created_date }}
    - resolved {{ $json.resolution_date }}
    
    ## description
    {{ $json.description }}
  4. Watch for stale unassigned issues

    Flow 2 starts with another Schedule Trigger, then queries JIRA for issues with status To Do, empty assignee, and unchanged assignee for more than 5 days.

  5. AI retrieval of similar resolved issues

    For each stale issue, the AI Agent node calls the Supabase Vector Store tool to retrieve similar resolved issues and extract historical assignee information.

    Execution prompt · Source text。Find Similar Issues + Assignees node text field (user input / ticket to match)

    =# {{ $json.fields.summary }}
    
    ## description
    {{ $json.fields.description }}

    Execution prompt · Source text。Find Similar Issues + Assignees node System Message field

    You are a project management assistant helping to assign stale JIRA issues to team members. To find out who best to assign the issue to, you must first find similar JIRA issues in terms of problem and context and attain the team members who resolved them. The logic is that these team members are likely to be best suited to take on the issue since they've tackled similar issues before.
    
    In your response, for each matching issue, list the following:
    * issue_key
    * assignee_id
    * assignee_name
  6. Filter best assignee by workload

    After deduplicating candidate assignees from the AI response, the workflow queries JIRA for each person's current In Progress issue count, then sorts via Summarize and Sort nodes to pick the least loaded member.

  7. Auto-assign and comment

    Assign the ticket to the least-loaded member and add a JIRA comment explaining the auto-assignment. The loop continues until all assignable stale issues are processed.

Prompt you can copy

Setup guidance · Editorial suggestion。Give to setup assistant; confirm inputs and permissions before guiding import and modifications

This block is the prompt. Ads are never placed here.

You are an n8n workflow setup assistant. The user wants to replicate the 'Auto-assign JIRA tickets' template. First confirm they have: 1) an n8n instance; 2) JIRA Cloud credentials and project permissions; 3) a Supabase project initialized with pgvector per https://supabase.com/docs/guides/ai/langchain?database-method=sql; 4) an OpenAI API key. Then guide them to import the workflow JSON, modify Schedule Trigger intervals, and update JQL project names and time thresholds, then test both flows for vector store writes and auto-assignment.

Paste into an AI assistant or n8n import wizard; replace 'My Kanban Project' in JQL with your actual project name

Source

Auto-assign support tickets with JIRA, Supabase and AI · jimleuk · n8n.io · 2025-04-01

Comments & feedback

Tried this method? Share results, problems or improvements. Comments appear after moderation. Please avoid sensitive information.

Loading…

    Related