Jira Connector
Description
Jira is a proprietary issue tracking product developed by Atlassian that allows bug tracking and agile project management. This component manages issues, comments, projects, and users within Jira.
API Documentation
This component was built using the Jira Cloud REST API (v3)
Connections
Basic Authentication
key: basicTo authenticate with Atlassian Jira using Basic Authentication, an email address and either an API token (for Jira Cloud) or password (for self-hosted Jira) is required.
Prerequisites
- Access to a Jira Cloud or self-hosted Jira instance
- Administrative permissions to generate API tokens (for Jira Cloud)
Setup Steps
For Jira Cloud:
- Navigate to Atlassian Account API Tokens
- Click Create API token
- Enter a label for the token and click Create
- Copy the generated API token value
For Self-Hosted Jira:
Use the standard account password for authentication. No additional setup is required.
Configure the Connection
- For Username, enter the email address associated with the Jira account
- For API Key:
- Jira Cloud: Enter the API token generated in the previous step
- Self-Hosted Jira: Enter the account password
- For Host, enter the Jira instance URL (e.g.,
example.atlassian.netfor cloud or the self-hosted domain) - For Version, select the API version (typically
3for Jira Cloud,2for older instances)
For more information on generating API tokens from Jira Cloud, refer to the Atlassian documentation.
Jira Cloud requires an API token for Basic Authentication, while self-hosted instances can use the account password. For security reasons, it is recommended to use API tokens whenever possible.
| Input | Notes | Example |
|---|---|---|
| Host | The hostname of the Jira instance (without https://). | your-company.atlassian.net |
| API Key | The Jira API token used for authentication. Cloud users must generate an API token from Atlassian Account Settings. | ATATT3xFfGF0T8gK8Example1234567890abcdefGHIJKLMNOP |
| Username | The Jira username or email address used for authentication. | john.doe@example.com |
| Version | Select the Jira API version to use for requests. | 3 |
OAuth 2.0 Client Credentials
key: jiraOauth2ClientCredentialsTo authenticate with Atlassian Jira using OAuth 2.0 Client Credentials, an OAuth 2.0 integration must be configured in the Atlassian Admin Hub. This connection type enables service account (machine-to-machine) access without requiring user interaction.
For more information on OAuth 2.0 Client Credentials for Jira, refer to Atlassian's documentation on creating OAuth 2.0 credentials for service accounts.
Prerequisites
- Access to the Atlassian Admin Hub with organization administrator permissions
- A Jira Cloud site associated with the organization
Setup Steps
- Navigate to the Atlassian Admin Hub
- Select the organization that contains the Jira site
- Navigate to Directory > Service accounts
- Select an existing service account, or create a new one
- Click Create credentials and select OAuth 2.0
- Enter a name for the credential
- Configure the required scopes:
- For basic issue management, the following scopes are recommended:
read:jira-user read:jira-work write:jira-work manage:jira-project manage:jira-configuration manage:jira-webhook
- Refer to Jira OAuth 2.0 scopes documentation for a complete list of available scopes
- For basic issue management, the following scopes are recommended:
- Click Create to generate the credential
- Copy the Client ID and Client Secret values (the secret is only shown once)
- Obtain the Cloud ID for the Jira site by following the Atlassian Cloud ID retrieval guide
Configure the Connection
-
Enter the Client ID from the OAuth 2.0 credential
-
Enter the Client Secret from the OAuth 2.0 credential
-
Enter the Cloud ID of the Jira site to connect to
-
For Scopes, use the following default value:
read:jira-user read:jira-work write:jira-work manage:jira-project manage:jira-configuration manage:jira-webhook- Ensure the scopes match those configured in the Atlassian Admin Hub credential
- Refer to Jira scopes documentation for additional scope information
-
For Version, select the API version (typically
3for Jira Cloud)
| Input | Notes | Example |
|---|---|---|
| Client ID | The OAuth 2.0 Client ID generated when creating the credential in Atlassian Admin Hub. | c9e4APadFFkbtTycoNtrHKBtYgUyZWy |
| Client Secret | The OAuth 2.0 Client Secret generated when creating the credential in Atlassian Admin Hub. | ntDBx4ao5czkFu7Mzp5FTlYG0y3_ukxkSiPhwnTkhsdKHJITGRCGP3ZWlXTYyu |
| Cloud ID | The Cloud ID of the Jira site. See How to Find Your Cloud ID for instructions. | a1b2c3d4-e5f6-7890-abcd-ef1234567890 |
| Scopes | Space-delimited list of OAuth scopes for Jira access. These must match the scopes configured when creating the OAuth 2.0 credential in Admin Hub. For more information, see Jira OAuth 2.0 Scopes. | read:jira-user read:jira-work write:jira-work manage:jira-project manage:jira-configuration manage:jira-webhook |
| Token URL | The OAuth 2.0 Token URL for Jira. | https://auth.atlassian.com/oauth/token |
| Version | Select the Jira API version to use for requests. | 3 |
OAuth 2.0
key: oauth2To create an Atlassian Jira OAuth 2.0 connection, an OAuth 2.0 integration must be configured in the Atlassian Developer Console.
Jira's Cloud API supports OAuth 2.0 (3LO) flows for secure authentication. For more information on OAuth 2.0 (3LO) apps, refer to Jira's OAuth 2.0 documentation.
Prerequisites
- Access to the Atlassian Developer Console
- Administrative permissions to create OAuth 2.0 integrations
Setup Steps
- Navigate to the Atlassian Developer Console
- Click Create and select OAuth 2.0 integration
- Enter a name for the integration
- After creation, locate the App details section and copy the Client ID and Client Secret values
- Under the Authorization section, click Configure next to OAuth 2.0 (3LO)
- Enter the callback URL:
https://oauth2.prismatic.io/callback - Navigate to the Permissions tab
- Add the required scopes based on the use case:
- For basic issue management, the following scopes are recommended:
read:jira-user read:jira-work write:jira-work manage:jira-project manage:jira-configuration manage:jira-webhook offline_access
- Refer to Jira OAuth 2.0 scopes documentation for a complete list of available scopes
- For basic issue management, the following scopes are recommended:
- Click Save to apply the configuration
The scopes configured in the Atlassian Developer Console must match the scopes entered in the connection configuration. Inconsistent scopes will cause authentication failures.
Configure the Connection
-
For Authorize URL and Token URL, keep the pre-populated defaults (
https://auth.atlassian.com/authorize?audience=api.atlassian.com&prompt=consentandhttps://auth.atlassian.com/oauth/token) unless instructed otherwise by Atlassian -
Enter the Client ID from the Atlassian Developer Console
-
Enter the Client Secret from the Atlassian Developer Console
-
For Scopes, use the following default value:
read:jira-user read:jira-work write:jira-work manage:jira-project manage:jira-configuration manage:jira-webhook offline_access- The
offline_accessscope is required to obtain a refresh token - Customize the scopes to match the use case requirements
- Ensure the scopes match those configured in the Atlassian Developer Console
- Refer to Jira scopes documentation for additional scope information
- The
-
For Jira Site Name (optional):
- By default, the connection uses the first Jira site the authenticated user has access to
- To specify a different site, enter the site name (e.g.,
example) or full URL (e.g.,example.atlassian.net)
-
For Version, select the API version (typically
3for Jira Cloud)
For additional information on developing Jira applications and OAuth 2.0 configuration, refer to the Jira OAuth 2.0 apps guide.
| Input | Notes | Example |
|---|---|---|
| Atlassian Site Name | Optional site name or URL to connect to. By default, connects to the first Jira site the user has access to. Use this if multiple Jira sites are available. | your-company.atlassian.net |
| Authorize URL | The OAuth 2.0 Authorization URL for Jira. | https://auth.atlassian.com/authorize?audience=api.atlassian.com&prompt=consent |
| Client ID | The OAuth 2.0 Client ID from the Atlassian Developer Console. | c9e4APadFFkbtTycoNtrHKBtYgUyZWy |
| Client Secret | The OAuth 2.0 Client Secret from the Atlassian Developer Console. | ntDBx4ao5czkFu7Mzp5FTlYG0y3_ukxkSiPhwnTkhsdKHJITGRCGP3ZWlXTYyu |
| Scopes | Space-delimited list of OAuth scopes for Jira access. For more information, see Jira OAuth 2.0 Scopes. | read:jira-user read:jira-work write:jira-work manage:jira-project manage:jira-configuration manage:jira-webhook offline_access |
| Token URL | The OAuth 2.0 Token URL for Jira. | https://auth.atlassian.com/oauth/token |
| Version | Select the Jira API version to use for requests. | 3 |
Triggers
Issue Events
Receive real-time notifications when Jira issues are created, updated, or deleted. Automatically creates and manages a webhook subscription for selected issue events when the instance is deployed, and removes the subscription when the instance is deleted. | key: issueEventsTrigger
| Input | Notes | Example |
|---|---|---|
| Event Types | One or more Jira issue events that will trigger this webhook. | jira:issue_created |
| Field IDs Filter | An optional list of field IDs to monitor. Only changes to these specific fields will trigger the webhook. Leave empty to monitor all field changes. | summary |
| Connection | The Jira connection to use. | |
| JQL Filter | JQL (Jira Query Language) filter to limit which issues trigger the webhook. For more information, see JQL Documentation. | project = PROJ AND status = Done |
The Issue Events trigger manages Jira webhook subscriptions for an instance. This trigger handles the entire webhook lifecycle automatically.
When the trigger is used in a flow:
- On Instance Deploy: The trigger automatically creates a webhook subscription in Jira for the selected issue events (issue creation, updates, deletions, etc.). The webhook target URL is set to the instance's unique webhook URL. For OAuth connections, the webhook is registered with an expiration date and is automatically refreshed by the trigger. For Basic Auth connections, the webhook persists indefinitely.
- On Instance Deletion: The trigger automatically removes the webhook subscription from Jira to ensure no orphaned webhook configurations remain after instance cleanup.
Authentication Methods
This trigger supports both OAuth 2.0 and Basic Authentication, with different webhook registration behaviors:
OAuth 2.0:
- Webhooks expire after 30 days and require periodic refresh
- The trigger automatically refreshes the webhook on each invocation
- Webhook payload structure uses the Dynamic Webhooks format
- Requires OAuth connection with appropriate scopes
Basic Authentication:
- Webhooks persist indefinitely without expiration
- No automatic refresh required
- Webhook payload structure uses the Classic Webhooks format
- Requires Basic Auth connection with API token
Configuration Requirements
This trigger requires a Jira connection configured in the Atlassian Jira component. The connection can be either:
- OAuth 2.0 - Requires Client ID, Client Secret, and appropriate OAuth scopes for the events being subscribed to
- Basic Auth - Requires Jira site URL, email address, and API token
Event Types
When configuring the trigger, select which Jira issue events should trigger the flow.
Available Events (11)
| Event | Description |
|---|---|
jira:issue_created | Triggered when a new issue is created |
jira:issue_updated | Triggered when an issue is modified |
jira:issue_deleted | Triggered when an issue is deleted |
issue_property_set | Triggered when an issue property is set or updated |
issue_property_deleted | Triggered when an issue property is deleted |
jira:worklog_updated | Triggered when work is logged on an issue |
comment_created | Triggered when a comment is added to an issue |
comment_updated | Triggered when a comment is modified |
comment_deleted | Triggered when a comment is removed |
attachment_created | Triggered when a file is attached to an issue |
attachment_deleted | Triggered when an attachment is removed |
A full list of available webhook events is available in the Jira Webhooks documentation.
Filtering Options
The trigger provides powerful filtering capabilities to limit which issues trigger the flow:
JQL Filter (Required): Filter issues using Jira Query Language (JQL). This allows precise control over which issues trigger webhooks.
Examples:
project = PROJ- Only issues in the PROJ projectproject IN (PROJ, TEST) AND status = Done- Issues in specific projects with Done statusassignee = currentUser() AND priority = High- High priority issues assigned to the current user
Field IDs Filter (Optional, OAuth only):
Specify field IDs to monitor for changes. When provided, the webhook only triggers when those specific fields are updated. This is particularly useful for jira:issue_updated events.
Examples:
summary, description- Only trigger when summary or description changescustomfield_10029- Only trigger when a specific custom field changes
Leave empty to trigger on any field change.
Returned Data
The trigger returns the complete webhook payload from Jira, which varies based on the event type. All payloads include:
Common Properties:
webhookEvent- The event type that triggered the webhookissue- Complete issue object with fields, status, priority, assignee, etc.user- User who performed the actionchangelog- For update events, lists what changed (old value, new value, field name)
Example payload for jira:issue_created event
{
"webhookEvent": "jira:issue_created",
"issue": {
"id": "10001",
"key": "PROJ-123",
"self": "https://your-domain.atlassian.net/rest/api/3/issue/10001",
"fields": {
"summary": "New issue summary",
"description": {
"type": "doc",
"version": 1,
"content": [
{
"type": "paragraph",
"content": [
{
"type": "text",
"text": "Issue description"
}
]
}
]
},
"status": {
"name": "To Do",
"id": "10000"
},
"priority": {
"name": "Medium",
"id": "3"
},
"assignee": {
"accountId": "5b10a2844c20165700ede21g",
"displayName": "John Smith",
"emailAddress": "john@example.com"
},
"project": {
"id": "10000",
"key": "PROJ",
"name": "Example Project"
},
"issuetype": {
"id": "10001",
"name": "Task"
},
"created": "2024-11-10T10:30:00.000+0000",
"updated": "2024-11-10T10:30:00.000+0000"
}
},
"user": {
"accountId": "5b10a2844c20165700ede21g",
"displayName": "John Smith",
"emailAddress": "john@example.com"
},
"timestamp": 1699614600000
}
Example payload for jira:issue_updated event
{
"webhookEvent": "jira:issue_updated",
"issue": {
"id": "10001",
"key": "PROJ-123",
"fields": {
"summary": "Updated issue summary",
"status": {
"name": "In Progress",
"id": "10001"
}
}
},
"user": {
"accountId": "5b10a2844c20165700ede21g",
"displayName": "John Smith"
},
"changelog": {
"items": [
{
"field": "status",
"fieldtype": "jira",
"from": "10000",
"fromString": "To Do",
"to": "10001",
"toString": "In Progress"
}
]
},
"timestamp": 1699614700000
}
Example Payload for Issue Events⤓
New and Updated Issues
Checks for new and updated issues in Jira on a configured schedule, separated into new and updated buckets using JQL on /search/jql. | key: pollChangesTrigger
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Additional JQL Filter | Optional JQL clause appended (with AND) to the built-in | project = PROJ AND issuetype = Bug |
| Show New Issues | When enabled, issues created since the last poll will be included in the trigger output. | true |
| Show Updated Issues | When enabled, issues updated since the last poll will be included in the trigger output. | true |
The New and Updated Issues polling trigger checks Jira on a configured schedule for issues that were created or modified since the last poll. Unlike webhook-based triggers, polling does not require webhook subscription management and works reliably for low-frequency monitoring scenarios.
How It Works
On each scheduled execution, the trigger:
- Reads the last poll timestamp (
lastPolledAt) from the polling state, or uses the current time on the first run - Queries Jira's
/rest/api/3/search/jqlendpoint for issues matchingupdated >= <lastPolledAt>, optionally narrowed by an additional JQL clause - Partitions the returned issues into created and updated buckets by comparing the issue's
createdtimestamp against the last poll timestamp - Persists the current execution time as the new
lastPolledAtfor the next run - Emits the partitioned results in the trigger payload, filtered by the Show New Issues and Show Updated Issues toggles
If both Show New Issues and Show Updated Issues are disabled, the trigger skips the API call entirely.
Returned Data
The trigger emits a payload with two arrays — created and updated — each containing issue resources from the Jira REST API.
Example Payload
{
"data": {
"created": [
{
"id": "10001",
"key": "PROJ-123",
"self": "https://example.atlassian.net/rest/api/3/issue/10001",
"fields": {
"summary": "New issue summary",
"status": { "name": "To Do", "id": "10000" },
"priority": { "name": "Medium", "id": "3" },
"created": "2026-05-21T10:30:00.000+0000",
"updated": "2026-05-21T10:30:00.000+0000"
}
}
],
"updated": [
{
"id": "10002",
"key": "PROJ-124",
"fields": {
"summary": "Existing issue summary",
"status": { "name": "In Progress", "id": "10001" },
"created": "2026-05-15T08:00:00.000+0000",
"updated": "2026-05-21T11:05:00.000+0000"
}
}
]
}
}
Fields shown are representative. The full response object includes additional properties.
When to Use Polling vs. Webhooks
- Use polling when the integration needs to run on a fixed schedule, when webhook subscription management is not desired, or when the volume of changes is low enough that polling latency is acceptable.
- Use the Issue Events webhook trigger when near real-time delivery is required and the integration can manage subscription lifecycles.
Refer to the Jira REST API issue resource for the complete schema of returned issue fields.
Example Payload for New and Updated Issues⤓
Data Sources
Select Board
Select a board. | key: selectBoard | type: picklist
| Input | Notes | Example |
|---|---|---|
| Filter | The scope used to limit returned dashboards. Common values are | my |
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Start At | The index of the first item to return in the result set (0-based). | 0 |
Select Board Version
Select a board version. | key: selectBoardVersion | type: picklist
| Input | Notes | Example |
|---|---|---|
| Board ID | The unique identifier of the Jira board. | 10201 |
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Start At | The index of the first item to return in the result set (0-based). | 0 |
Select Issue by Project
Select an issue from the specified project. | key: selectIssue | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
Select Issue Field
Select an issue field from the available Jira issue fields. | key: issueFields | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Only Custom Fields | false |
Select Issue Type from Project
Select an issue type from the specified project. | key: selectIssueTypeFromProject | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
| Issue Type Return | When true, returns the Issue Type Name; when false, returns the Issue Type ID. Defaults to ID. | false |
Select Issue Type from Projects
Select an issue type from the specified projects. | key: selectIssueType | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Project ID(s) | One or more Jira Project IDs. | 10201 |
| Issue Type Return | When true, returns the Issue Type Name; when false, returns the Issue Type ID. Defaults to ID. | false |
Select Issue Types from Projects
Select one or many issue types from the specified projects. | key: selectIssueTypes | type: objectSelection
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Project ID(s) | One or more Jira Project IDs. | 10201 |
Select Priority
Select a priority. | key: selectPriority | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. |
Select Project
Select a project. | key: selectProject | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. |
Select Projects
Select one or many projects. | key: selectProjects | type: objectSelection
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. |
Select Version
Select a version from the specified project. | key: selectVersion | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
Example Payload for Select Version⤓
Select Webhook
Select a webhook. | key: selectWebhook | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. |
Actions
Add Comment
Add a comment to an existing issue. | key: addComment
| Input | Notes | Example |
|---|---|---|
| Comment | The plain-text body of the comment. | This is an example comment. |
| Dynamic Fields | Dynamic field key/value pairs supplied as JSON. Use a key/value config variable to configure these at deploy time. Each item must contain a | |
| Values | Additional field names and their values to include when creating or updating the record. Each row is merged into the request payload. | projectId=1000,name=Example |
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for Add Comment⤓
Add Issue Attachment
Add a file attachment to an issue. | key: addIssueAttachment
| Input | Notes | Example |
|---|---|---|
| File | The file to upload - either string contents or a binary file | |
| File Name | The name of the file to upload | |
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for Add Issue Attachment⤓
Create Issue
Create an issue within a given project. | key: createIssue
| Input | Notes | Example |
|---|---|---|
| ADF Description | The Atlassian Document Format (ADF) JSON representation of the issue description. Provide this OR Description — not both. Use the ADF playground to generate the JSON. | |
| Assignee Account ID | The Atlassian account ID of the user to assign the issue to. | 5b10a2844c20165700ede21g |
| Description | A detailed description of the issue. | The login button does not respond on mobile devices in portrait mode. |
| Due Date | The date when the issue is due. Format: | 2019-05-11 |
| Dynamic Fields | Dynamic field key/value pairs supplied as JSON. Use a key/value config variable to configure these at deploy time. Each item must contain a | |
| Values | Additional field names and their values to include when creating or updating the record. Each row is merged into the request payload. | projectId=1000,name=Example |
| Fix Versions | The fix version(s) for the issue as a JSON object containing an | |
| Issue Type Name | The human-readable name of the issue type to assign to the issue. Provide this field OR Issue Type ID — not both. | Task |
| Issue Type ID | The unique identifier of the issue type to assign to the issue. Provide this field OR Issue Type Name — not both. | 10001 |
| Connection | The Jira connection to use. | |
| Labels | A list of labels to attach to the issue. Each label must not contain spaces. | performance |
| Priority | The priority to assign to the issue. Accepts the priority ID, key, or name of the desired record. | High |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
| Reporter Account ID | The Atlassian account ID of the user reporting the issue. | 5b10a2844c20165700ede21g |
| Summary | A short one-line title for the issue, shown in lists and search results. | Fix login page responsiveness |
| Versions | The affected version(s) for the issue as a JSON array of objects. Each object must contain an |
Example Payload for Create Issue⤓
Create User
Create a new user record. | key: createUser
| Input | Notes | Example |
|---|---|---|
| Display Name | The display name for the user account. | John Doe |
| Dynamic Fields | Dynamic field key/value pairs supplied as JSON. Use a key/value config variable to configure these at deploy time. Each item must contain a | |
| Email Address | The email address of the user. | someone@example.com |
| Values | Additional field names and their values to include when creating or updating the record. Each row is merged into the request payload. | projectId=1000,name=Example |
| Connection | The Jira connection to use. | |
| Notifications | When true, the user will receive email notifications for relevant events. | false |
| Password | The password to assign to the new user account. | |
| Username | The username for the Jira user account. | john.doe |
Example Payload for Create User⤓
Create Version
Create a new version. | key: createVersion
| Input | Notes | Example |
|---|---|---|
| Archived | When true, marks the version as archived. | false |
| Description | A detailed description of the issue. | The login button does not respond on mobile devices in portrait mode. |
| Dynamic Fields | Dynamic field key/value pairs supplied as JSON. Use a key/value config variable to configure these at deploy time. Each item must contain a | |
| Values | Additional field names and their values to include when creating or updating the record. Each row is merged into the request payload. | projectId=1000,name=Example |
| Connection | The Jira connection to use. | |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
| Project Key | The project key identifier (e.g., PROJ, ENG, SALES). | PROJ |
| Released | When true, marks the version as released. | false |
| Release Date | The date when this version is released. Format: | 2021-07-22 |
| Start Date | The date when work on this version starts. Format: | 2021-07-22 |
| Version Name | The display name of the version (e.g., a release tag or date). | 2019.08.18 |
Example Payload for Create Version⤓
Create Webhook
Create a webhook to send data from Jira to an instance URL. | key: createWebhook
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Webhook Details | The webhook details payload sent to Jira's OAuth2 Webhook API or REST API. Must match the structure of the | |
| Webhook URL | The URL that Jira will POST webhook events to. Typically reference a flow's URL from the trigger payload. | https://hooks.example.com/trigger/abc123 |
Registering a Dynamic Webhook requires supplying a highly configurable payload called "Webhook Details". It's important to configure this for all use cases as each Jira app is only permitted to create and manage one endpoint.
Registering a Webhook Notes
Please note that whenever trying to register a webhook, the request payload's structure is different depending on the authentication method:
- For Basic Auth, the payload should be structured as follows on this article: Basic Auth Webhook Payload Structure
{
"name": "my first webhook via rest",
"description": "description of my first webhook",
"events": ["jira:issue_created", "jira:issue_updated"],
"filters": {
"issue-related-events-section": "Project = JRA AND resolution = Fixed"
},
"excludeBody": false,
"secret": "G8j4166a5OkXRD4WbqV3"
}
- For OAuth, the payload should be structured as follows: OAuth Webhook Payload Structure
[
{
"events": ["jira:issue_created", "jira:issue_updated"],
"fieldIdsFilter": ["summary", "customfield_10029"],
"jqlFilter": "project = PROJ"
},
{
"events": ["jira:issue_deleted"],
"jqlFilter": "project IN (PROJ, EXP) AND status = done"
},
{
"events": ["issue_property_set"],
"issuePropertyKeysFilter": ["my-issue-property-key"],
"jqlFilter": "project = PROJ"
}
]
Example Payload for Create Webhook⤓
Delete Comment
Delete a comment from an issue. | key: deleteComment
| Input | Notes | Example |
|---|---|---|
| Comment ID | The unique identifier of the comment. | 10201 |
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for Delete Comment⤓
Delete Issue
Delete an issue by ID. | key: deleteIssue
| Input | Notes | Example |
|---|---|---|
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for Delete Issue⤓
Delete Webhook
Delete a webhook by ID. | key: deleteWebhook
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Webhook ID | The unique identifier of the webhook. | 10001 |
Example Payload for Delete Webhook⤓
Download Issue Attachments
Download the attachment data connected to an issue. | key: downloadAttachment
| Input | Notes | Example |
|---|---|---|
| Attachment IDs | A JSON array of attachments to download, each with an | |
| Issue ID | Providing an Issue ID will return all attachments of an Issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for Download Issue Attachments⤓
Find Issue
Find an issue by attribute. | key: findIssue
| Input | Notes | Example |
|---|---|---|
| Fields | A comma-separated list of fields to include in each returned issue. Defaults to common navigable fields (summary, status, assignee, reporter, priority, issuetype, project, created, updated). Use | summary,status,assignee,priority |
| Connection | The Jira connection to use. | |
| Search Type | Attribute to search | |
| Search Value | Value to search for |
Example Payload for Find Issue⤓
Find Project
Find a project by attribute. | key: findProject
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Search Type | Attribute to search | |
| Search Value | Value to search for |
Example Payload for Find Project⤓
Find User
Find a user by attribute. | key: findUser
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Search Value | Value to search for |
Example Payload for Find User⤓
Get Board
Get the information and metadata of a board by ID. | key: getBoard
| Input | Notes | Example |
|---|---|---|
| Board ID | The unique identifier of the Jira board. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for Get Board⤓
Get Comments
Get all comments on a given issue. | key: getComments
| Input | Notes | Example |
|---|---|---|
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for Get Comments⤓
Get Current User
Get the information and metadata of the current user. | key: getCurrentUser
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. |
Example Payload for Get Current User⤓
Get Issue
Get the information and metadata of an issue. | key: getIssue
| Input | Notes | Example |
|---|---|---|
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for Get Issue⤓
Get Project
Get the information and metadata of a project. | key: getProject
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
Example Payload for Get Project⤓
Get Status List
Return a list of statuses for a project. | key: getStatusList
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
| Start At | The index of the first item to return in the result set (0-based). | 0 |
Example Payload for Get Status List⤓
Get User
Get the information and metadata of a user by ID. | key: getUser
| Input | Notes | Example |
|---|---|---|
| Account ID | The unique Atlassian account ID of the user. | 5b10a2844c20165700ede21g |
| Expand | A comma-separated list of additional fields to include in the response. Values come from the | body, version, history |
| Connection | The Jira connection to use. |
Example Payload for Get User⤓
Get Version
Get the information and metadata of an existing version. | key: getVersion
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Version ID | The unique identifier of the version. | 10201 |
Example Payload for Get Version⤓
List Assignable Users for Project
Return a list of users assignable to the given project. | key: listAssignableUsers
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Project Key | The project key identifier (e.g., PROJ, ENG, SALES). | PROJ |
| Start At | The index of the first item to return in the result set (0-based). | 0 |
Example Payload for List Assignable Users for Project⤓
List Board Sprints
List all sprints within a board. | key: listBoardsSprints
| Input | Notes | Example |
|---|---|---|
| Board ID | The unique identifier of the Jira board. | 10201 |
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Start At | The index of the first item to return in the result set (0-based). | 0 |
Example Payload for List Board Sprints⤓
List Boards
Retrieve a list of existing boards. | key: listBoards
| Input | Notes | Example |
|---|---|---|
| Filter | The scope used to limit returned dashboards. Common values are | my |
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Start At | The index of the first item to return in the result set (0-based). | 0 |
Example Payload for List Boards⤓
List Issue Attachments
Return a list of attachments for a given issue. | key: listIssueAttachments
| Input | Notes | Example |
|---|---|---|
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
List Issue Custom Fields
List all configured custom issue fields. | key: listIssueCustomFields
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. |
Example Payload for List Issue Custom Fields⤓
List Issue Fields
List all non-custom issue fields. | key: listIssueFields
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. |
Example Payload for List Issue Fields⤓
List Issue Link Types
List all available issue link types. | key: listIssueLinkTypes
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. |
Example Payload for List Issue Link Types⤓
List Issue Transitions
Return a list of available transitions for an issue. | key: listIssueTransitions
| Input | Notes | Example |
|---|---|---|
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for List Issue Transitions⤓
List Issue Types
Return a list of issue types. | key: listIssueTypes
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. |
Example Payload for List Issue Types⤓
List Issue Worklogs
Return a list of worklogs for an issue. | key: listIssueWorklogs
| Input | Notes | Example |
|---|---|---|
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for List Issue Worklogs⤓
List Issues by Project
Return a list of issues for a specific project. | key: listIssues
| Input | Notes | Example |
|---|---|---|
| Fields | A comma-separated list of fields to include in each returned issue. Defaults to common navigable fields (summary, status, assignee, reporter, priority, issuetype, project, created, updated). Use | summary,status,assignee,priority |
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Next Page Token | The pagination cursor returned from a previous response. Use it to fetch the next page of results. Leave empty for the first page. | |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
Example Payload for List Issues by Project⤓
List Priorities
Return a list of all priorities. | key: listPriorities
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Start At | The index of the first item to return in the result set (0-based). | 0 |
Example Payload for List Priorities⤓
List Projects
Retrieve a list of all projects. | key: listProjects
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Start At | The index of the first item to return in the result set (0-based). | 0 |
Example Payload for List Projects⤓
List Versions
Return a list of all versions for a project. | key: listVersions
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
| Start At | The index of the first item to return in the result set (0-based). | 0 |
Example Payload for List Versions⤓
List Webhooks
List all configured webhooks, including those for other integrations. | key: listWebhooks
| Input | Notes | Example |
|---|---|---|
| Fetch All | When true, automatically fetches all pages of results using pagination. | false |
| Connection | The Jira connection to use. |
Example Payload for List Webhooks⤓
Query
Search the entire Jira site using a JQL query. | key: queryV3
| Input | Notes | Example |
|---|---|---|
| Expand | A comma-separated list of additional fields to include in the response. Values come from the | body, version, history |
| Connection | The Jira connection to use. | |
| Max Results | The maximum number of results to return per page. | 50 |
| Search | The text to match against records when searching. | status IN ("To Do", "In Progress", "Closed") |
Example Payload for Query⤓
Raw Request
Send a raw HTTP request to Jira. | key: rawRequest
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Data | The HTTP body payload to send to the URL. | {"exampleKey": "Example Data"} |
| File Data | File Data to be sent as a multipart form upload. | [{key: "example.txt", value: "My File Contents"}] |
| File Data File Names | File names to apply to the file data inputs. Keys must match the file data keys above. | |
| Form Data | The Form Data to be sent as a multipart form upload. | [{"key": "Example Key", "value": new Buffer("Hello World")}] |
| Header | A list of headers to send with the request. | User-Agent: curl/7.64.1 |
| Max Retry Count | The maximum number of retries to attempt. Specify 0 for no retries. | 0 |
| Method | The HTTP method to use. | |
| Query Parameter | A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2. | |
| Response Type | The type of data you expect in the response. You can request json, text, or binary data. | json |
| Retry On All Errors | If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors. | false |
| Retry Delay (ms) | The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled. | 0 |
| Timeout | The maximum time that a client will await a response to its request | 2000 |
| URL | Input the path only (/rest/api/3/project/recent), The base URL is already included (https://api.atlassian.com/ex/jira/<CLOUD_ID>). For example, to connect to https://api.atlassian.com/ex/jira/<CLOUD_ID>/rest/api/3/project/recent, only /rest/api/3/project/recent is entered in this field. | /sobjects/Account |
| Use Exponential Backoff | Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored. | false |
Refresh Webhook
Refresh a webhook expiration by ID. | key: refreshWebhook
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Webhook ID | ID of the webhook to refresh | 10001 |
Example Payload for Refresh Webhook⤓
Search Issues
Return a list of issues that match the given string of text. | key: searchIssues
| Input | Notes | Example |
|---|---|---|
| Fields | A comma-separated list of fields to include in each returned issue. Defaults to common navigable fields (summary, status, assignee, reporter, priority, issuetype, project, created, updated). Use | summary,status,assignee,priority |
| Connection | The Jira connection to use. | |
| Project Key | The project key identifier (e.g., PROJ, ENG, SALES). | PROJ |
| Search | The text to match against records when searching. | login bug |
Example Payload for Search Issues⤓
Search Projects
Return a list of projects that match the given string of text. | key: searchProjects
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Search | The text to match against records when searching. | login bug |
Example Payload for Search Projects⤓
Search Users
Return a single user that matches the given string of text. | key: searchUsers
| Input | Notes | Example |
|---|---|---|
| Connection | The Jira connection to use. | |
| Search | The text to match against records when searching. | login bug |
Example Payload for Search Users⤓
Transition Issue
Transition an existing issue by ID. | key: transitionIssue
| Input | Notes | Example |
|---|---|---|
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. | |
| Transition ID | The unique identifier of the issue transition. | 21 |
Example Payload for Transition Issue⤓
Update Comment
Update the contents and metadata of an existing comment. | key: updateComment
| Input | Notes | Example |
|---|---|---|
| Comment | The plain-text body of the comment. | This is an example comment. |
| Comment ID | The unique identifier of the comment. | 10201 |
| Dynamic Fields | Dynamic field key/value pairs supplied as JSON. Use a key/value config variable to configure these at deploy time. Each item must contain a | |
| Values | Additional field names and their values to include when creating or updating the record. Each row is merged into the request payload. | projectId=1000,name=Example |
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Connection | The Jira connection to use. |
Example Payload for Update Comment⤓
Update Issue
Update an existing issue within a given project. | key: updateIssue
| Input | Notes | Example |
|---|---|---|
| ADF Description | The Atlassian Document Format (ADF) JSON representation of the issue description. Provide this OR Description — not both. Use the ADF playground to generate the JSON. | |
| Assignee Account ID | The Atlassian account ID of the user to assign the issue to. | 5b10a2844c20165700ede21g |
| Description | A detailed description of the issue. | The login button does not respond on mobile devices in portrait mode. |
| Due Date | The date when the issue is due. Format: | 2019-05-11 |
| Dynamic Fields | Dynamic field key/value pairs supplied as JSON. Use a key/value config variable to configure these at deploy time. Each item must contain a | |
| Values | Additional field names and their values to include when creating or updating the record. Each row is merged into the request payload. | projectId=1000,name=Example |
| Fix Versions | The fix version(s) for the issue as a JSON object containing an | |
| Issue ID | The unique identifier of the Jira issue. | 10201 |
| Issue Type Name | The human-readable name of the issue type to assign to the issue. Provide this field OR Issue Type ID — not both. | Task |
| Issue Type ID | The unique identifier of the issue type to assign to the issue. Provide this field OR Issue Type Name — not both. | 10001 |
| Connection | The Jira connection to use. | |
| Labels | A list of labels to attach to the issue. Each label must not contain spaces. | performance |
| Priority | The priority to assign to the issue. Accepts the priority ID, key, or name of the desired record. | High |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
| Reporter Account ID | The Atlassian account ID of the user reporting the issue. | 5b10a2844c20165700ede21g |
| Summary | A short one-line title for the issue, shown in lists and search results. | Fix login page responsiveness |
| Versions | The affected version(s) for the issue as a JSON array of objects. Each object must contain an |
Example Payload for Update Issue⤓
Update Version
Update an existing version by ID. | key: updateVersion
| Input | Notes | Example |
|---|---|---|
| Archived | When true, marks the version as archived. | false |
| Description | A detailed description of the issue. | The login button does not respond on mobile devices in portrait mode. |
| Dynamic Fields | Dynamic field key/value pairs supplied as JSON. Use a key/value config variable to configure these at deploy time. Each item must contain a | |
| Values | Additional field names and their values to include when creating or updating the record. Each row is merged into the request payload. | projectId=1000,name=Example |
| Connection | The Jira connection to use. | |
| Project ID | The unique identifier or name of the Jira project. | 10201 |
| Project Key | The project key identifier (e.g., PROJ, ENG, SALES). | PROJ |
| Released | When true, marks the version as released. | false |
| Release Date | The date when this version is released. Format: | 2021-07-22 |
| Start Date | The date when work on this version starts. Format: | 2021-07-22 |
| Version ID | The unique identifier of the version. | 10201 |
| Version Name | The display name of the version (e.g., a release tag or date). | 2019.08.18 |
Example Payload for Update Version⤓
Changelog
2026-05-26
Added the New and Updated Issues polling trigger that monitors Jira on a configured schedule using the /search/jql endpoint with a JQL updated filter. Results are partitioned into created and updated buckets based on each issue's created timestamp
2026-04-30
Updated spectral version
2026-04-23
Modernized authentication and connection setup with no change to connection behavior or configuration
2026-04-08
Made webhook creation idempotent to prevent duplicate webhooks on redeploy
2026-02-26
Added Select Version inline data source for selecting project versions to enable dynamic dropdown selection
2026-02-04
Added OAuth 2.0 Client Credentials connection type for service account and machine-to-machine authentication scenarios
2025-12-10
Added Issue Events trigger with automatic webhook lifecycle management for issue, comment, and attachment events
2025-11-04
Enhanced issue search and pagination capabilities:
- Migrated Search Issues and Find Issue actions to JQL endpoint for improved query reliability
- Added Fields input to control which issue fields are returned across search actions
- Improved Find Issue action with corrected JQL query syntax
- Replaced List Issues action with List Issues by Project to fulfill JQL requirements
- Replaced Select Issue data source with Select Issue by Project to fulfill JQL requirements
- Removed Query (Deprecated) action
2025-04-25
Added inline data sources for boards, issues, priorities, and webhooks to enhance integration capabilities