Jira REST API: How it works - Valiantys - Atlassian Platinum Partner

Jira REST API: How it works

At Valiantys, we use Jira REST API to execute repetitive tasks like creating issues with attachments in bulk, or when developing apps for Jira. We have also seen some of our clients use REST API to create a specific report or to sync Jira issues with other systems. So let’s take brief look into Jira REST API.

What exactly is REST API?

REST (Representational State Transfer) is an architectural style and approach to communications that is often used in the development of web services. It is the mostly widely used API paradigm on the web and now it is frequently used to connect applications to the Cloud.  Earlier this year, Atlassian developers announced a new module and REST APIs interface that is described as more straightforward to implement and maintain.

Jira provides a wide range of REST API resources that helps developers create communication between Jira and other applications. With these resources you can create, update, edit and delete data in Jira using standard HTTP methods like GETPUTPOST and DELETE

Atlassian REST API Browser 

Atlassian REST API Browser provides a browser for available Jira REST resources. After installing the app, go to Systems > Advanced Section > REST API Browserand you should see the below: 


API Browser


You will have to click on the Drop access link in the information message for the search APIs bar shown below to appear. 


search bar

Now let’s get started.

Firstly you will need to define the action you are trying to perform – for example create a ticket, attach a file, add a user or get the information of specific custom field.

For this tutorial we will try to create a ticket using REST. To get the correct API resource, you need to use either the API browser of the Atlassian Developer Toolbox app or Atlassian documentation Jira REST API documentation.


Create API


As seen in the screenshot above when typing the word create, we automatically highlight the API to perform the action. On the right side you will see a brief description of the API, the parameter options and the HTTP method that should be used to perform the request successfully.

For this example, you don’t have to provide any parameters or the HTTP method you should use to create the issue is POST method. Now let’s build the body of the request using JSON format to create a ticket. I’ve already configured my Jira instance as the following: 

Project/Custom field Name


Test Project




Sample of JSON request: 

{ “fields”: { “project”: { “key”: “TP” }, “summary”: “Summary of the issue created using REST API…”, “description”: “Description of the issue”, “issuetype”: { “id”: “3” }, “assignee”: { “name”: “admin” }, “reporter”: { “name”: “admin” }, “priority”: { “id”: “1” }, “customfield_10100”: “DATA INSERTED INTO REST API CUSTOM FIELD” } }

From the above JSON request, I’ve set the Jira Project Key, Summary, Description, Issue Type, Assignee, Reporter, Priority and Custom Field (name: REST API).

Request Body


Write or copy the JSON example above into the Request Body of the browser and change the values like the ID of the issue type, Priority, Custom Field and Project key to you own Jira instance values. Once it’s ready, click Send and you should see the response message as shown below: 




The response message should show the ID, key and full URL of the newly created ticket. You can use the URL to find the actual ticket in your project.




Congratulations, you’ve successfully managed to create a ticket using Jira REST API!

REST Clients

Alternatively, you can use browsers’ rest clients extensions or apps to execute your operations. For example the Advanced Rest Client Chrome extension allows you to send custom requests from your browser to any application that supports REST. 

We will use the URL for the REST to create an issue from the previous example: 


After installing the extension in Chrome, you should see the screenshot below: 




I’ve highlighted the different sections that we will use to create a ticket in Jira.

Name Data



HTTP method




Request Body

{ “fields”: { “project”: { “key”: “TP” }, “summary”: “REST API TEST”, “description”: “Creating of a ticket using project keys and issue type names using the REST API”, “issuetype”: { “id”: “3” }, “assignee”: { “name”: “admin” }, “reporter”: { “name”: “admin” }, “priority”: { “id”: “1” }, “customfield_10100”: “DATA INSERTED INTO REST API CUSTOM FIELD” } }

The only difference between the previous example in Atlassian REST API Browser app and Advanced Rest Client is that the login is required in the header section, as shown in the table above (username:password). As we are creating the data from outside Jira, you must provide a user that has create issue permission in Jira. (Note: the colon is required between username and password).

The final request should look like below: 




After clicking on Send, the response message will appear: 




Jira REST API: What’s Next? 

You’ve just seen one of the many REST API resources provided by Jira and other Atlassian tools. The best place to find those resources and more examples on how to use them are in the links below:

For more Atlassian tips, subscribe to our newsletter below:

Cutted Triangle

Subscribe to the Valiantys Newsletter

Registered request ! Subscribing... This is not an email An error occured

In accordance with our privacy policy, we are committed to respecting your personal data.

Contact us

Our Atlassian certified consultants will be happy to answer you.

Join us

We're building the next dream team - Are you in?

Follow us

We use cookies for the operation of our website. This is to improve its use, to personalize your experience, and to compile visitor statistics. By continuing to use this site, you consent to this policy. You can manage the settings and choose whether or not to accept certain cookies whilst browsing. For more information, see our privacy policy. Our privacy policy

Privacy settings

In order to facilitate your navigation and to provide you with the best possible service, we use cookies to improve the site to the needs of our visitors, particularly according to the number of visitors. For more information, please read our privacy policy. Our privacy policy


Google reCAPTCHA is a system designed to distinguish humans from computers, so that bots are unable to maliciously fill out forms on behalf of a human being.


Used to send data to Google Analytics about the visitor's device and behavior. Tracks the visitor across devices and marketing channels. Used by the social sharing platform AddThis to store the user's usage history of the AddThis sharing widget. Registers a unique ID that is used to generate statistical data on how the visitor uses the website.


Targeting Cookies: Targeting cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant advertising on other sites. They are based on uniquely identifying your browser and internet device. You can turn off the use of cookies for targeted advertising here. When the button is green, targeted cookies are on. When the button is red, targeting cookies have been turned off.

Social Media Cookies: These cookies are set by a range of social media services that we have added to the site to enable you to share our content with your friends and networks. They are capable of tracking your browser across other sites and building up a profile of your interests. This may impact the content and messages you see on other websites you visit. If you do not allow these cookies you may not be able to use or see these sharing tools.