Reference · Tools
Jira Trigger
Starts workflow when Jira events occur
The Jira Trigger starts a workflow when the events you select happen in Jira Software Cloud — issue, comment, sprint, board, project, version, worklog and user activity — passing the full webhook payload through. A typical build is notifying a channel whenever an issue moves into a blocked status.
- Node type
- Webhook trigger
- Parameters
- 2
- Outputs
- Output
- Credentials
- Jira Software Cloud
Jira Trigger
Triggers on Jira issue, comment, sprint, board, project, and version events.
Overview
The Jira Trigger node listens for webhook events from Jira Software Cloud. It starts a workflow automatically when issues are created, updated, or deleted, when comments or worklogs change, when sprints start or close, when boards or projects are modified, and many other Jira events. The node receives the full Jira webhook payload including issue details, user information, changelog entries, and event metadata. Supports filtering by specific event types.
Category: Productivity
Tool Name: jira_trigger
Version: 1
Appearance: Icon: si-jira | Color: #0052cc
Node Type
Trigger — webhook (receives incoming HTTP callbacks)
Input / Output
| Direction | Port(s) |
|---|---|
| Input | None (trigger node) |
| Output | Output |
Credentials
This tool requires Jira Software Cloud credentials. See the Credentials Guide for setup instructions.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Events | multiOptions | Yes | [] | The Jira events to listen for. Select specific events or * for all events. |
Options: * (All Events), board_configuration_changed, board_created, board_deleted, board_updated, comment_created, comment_deleted, comment_updated, jira:issue_created, jira:issue_deleted, issuelink_created, issuelink_deleted, jira:issue_updated, option_attachments_changed, option_issuelinks_changed, option_subtasks_changed, option_timetracking_changed, option_unassigned_issues_changed, option_voting_changed, option_watching_changed, project_created, project_deleted, project_updated, sprint_closed, sprint_created, sprint_deleted, sprint_started, sprint_updated, user_created, user_deleted, user_updated, jira:version_created, jira:version_deleted, jira:version_moved, jira:version_released, jira:version_unreleased, jira:version_updated, worklog_created, worklog_deleted, worklog_updated | ||||
| Additional Fields | collection | No | {} | Configure additional webhook settings including filtering and extra fields. |
| — Exclude Body | boolean | No | false | Whether a request with empty body will be sent to the URL. Leave unchecked if you want to receive JSON. |
| — Filter | string | No | — | JQL query to send only events triggered by matching issues. Only applies to Issue and Comment events. |
| — Include Fields | multiOptions | No | [] | Additional fields to include as query parameters in the webhook URL. Jira resolves these template variables in the callback. |
Options: attachment.id, board.id, comment.id, issue.id, mergeVersion.id, modifiedUser.accountId, modifiedUser.key, modifiedUser.name, project.id, project.key, property.key, sprint.id, version.id, worklog.id |
Output Data
Each accepted delivery produces one output item. The Jira payload is placed directly on the item, and any query parameters Jira resolved from Include Fields are merged in alongside it:
{
"webhookEvent": "jira:issue_created",
"timestamp": 1767225600000,
"user": {
"self": "",
"accountId": "",
"displayName": "",
"active": true
},
"issue": {
"id": "",
"key": "",
"self": "",
"fields": {
"summary": "",
"status": { "name": "" },
"priority": { "name": "" },
"issuetype": { "name": "" },
"project": { "key": "", "name": "" },
"assignee": null,
"reporter": { "displayName": "" },
"created": "",
"updated": ""
}
},
"changelog": { "id": "", "items": [] },
"_trigger": "jira_webhook",
"_timestamp": "2026-01-01T00:00:00.000Z",
"_webhookEvent": "jira:issue_created"
}
_trigger— alwaysjira_webhook._timestamp— ISO 8601 timestamp of when the delivery arrived._webhookEvent— the event name, taken from the payload’swebhookEventfield, falling back toissue_event_type_name, thenunknown.- The rest of the payload varies by event: issue events carry
issueandchangelog, comment events carrycomment, sprint events carrysprint, and so on. - With Exclude Body enabled Jira sends an empty body, so only the query parameters and the three metadata fields arrive.
Reference values downstream by expression, for example {{ $json.issue.key }} or {{ $json.issue.fields.summary }}.
Deliveries for events you did not select are acknowledged with 200 but do not start the workflow. Deliveries that do not carry the expected verification token are rejected with 401.
Usage Examples
- Start a workflow when a Jira issue is created
- Trigger an action when a Jira issue is updated or transitioned
- React to new comments on Jira issues
- Monitor sprint starts and closures in Jira
- Track when Jira project versions are released
Example Configuration
Fire on issue creation and updates:
{
"type": "jira_trigger",
"parameters": {
"events": ["jira:issue_created", "jira:issue_updated"]
}
}
Restrict issue events to one project with a JQL filter and request extra fields:
{
"type": "jira_trigger",
"parameters": {
"events": ["jira:issue_created", "jira:issue_updated"],
"additionalFields": {
"excludeBody": false,
"filter": "project = 'DEMO' AND assignee = currentUser()",
"includeFields": ["issue.id", "project.key", "modifiedUser.accountId"]
}
}
}
Track comment activity with the commenting user:
{
"type": "jira_trigger",
"parameters": {
"events": ["comment_created", "comment_updated"],
"additionalFields": {
"includeFields": ["comment.id", "issue.id", "modifiedUser.accountId"]
}
}
}
Monitor the sprint lifecycle:
{
"type": "jira_trigger",
"parameters": {
"events": ["sprint_created", "sprint_started", "sprint_closed"],
"additionalFields": {
"includeFields": ["sprint.id", "board.id"]
}
}
}
Listen for every Jira event with a minimal body:
{
"type": "jira_trigger",
"parameters": {
"events": ["*"],
"additionalFields": {
"excludeBody": true,
"includeFields": ["issue.id", "project.id"]
}
}
}
Trigger Behavior
- Activation: When the workflow is activated, a webhook endpoint is registered with the service.
- Deactivation: The webhook is automatically unregistered when the workflow is deactivated.
- Payload: The incoming webhook payload is parsed and output as workflow items.
- Verification: Supports signature verification where applicable.
Tips
Connects to Jira Software Cloud via webhooks. Select which events to listen for (issues, comments, sprints, boards, projects, versions, worklogs, users). When the selected event occurs in Jira, this node receives the full webhook payload and starts the workflow. Requires Jira Cloud API credentials (email, API token, domain). Optionally filter events with a JQL expression.
Important Notes
- Fields in
additionalFieldsmust be nested directly under theadditionalFieldskey - The
filterparameter only applies to Issue and Comment events - Use
"*"in events to listen for all Jira events - Set
excludeBodytotrueif you only need minimal webhook data
Frequently asked questions
Can I narrow which issues fire the trigger?
Yes, with a JQL expression — but the filter applies only to Issue and Comment events. Other event types are not filtered by it.
How do I listen for everything?
Use `"*"` in the events selection to subscribe to all Jira events, then filter downstream if only some matter.
Where do the optional fields go?
Nested directly under the `additionalFields` key rather than at the top level of the parameters.
What credential does it need?
A Jira Software Cloud credential — email, API token and domain. That is a different credential from the one the Jira action node uses.
Build with the Jira Trigger node
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Jira Software Cloud credentials first.
Open BusyBotLast updated . Spotted something wrong? Tell us.