InTouch Hub · Blue Isle Software

Jira

Read, search, create, and transition Jira Cloud issues via the Jira Cloud REST API v3.

Provided free and as is, without warranty of any kind — including merchantability, fitness for a particular purpose, and the accuracy or completeness of any result. See the licence. You are responsible for checking what this produces before relying on it.

atlassiandeveloper-devopsemailissuessearchstatussummarytickets

Jira

Read, search, create, and transition issues on a Jira Cloud site using the Jira Cloud REST API v3.

Standard-library Python only (no requests). Authenticates with HTTP Basic auth using your Atlassian account email and an API token.

Operations

operation Jira endpoint Required inputs
get_issue GET /rest/api/3/issue/{issueKey} issueKey
search GET /rest/api/3/search/jql?jql=... jql
create_issue POST /rest/api/3/issue projectKey, summary (+ issueType)
get_transitions GET /rest/api/3/issue/{issueKey}/transitions issueKey
do_transition POST /rest/api/3/issue/{issueKey}/transitions issueKey, transitionId

All operations also require site (your Jira Cloud domain) and apiKey.

Outputs

Every call publishes:

Non-2xx responses are not treated as failures: the status and Jira's error JSON are returned so the caller can inspect them. Only transport-level failures (DNS, connection refused, timeout) fail the step.

Getting the apiKey

  1. Go to https://id.atlassian.com/manage-profile/security/api-tokens.
  2. Click Create API token, name it, and copy the token.
  3. The apiKey input is your Atlassian account email and the token joined with a colon: [email protected]:your_api_token.

InTouch base64-encodes this and sends it as Authorization: Basic ..., exactly as the Jira Cloud Basic-auth scheme requires.

Inputs

input default notes
apiKey (required) email:api_token for Basic auth.
operation (required) One of the operations above.
site (required) your-domain or your-domain.atlassian.net.
issueKey "" Issue key or id, e.g. PROJ-123.
jql "" JQL query for search.
maxResults 20 1–100, for search.
fields summary,status,assignee Field list for get_issue / search.
projectKey "" Project key for create_issue.
issueType Task Issue type name for create_issue.
summary "" Title for create_issue.
description "" Plain text; wrapped into Atlassian Document Format on create.
transitionId "" Transition id (from get_transitions) for do_transition.

Examples

1. Look up an issue

operation = get_issue
site      = acme
apiKey    = [email protected]:ATATT3xFf...
issueKey  = ENG-42
fields    = summary,status,assignee

Returns the issue JSON for ENG-42 (status = 200).

2. Search open bugs with JQL

operation  = search
site       = acme.atlassian.net
apiKey     = [email protected]:ATATT3xFf...
jql        = project = ENG AND issuetype = Bug AND statusCategory != Done ORDER BY created DESC
maxResults = 25

Returns matching issues as JSON.

3. Create then transition an issue

Create:

operation   = create_issue
site        = acme
apiKey      = [email protected]:ATATT3xFf...
projectKey  = ENG
issueType   = Task
summary     = Wire up nightly export
description = Add a scheduled job that exports the report each night.

List available transitions (get_transitions with the new issue key), then move it forward:

operation    = do_transition
site         = acme
apiKey       = [email protected]:ATATT3xFf...
issueKey     = ENG-101
transitionId = 31

On success status is 204 and result confirms the transition.

Publishes

The keys a later task may reference as {{taskName.key}}. Referencing anything not listed here resolves to nothing at run time.

Input Properties

Every property this tool accepts, from its own tool.iml.

Property Type Required Default Description
apiKey string yes — Jira Cloud Basic-auth credential as 'email:api_token' (your Atlassian account email + an API token from https://id.atlassian.com/manage-profile/security/api-tokens). Sent as HTTP Basic auth.
operation string yes — One of: get_issue, search, create_issue, get_transitions, do_transition
site string no — Jira Cloud site/domain, e.g. 'your-domain' or 'your-domain.atlassian.net' (the bit before .atlassian.net). Required.
issueKey string no — Issue key or id, e.g. 'PROJ-123'. Required for get_issue, get_transitions, do_transition.
jql string no — JQL query string for the search operation, e.g. 'project = PROJ AND status = "To Do" ORDER BY created DESC'.
maxResults string no 20 Max results for search (1-100).
fields string no summary,status,assignee Comma-separated field list returned by get_issue / search.
projectKey string no — Project key for create_issue, e.g. 'PROJ'.
issueType string no Task Issue type name for create_issue, e.g. 'Task', 'Bug', 'Story'.
summary string no — Summary/title for create_issue. Required for create_issue.
description string no — Plain-text description body for create_issue (wrapped into Atlassian Document Format).
transitionId string no — Transition id (from get_transitions) for do_transition. Required for do_transition.