Skip to main content

Jira Component

Manage Jira issues, comments, projects and users

Component key: atlassian-jira

Description#

Jira is a proprietary issue tracking product developed by Atlassian that allows bug tracking and agile project management. This component allows you to create, update, comment on, and delete issues in a Jira project.

Jira Connections#

Jira Basic Connection#

If you select Basic Auth and you are using Jira Cloud, you will need to supply your Jira email and an API token to the connection. If you are on a locally hosted instance of Jira, you will need to supply your Jira email and password to the connection. For information on generating an API token from Jira Cloud, refer to the Atlassian docs.

InputNotesExample
Input
Host
string
/ Required
Notes
Provide a string value for the URL of your Jira account.
Example
example.atlassian.net
Input
API Key/Password
string
/ Required
Notes
Provide a password to authenticate all requests with. Cloud users need to generate an API token for this value.
Example
exampleSecurePassword
Input
Username
string
/ Required
Notes
Provide a valid username for the given jira account you want to connect.
Example
exampleUser
Input
Version
string
/ Required
Notes
Provide a string value for the version of your Jira API request
Example
2

Jira OAuth 2.0 Connection#

While Jira's Cloud API has support for legacy OAuth 1.0, Prismatic only offers support for Jira's OAuth 2.0 (3LO) flows. If you select OAuth 2.0, you need to enable it for your app using the Atlassian developer console.

Create a new "Oauth 2.0 integration" and give it a name. Under the app details section, take note of your client Id and client secret values that were generated. After you have saved those values, find the Authorization section and click configure on Oauth 2.0 (3LO). There you will be prompted to enter your redirect URL, which you can find under the credentials tab in the Prismatic settings. - https://oauth2.prismatic.io/callback - as a Redirect URL. Next navigate to the permissions. It is important that you remain consistent with the scopes you supply in both Jira, and your Prismatic connection. The default scopes on a new connection in Prismatic will be as follows: read:project:jira read:user:jira write:issue:jira read:issue:jira read:issue-link:jira write:issue-link:jira read:issue-link-type:jira write:issue-link-type:jira read:issue.transition:jira delete:issue:jira These scopes will provide access to the most of the actions in the Jira component, but you may have to modify the scopes in both locations (Prismatic and Atlassian Console) to meet your needs.

For more information on developing Jira applications, follow the guide here.

Next, you can configure an OAuth 2.0 connection within Prismatic. Add a Jira step to your integration. This will automatically create a Jira connection config variable. Ensure the connection is of type Jira OAuth 2.0 Connection and enter the following details:

  • For Client ID and Client Secret enter the values that you got from the Atlassian Developer Console
  • As stated previously Scopes will default to the following: read:project:jiraread:user:jirawrite:issue:jiraread:issue:jiraread:issue-link:jirawrite:issue-link:jiraread:issue-link-type:jirawrite:issue-link-type:jiraread:issue.transition:jiradelete:issue:jira. with the addition of offline_access on the connection side to obtain a refresh token. From here you can do any additional configuration to match your use case. For example, you might assign the scopes manage:jira-project read:jira-user if you plan to work with Users and Projects. You will need to enable these scopes on the Atlassian Developer Console page for your OAuth 2.0 Jira app. It is important to include offline_access in your scopes, or you will not be given a refresh token.
  • For Version enter the version of Jira you use (you likely use version 2).

Jira API: manage:jira-configuration, manage:jira-project, write:jira-work, read:jira-work.

InputDefaultNotesExample
Input
Authorize URL
string
/ Required
Default
https://auth.atlassian.com/authorize?audience=api.atlassian.com
Notes
The OAuth 2.0 Authorization URL for Jira
Example
 
Input
Client ID
string
/ Required
Default
 
Notes
 
Example
c9e4APadFFkbtTycoNtrHKBtYgUyZWy
Input
Client Secret
password
/ Required
Default
 
Notes
 
Example
ntDBx4ao5czkFu7Mzp5FTlYG0y3_ukxkSiPhwnTkhsdKHJITGRCGP3ZWlXTYyu
Input
Scopes
string
/ Required
Default
read:project:jira read:user:jira write:issue:jira read:issue:jira read:issue-link:jira write:issue-link:jira read:issue-link-type:jira write:issue-link-type:jira read:issue.transition:jira delete:issue:jira offline_access
Notes
A space-delimited set of one or more scopes to get the user's permission to access.
Example
 
Input
Token URL
string
/ Required
Default
https://auth.atlassian.com/oauth/token
Notes
The OAuth 2.0 Token URL for Jira
Example
 
Input
Version
string
/ Required
Default
2
Notes
Provide a string value for the version of your Jira API request
Example
2

Triggers#

Webhook#

Trigger for handling webhook requests from your Jira project | key: webhook

You can configure a Jira webhook to send information to a Prismatic webhook URL under certain conditions (a "Project" is created, an "Issue" is updated, etc.).

You can manage all of your Jira webhooks in the Atlassian Developer Console

Output Example Payload#

{  "payload": {    "headers": {      "accept": "*/*",      "Content-Type": "application/json; charset=UTF-8",      "Host": "hooks.example.prismatic.io",      "X-Atlassian-Webhook-Identifier": "3435193786597450860"    },    "body": {      "data": {        "timestamp": 98034890234,        "webhookEvent": "jira:issue_created",        "issue_event_type_name": "issue_created"      },      "contentType": "application/json; charset=UTF-8"    },    "rawBody": {      "data": { "type": "Buffer", "data": [69, 120, 97, 109, 112, 108, 101] }    },    "queryParameters": {      "user_id": "ExampleUserId",      "user_key": "ExampleUserKey"    },    "webhookUrls": {      "Flow 1": "https://hooks.example.prismatic.io/trigger/EXAMPLEGbG93Q29uZmlnOmRlNmNmNDMyLTliNWMtN0005NDMxLTRmYzA4ZjViODgxOA=="    },    "webhookApiKeys": { "Flow 1": ["abc-123"] },    "customer": {      "externalId": "customer-example-external-id",      "name": "John Doe"    }  }}

Actions#

Add Comment#

Add a comment to an existing issue | key: addComment

InputNotesExample
Input
Comment
string
/ Required
Notes
Provide a string value for the comment.
Example
This is an example comment.
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

Create Issue#

Create an issue within a given project | key: createIssue

InputNotesExample
Input
Assignee
string
/ Required
Notes
Provide an identifier for the person being assigned the issue. This value can either be an Id, email, or name of the desired user.
Example
someone@example.com
Input
Description
string
Notes
Provide a string value for the description of the issue.
Example
This is an example summary.
Input
Due Date
string
Notes
Provide due date for the issue.
Example
2019-05-11
Input
Fix Versions
code
Notes
Provide JSON data for the fix versions. Your object must have a property 'id'
Example
{ id: "10001", }
Input
Issue Type
string
/ Required
Notes
Provide a string value for the type of issue.
Example
 
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Labels
string
Value List
Notes
Provide a list of labels for the issue.
Example
performance
Input
Priority
string
Notes
Provide the unique identifier of the priority. This value can either be an Id, key, or name of the desired record.
Example
High
Input
Project
string
/ Required
Notes
Provide a string value for the unique identifier of the project. This value can either be an Id, key, or name of the desired record.
Example
My Project
Input
Reporter
string
Notes
Provide an identifier for the person that is reporting the issue. This value can either be an Id, email, or name of the desired user.
Example
someone@example.com
Input
Summary
string
/ Required
Notes
Provide a string value for the summary of the issue.
Example
This is an example summary.
Input
Versions
code
Notes
Provide JSON data for the versions. You must supply a JSON array with an object containing an Id.
Example
[ { "id": "10000" } ]

Create User#

Create a new user record | key: createUser

InputNotesExample
Input
Display Name
string
Notes
Provide a string value for the display name to assign to the new user.
Example
John Doe
Input
Email Address
string
/ Required
Notes
Provide a string value for a valid email address.
Example
someone@example.com
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Notifications
boolean
/ Required
Notes
This flag will determine if the user will receive notifications.
Example
 
Input
Password
string
/ Required
Notes
Provide a password to assign to the user.
Example
superSecretPassword
Input
Username
string
/ Required
Notes
Provide a string value for the username of the user.
Example
Example User

Create Version#

Create a new version | key: createVersion

InputNotesExample
Input
Archived
boolean
Notes
This flag determines if the given version is archived.
Example
 
Input
Description
string
Notes
Provide a string value for the description of the issue.
Example
This is an example summary.
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Project
string
/ Required
Notes
Provide a string value for the unique identifier of the project. This value can either be an Id, key, or name of the desired record.
Example
My Project
Input
Project Key
string
Notes
Provide a string value for the key of the project.
Example
JS-Example
Input
Released
boolean
Notes
This flag determines if the given version has been released.
Example
 
Input
Release Date
string
Notes
Provide a valid date for the release of the given version.
Example
2021-07-22
Input
Start Date
string
Notes
Provide a value for the startDate.
Example
2021-07-22
Input
Version Name
string
/ Required
Notes
Provide a string value for the name of the version.
Example
2019.08.18

Output Example Payload#

{  "data": {    "id": "1000",    "description": "Example Description",    "name": "exampleVersion",    "archived": false,    "released": true,    "projectId": 10000  }}

Delete Comment#

Delete a comment from an issue | key: deleteComment

InputNotesExample
Input
Comment Identifier
string
/ Required
Notes
Provide either a number for the comment Id, or a string value that matches the comment.
Example
1000
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

Delete Issue#

Delete an issue by id | key: deleteIssue

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

Download Issue Attachment#

Download the attachment data connected to an issue | key: downloadAttachment

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

Find Issue#

Get information and metadata about an issue by id | key: findIssue

InputNotesExample
Input
Issue Number
string
/ Required
Notes
Provide a string value for the issue number.
Example
10000
Input
Connection
connection
/ Required
Notes
 
Example
 

Find User#

Get information and metadata about an user by id | key: findUser

InputNotesExample
Input
Account
string
/ Required
Notes
Provide a string value for the unique identifier of the account. This value can either be an Id or email address of the desired record.
Example
someone@example.com
Input
Expand
string
Notes
The response may contain a list under the _expandable property; you can specify any of its values separated by commas.
Example
body, version, history
Input
Connection
connection
/ Required
Notes
 
Example
 

Get Board#

Get information and metadata of a board by Id | key: getBoard

InputNotesExample
Input
Board
string
/ Required
Notes
Provide the unique identifier of a board. This value can either be an Id, key, or name of the desired record.
Example
5602576056
Input
Connection
connection
/ Required
Notes
 
Example
 

Get Comments#

Get all the comments on a given issue | key: getComments

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

Get Current User#

Get the information and metadata of the current user | key: getCurrentUser

InputNotes
Input
Connection
connection
/ Required
Notes
 

Get Issue#

Get the information and metadata of an issue | key: getIssue

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Project
string
/ Required
Notes
Provide a string value for the unique identifier of the project. This value can either be an Id, key, or name of the desired record.
Example
My Project

Get Project#

Get the information and metadata of a project | key: getProject

InputNotesExample
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Project
string
/ Required
Notes
Provide a string value for the unique identifier of the project. This value can either be an Id, key, or name of the desired record.
Example
My Project

Get Status List#

Returns a status list | key: getStatusList

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

Get Version#

Get the information and metadata of an existing version | key: getVersion

InputNotesExample
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Project
string
/ Required
Notes
Provide a string value for the unique identifier of the project. This value can either be an Id, key, or name of the desired record.
Example
My Project
Input
Version
string
/ Required
Notes
Provide a string value for the id of the version. This value can either be an Id, key, or name of the desired record.
Example
704703523

List Assignable Users#

Returns a list of users assignable to projects & issues | key: listAssignableUsers

InputNotesExample
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Project Key
string
/ Required
Notes
Provide a string value for the key of the project.
Example
JS-Example

Output Example Payload#

{  "data": [    {      "displayName": "exampleUser",      "accountId": "example-483204",      "accountType": "atlassian",      "emailAddress": "someone@example.com",      "active": true    },    {      "displayName": "exampleUser",      "accountId": "example-483204",      "accountType": "atlassian",      "emailAddress": "someone@example.com",      "active": true    }  ]}

List Board Sprints#

List all sprints within a board | key: listBoardsSprints

InputNotesExample
Input
Board
string
/ Required
Notes
Provide the unique identifier of a board. This value can either be an Id, key, or name of the desired record.
Example
5602576056
Input
Connection
connection
/ Required
Notes
 
Example
 

List Boards#

Retrieve a list of existing boards | key: listBoards

InputNotes
Input
Connection
connection
/ Required
Notes
 

List Issue Fields#

List all configured issue fields | key: listIssueFields

InputNotes
Input
Connection
connection
/ Required
Notes
 

List Issue Link Types#

List all available issue link types | key: listIssueLinkTypes

InputNotes
Input
Connection
connection
/ Required
Notes
 

List Issue Transitions#

Returns a list of issue transitions | key: listIssueTransitions

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

List Issue Types#

Returns a list of issue types | key: listIssueTypes

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

List Issue Worklogs#

Returns a list of issue worklogs | key: listIssueWorklogs

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

List Issues#

Returns a list of issues | key: listIssues

InputNotes
Input
Connection
connection
/ Required
Notes
 

List Priorities#

Returns a list of all priorities | key: listPriorities

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

List Projects#

Retrieve a list of all projects | key: listProjects

InputNotes
Input
Connection
connection
/ Required
Notes
 

List Versions#

Returns a list of all versions | key: listVersions

InputNotesExample
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Project
string
/ Required
Notes
Provide a string value for the unique identifier of the project. This value can either be an Id, key, or name of the desired record.
Example
My Project

Output Example Payload#

{  "data": [    {      "id": "1000",      "name": "exampleVersion",      "archived": false,      "released": false,      "projectId": 1000    },    {      "id": "1001",      "name": "exampleVersion2",      "archived": false,      "released": false,      "projectId": 1000    }  ]}

Query#

Search your entire Jira site using a JQL query | key: query

InputNotesExample
Input
Expand
string
Notes
The response may contain a list under the _expandable property; you can specify any of its values separated by commas.
Example
body, version, history
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Max Results
string
Notes
Provide a value for the maximum amount of results to be returned in the request.
Example
100
Input
Search
string
/ Required
Notes
Provide a string value to search on. This value will be searched against properties like email, displayname, and username
Example
status IN ("To Do", "In Progress", "Closed")
Input
Start At
string
Notes
Provide the page number that you would like the result set to start at
Example
3

Raw Request#

Issue a raw HTTP request with the configured connection | key: rawRequest

InputDefaultNotesExample
Input
Connection
connection
/ Required
Default
 
Notes
 
Example
 
Input
Data
string
Default
 
Notes
The HTTP body payload to send to the URL. Must be a string or a reference to output from a previous step.
Example
{"exampleKey": "Example Data"}
Input
Debug Request
boolean
Default
 
Notes
Enabling this flag will log out the current request.
Example
 
Input
File Data
string
Key Value List
Default
 
Notes
File Data to be sent as a multipart form upload.
Example
[{key: "example.txt", value: "My File Contents"}]
Input
Form Data
string
Key Value List
Default
 
Notes
The Form Data to be sent as a multipart form upload.
Example
[{"key": "Example Key", "value": new Buffer("Hello World")}]
Input
Header
string
Key Value List
Default
 
Notes
A list of headers to send with the request.
Example
User-Agent: curl/7.64.1
Input
Max Retry Count
string
Default
0
Notes
The maximum number of retries to attempt.
Example
 
Input
Method
string
Default
 
Notes
 
Example
 
Input
Query Parameter
string
Key Value List
Default
 
Notes
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.
Example
 
Input
Response Type
string
Default
json
Notes
The type of data you expect in the response. You can request json, text, or binary data.
Example
binary
Input
Retry Delay (ms)
string
Default
0
Notes
The delay in milliseconds between retries.
Example
 
Input
Retry On All Errors
boolean
Default
false
Notes
If true, retries on all erroneous responses regardless of type.
Example
 
Input
Timeout
string
Default
 
Notes
The maximum time that a client will await a response to its request
Example
2000
Input
URL
string
/ Required
Default
 
Notes
This is the URL to call.
Example
/sobjects/Account
Input
Use Exponential Backoff
boolean
Default
false
Notes
Specifies whether to use a pre-defined exponential backoff strategy for retries.
Example
 

Search Issues#

Returns a list of issues that match the given string of text | key: searchIssues

InputNotesExample
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Project Key
string
Notes
Provide a string value for the key of the project.
Example
JS-Example
Input
Search
string
/ Required
Notes
Provide a string value to search on. This value will be searched against properties like email, displayname, and username
Example
Search

Search Projects#

Returns a list of projects that match the given string of text | key: searchProjects

InputNotesExample
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Search
string
/ Required
Notes
Provide a string value to search on. This value will be searched against properties like email, displayname, and username
Example
Search

Search Users#

Returns a single user that matches the given string of text | key: searchUsers

InputNotesExample
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Search
string
/ Required
Notes
Provide a string value to search on. This value will be searched against properties like email, displayname, and username
Example
Search

Transition Issue#

Transition an existing issue by Id | key: transitionIssue

InputNotesExample
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Project
string
/ Required
Notes
Provide a string value for the unique identifier of the project. This value can either be an Id, key, or name of the desired record.
Example
My Project
Input
Transition
string
/ Required
Notes
Provide a string value for the id of the transition.
Example
704703523

Update Comment#

Update the contents and metadata of an existing comment. | key: updateComment

InputNotesExample
Input
Comment
string
/ Required
Notes
Provide a string value for the comment.
Example
This is an example comment.
Input
Comment Identifier
string
/ Required
Notes
Provide either a number for the comment Id, or a string value that matches the comment.
Example
1000
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Connection
connection
/ Required
Notes
 
Example
 

Update Issue#

Update an existing issue within a given project | key: updateIssue

InputNotesExample
Input
Assignee
string
Notes
Provide an identifier for the person being assigned the issue. This value can either be an Id, email, or name of the desired user.
Example
someone@example.com
Input
Description
string
Notes
Provide a string value for the description of the issue.
Example
This is an example summary.
Input
Due Date
string
Notes
Provide due date for the issue.
Example
2019-05-11
Input
Fix Versions
code
Notes
Provide JSON data for the fix versions. Your object must have a property 'id'
Example
{ id: "10001", }
Input
Issue
string
/ Required
Notes
Provide a string value for the unique identifier of the issue. This value can either be an Id, key, or name of the desired record.
Example
NMP-7
Input
Issue Type
string
Notes
Provide a string value for the type of issue.
Example
 
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Labels
string
Value List
Notes
Provide a list of labels for the issue.
Example
performance
Input
Priority
string
Notes
Provide the unique identifier of the priority. This value can either be an Id, key, or name of the desired record.
Example
High
Input
Project
string
/ Required
Notes
Provide a string value for the unique identifier of the project. This value can either be an Id, key, or name of the desired record.
Example
My Project
Input
Reporter
string
Notes
Provide an identifier for the person that is reporting the issue. This value can either be an Id, email, or name of the desired user.
Example
someone@example.com
Input
Summary
string
Notes
Provide a string value for the summary of the issue.
Example
This is an example summary.
Input
Versions
code
Notes
Provide JSON data for the versions. You must supply a JSON array with an object containing an Id.
Example
[ { "id": "10000" } ]

Update Version#

Update an existing version by Id | key: updateVersion

InputNotesExample
Input
Archived
boolean
Notes
This flag determines if the given version is archived.
Example
 
Input
Description
string
Notes
Provide a string value for the description of the issue.
Example
This is an example summary.
Input
Connection
connection
/ Required
Notes
 
Example
 
Input
Project
string
/ Required
Notes
Provide a string value for the unique identifier of the project. This value can either be an Id, key, or name of the desired record.
Example
My Project
Input
Project Key
string
Notes
Provide a string value for the key of the project.
Example
JS-Example
Input
Released
boolean
Notes
This flag determines if the given version has been released.
Example
 
Input
Release Date
string
Notes
Provide a valid date for the release of the given version.
Example
2021-07-22
Input
Start Date
string
Notes
Provide a value for the startDate.
Example
2021-07-22
Input
Version
string
/ Required
Notes
Provide a string value for the id of the version. This value can either be an Id, key, or name of the desired record.
Example
704703523
Input
Version Name
string
Notes
Provide a string value for the name of the version.
Example
2019.08.18

Output Example Payload#

{  "data": {    "id": "1000",    "description": "Example Description",    "name": "exampleVersion",    "archived": false,    "released": true,    "projectId": 10000  }}