The moment it happens
Triage support requests into Jira and alert the right Slack channel
Each incoming support request becomes a Jira ticket with a category, priority and summary, and is posted to the Slack channel for that category.
- Runs
- The moment it happens
- Apps
- Jira, Slack
- AI
- Yes, uses the built-in AI allowance
- Access
- Jira create issues; Slack chat:write
Send this to your assistant
Create a ClickRuntime automation: when a support request arrives at the trigger link, have AI pick a category, priority and one-line summary, create a ticket in Jira project SUP, and post it to the matching Slack channel.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A software company's support form sends every request to one queue. A support lead spends the first hour of each day reading them, deciding which team owns each one and creating Jira tickets. Urgent billing problems wait behind feature questions.
Sorting each request as it arrives, creating the ticket and alerting the right team's channel gets the request to the right people in seconds. The lead reviews and adjusts instead of doing the sorting by hand.
What you get out of it
The right team sees it first
Billing issues go to #billing, bugs to #eng-support. Each team watches its own channel.
Urgent requests stand out
A priority is set from the request text. High-priority tickets are obvious in Jira and in Slack.
Tickets are ready to work
Each ticket has a summary, category and priority. Agents start helping instead of sorting.
Nothing is lost between tools
Every request becomes a ticket with a link in Slack. Conversations and tracking stay connected.
How it works
What happens, step by step
When a support request comes in, your form or chat tool sends it to your automation's trigger link.
AI reads the request and picks a category, a priority and a one-line summary.
A ticket is created in your Jira support project with those details and the full message.
The ticket is posted to the Slack channel for its category, with a link.
Before it runs live
- Connect Jira
- Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)
- Paste your automation's link into the other app's webhook settings
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Change what the AI looks for, or how it writes the result
- Add another app, for example also send it to Google Sheets
- Combine it with other Jira and Slack steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_event, credentials, http, notify, state, ai
JIRA, SITE = "https://api.atlassian.com/ex/jira/your-cloud-id", "https://acme.atlassian.net/browse/"
adf = lambda text: {"type": "doc", "version": 1, "content": [{"type": "paragraph", "content": [{"type": "text", "text": text}]}]}
def jira(method, path, **kw):
resp = http.request(method, JIRA + path, headers={"Authorization": f"Bearer {credentials.connection('jira', 'work')}", "Accept": "application/json"}, **kw)
return resp.raise_for_status() or (resp.json() if resp.content else None)
CHANNELS = {"billing": "#billing", "bug": "#eng-support", "account": "#support", "question": "#support"}
SCHEMA = {"type": "object", "properties": {"category": {"type": "string", "enum": list(CHANNELS)},
"priority": {"type": "string", "enum": ["High", "Medium", "Low"]}, "summary": {"type": "string"}}}
@on_event
def handle(event):
if state.get(event.event_id):
return {"duplicate": True}
req = event.json or {}
t = ai.generate(f"Subject: {req.get('subject')}\n{req.get('message', '')[:4000]}", json_schema=SCHEMA, max_output_tokens=120,
system="Triage this support request. The summary is one short line.").json
issue = jira("POST", "/rest/api/3/issue", json={"fields": {"project": {"key": "SUP"}, "issuetype": {"name": "Task"},
"summary": t["summary"][:250], "priority": {"name": t["priority"]}, "labels": [t["category"]],
"description": adf(f"From {req.get('email')}\n\n{req.get('message', '')}")}})
notify.slack(f"[{t['priority']}] {t['summary']} from {req.get('email')} <{SITE}{issue['key']}|{issue['key']}>", channel=CHANNELS[t["category"]])
state.set(event.event_id, issue["key"])
return {"issue": issue["key"], **t}FAQ
Common questions
Where do support requests come from?
Can I change the categories and channels?
Does it reply to the customer?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Turn security alerts into Jira tickets and Slack messages
Each security alert creates one Jira ticket, posts to your security channel, and messages the affected person in Slack when the alert names them.
See how it worksCreate onboarding tickets in Jira and welcome new hires in Slack
When a new hire is added, an onboarding epic with tasks appears in Jira, they are invited to the right Slack channels, and the team gets a welcome post.
See how it worksUpdate Jira and post release notes to Slack when you tag a release
When a release is tagged, the Jira tickets mentioned in its commits get a fix version and move to Done, and Slack gets the release notes.
See how it worksKeep exploring
Set up “Triage support requests into Jira and alert the right Slack channel” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.