Skip to main content

Jira

📋

Jira

Automate Jira issue tracking, agile boards, and sprints

The Jira node connects your workflows to Atlassian Jira through the Jira Cloud REST API. It creates and updates issues, runs JQL searches, moves issues through workflow transitions, manages comments and attachments, and works with agile boards and sprints. Use it to keep Jira in sync with the rest of your automations without manual data entry.

Common uses include:

  • Creating issues automatically when an alert, form, or upstream system raises work.
  • Updating issue fields, priorities, and custom fields from workflow data.
  • Searching for issues with JQL and driving downstream steps from the results.
  • Transitioning issues through their workflow (for example, To Do → In Progress → Done).
  • Adding comments and attachments to keep issues current.
  • Planning agile work by moving issues into sprints and reading board or sprint contents.

Before You Start​

What you may needWhere to set it upWhy it matters
Jira connectionJira ConnectionStores the base URL, account email, and API token used to authenticate every action.
Project keys, issue types, field IDsGlobal VariablesKeep frequently used Jira values consistent and easy to update across workflows.
A Jira API tokenAtlassian account security settingsThe connector authenticates with Basic auth built from your email and API token.

Connection​

Every Jira action requires a Jira connection, referenced by connectionId. The connection is a JiraConnectionDetails record with these fields:

FieldRequiredDescription
baseUrlYesJira site base URL (e.g., https://your-domain.atlassian.net)
emailYesAtlassian account email used for authentication
apiTokenYesAtlassian API token paired with the email

The connector authenticates with HTTP Basic auth, sending Authorization: Basic base64(email:apiToken). Requests target the Jira platform API under /rest/api/3/* and the agile API under /rest/agile/1.0/*.

Configure the connection under Connections > Jira in the Global Configurator, then reference it from each step.

How Parameters Are Resolved​

Each action reads its inputs from a configuration key named jira<Action>Details — for example, jiraCreateIssueDetails for jira:createIssue or jiraSearchIssuesDetails for jira:searchIssues.

  • connectionId is read raw (not expression-resolved).
  • All other parameters support {{expression}} resolution, so you can pass values from earlier steps or global variables.
  • List-style fields such as labels, fields, and issueKeys accept either a comma-separated string or a list.
  • Numeric fields such as maxResults and startAt accept a number or a numeric string.

Actions​

ActionDescription
jira:createIssueCreate a new issue in a project
jira:getIssueRetrieve a single issue by key
jira:updateIssueUpdate fields on an existing issue
jira:searchIssuesSearch issues with a JQL query
jira:transitionIssueMove an issue through a workflow transition
jira:assignIssueAssign an issue to a user
jira:addCommentAdd a comment to an issue
jira:getCommentsList comments on an issue
jira:addAttachmentAttach a file to an issue
jira:linkIssuesCreate a link between two issues
jira:updateCustomFieldSet a single custom field value
jira:getSprintIssuesList issues in a sprint
jira:moveToSprintMove issues into a sprint
jira:getProjectGet project details
jira:listProjectsList accessible projects
jira:listUsersList users assignable to a project
jira:getTransitionsList available transitions for an issue
jira:listBoardsList agile boards
jira:listSprintsList sprints on a board

jira:createIssue​

Creates a new issue in a project. Returns the created issue key and a browseUrl link to the issue.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
projectKeystringYes--Target project key (e.g., OPS)
issueTypestringYes--Issue type name (e.g., Task, Bug, Story)
summarystringYes--Issue summary/title
descriptionstringNo--Issue description
prioritystringNo--Priority name (e.g., High)
assigneestringNo--Account ID of the assignee
labelsstring or listNo--Labels as CSV or list
additionalFieldsobjectNo--Extra field name-value pairs passed through to Jira

Example: Create a bug from an alert

FieldValue
connectionIdjira-prod
projectKeyOPS
issueTypeBug
summaryCheckout service returning 500s
priorityHigh
labelsincident, checkout

What happens:

  1. The node builds a /rest/api/3/issue request using the resolved fields.
  2. Jira creates the issue and returns its key.
  3. The output includes the issue key and a browseUrl for direct access.

jira:getIssue​

Retrieves a single issue by its key.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
issueKeystringYes--Issue key (e.g., OPS-1234)
fieldsstring or listNoall navigable fieldsFields to return, as CSV or list

jira:updateIssue​

Updates fields on an existing issue. Jira returns HTTP 204 on success; the node reports the update result.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
issueKeystringYes--Issue key to update
recordDataobjectYes--Field name-value pairs to update

Output: { "status": ..., "issueKey": "OPS-1234" }


jira:searchIssues​

Runs a JQL search and returns matching issues. Uses the /rest/api/3/search/jql endpoint.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
jqlstringYes--JQL query string
fieldsstring or listNo--Fields to return per issue
maxResultsnumber or numeric stringNo--Maximum issues to return
startAtnumber or numeric stringNo--Zero-based index of the first result

Example: Find open high-priority bugs

FieldValue
connectionIdjira-prod
jqlproject = OPS AND type = Bug AND priority = High AND statusCategory != Done
maxResults50

jira:transitionIssue​

Moves an issue through a workflow transition. Find valid transition IDs with jira:getTransitions.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
issueKeystringYes--Issue key to transition
transitionIdstringYes--Target transition ID
commentstringNo--Comment added with the transition
additionalFieldsobjectNo--Fields required by the transition screen

jira:assignIssue​

Assigns an issue to a user by account ID.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
issueKeystringYes--Issue key to assign
accountIdstringYes--Account ID of the assignee

jira:addComment​

Adds a comment to an issue.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
issueKeystringYes--Issue key
bodystringYes--Comment text

jira:getComments​

Lists comments on an issue.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
issueKeystringYes--Issue key
maxResultsnumber or numeric stringNo--Maximum comments to return

jira:addAttachment​

Attaches a file to an issue. The file is read from the referenced storage path.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
issueKeystringYes--Issue key
filePathstringYes--Path to the file to attach

Output: { "status": ..., "issueKey": ..., "filePath": ..., "attachments": [ ... ] }


jira:linkIssues​

Creates a link between two issues (for example, blocks or relates to).

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
inwardIssueKeystringYes--Inward side of the link
outwardIssueKeystringYes--Outward side of the link
linkTypestringYes--Link type name (e.g., Blocks)

jira:updateCustomField​

Sets a single custom field value on an issue.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
issueKeystringYes--Issue key
fieldIdstringYes--Custom field ID (e.g., customfield_10011)
fieldValueanyYes--Value to set

jira:getSprintIssues​

Lists issues in a sprint (agile API).

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
sprintIdstringYes--Sprint ID
fieldsstring or listNo--Fields to return per issue
maxResultsnumber or numeric stringNo--Maximum issues to return

jira:moveToSprint​

Moves one or more issues into a sprint.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
sprintIdstringYes--Target sprint ID
issueKeysstring or listYes--Issue keys to move, as CSV or list

jira:getProject​

Gets details for a single project.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
projectKeystringYes--Project key

jira:listProjects​

Lists projects the authenticated user can access.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
maxResultsnumber or numeric stringNo--Maximum projects to return

jira:listUsers​

Lists users assignable to a project.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
projectKeystringYes--Project key
maxResultsnumber or numeric stringNo--Maximum users to return

Output: { "users": [ ... ], "total": ... }


jira:getTransitions​

Lists the workflow transitions available for an issue in its current status. Use the returned IDs with jira:transitionIssue.

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
issueKeystringYes--Issue key

jira:listBoards​

Lists agile boards (agile API).

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
maxResultsnumber or numeric stringNo--Maximum boards to return

jira:listSprints​

Lists sprints on a board (agile API).

Parameters

ParameterTypeRequiredDefaultDescription
connectionIdstringYes--Reference to the Jira connection
boardIdstringYes--Board ID
maxResultsnumber or numeric stringNo--Maximum sprints to return

Output​

Each action returns the relevant Jira response payload. Common shapes include:

ActionOutput highlights
jira:createIssueCreated issue key plus a browseUrl link
jira:updateIssuestatus and issueKey (Jira returns HTTP 204)
jira:searchIssuesMatching issues with the requested fields
jira:addAttachmentstatus, issueKey, filePath, and attachments list
jira:listUsersusers list and total count

Common Error Scenarios​

ErrorTypeLikely CauseWhat to Check
Missing configurationVALIDATION_ERRORThe jira<Action>Details config map is missing or emptyConfirm the action's parameter block is populated
Required parameter missingVALIDATION_ERRORA required field (e.g., projectKey, issueKey, jql) is blankProvide all required parameters for the action
Connection not foundNOTFOUND_ERRORThe referenced connectionId does not resolve to a Jira connectionVerify the connection exists in the Global Configurator
Jira API errorHTTP errorJira rejects the request (bad field, permissions, missing issue)The node reports Jira API HTTP error (<status>): <body> — inspect the status and body
Invalid transitionHTTP errorThe transitionId is not valid from the issue's current statusCall jira:getTransitions first to get valid IDs

Best Practices​

  • Store the connection once. Configure a single Jira connection in the Global Configurator and reference it by connectionId across all steps.
  • Look up transitions dynamically. Transition IDs vary by workflow and current status. Call jira:getTransitions before jira:transitionIssue instead of hard-coding IDs.
  • Use account IDs for assignment. Jira Cloud identifies users by account ID, not username or email. Resolve account IDs with jira:listUsers.
  • Keep JQL specific. Narrow searches with project, type, and status filters, and set maxResults to avoid pulling large result sets.
  • Reference custom fields by ID. Custom fields use IDs like customfield_10011. Store these in global variables so workflows stay readable.
  • Pass values through expressions. All parameters except connectionId support {{expression}} resolution — use it to wire Jira steps to upstream data.