Skip to main content
Skip table of contents

Account REST APIs for Jira Cloud

The code examples provided below are for curl and you will need to adapt them to your preferred means of dealing with REST APIs. All information provided in curly brackets “{}” need to be replaced with the variables from your instance.

For any requests to Jira (which are necessary to update issues) you will need an API token from Atlassian. You can find more information about creating and managing Atlassian API tokens here.

Update the Tempo Account Fields

After a restore of the database on the Cloud instance the Tempo Account and Team field exist but any related data needs to be updated with the newly created Tempo Account and Tempo Team information. 

First we need to get the custom field ID of the Tempo Account or Team fields:

CODE
curl --request GET 'https://{JiraCloudUrl}/rest/api/3/field' -H 'Authorization: Basic {base64encodedAtlassianEmail:AtlassianAPIToken}'

Within the response of that call you will find the information of the Tempo Account and the Tempo Team field:

CODE
{
        "id": "customfield_10201",
        "key": "io.tempo.jira__account",
        "name": "Account",
And
 {
        "id": "customfield_10200",
        "key": "io.tempo.jira__team",
        "name": "Team",

To update the Jira issue with the new Tempo Account/Team values use the Jira issue endpoint with a PUT request:

CODE
curl --request PUT 'https:///{JiraCloudUrl}/rest/api/3/issue/{IssueKey}' \
--H 'Content-Type: application/json' \
--H 'Authorization: Basic {base64encodedAtlassianEmail:AtlassianAPIToken}' \
--data-raw '{"fields": {"customfield_10201": {TempoAccountID}}'

As the update of the Jira custom field only accepts the Tempo Account ID (key or name can not be passed) you will need to find the Tempo Account from the imported Tempo Accounts. The Tempo Accounts are returned from the API call:

CODE
curl --request GET 'https://api.tempo.io/core/3/accounts' -H 'Authorization: Bearer {TempoAPIToken}' 

Worklog Account Information

Retrieving the account information can only be done for a single Tempo Account. In order to retrieve all Tempo Accounts you will need to loop through all your accounts.

CODE
curl --location --request GET 'https://api.tempo.io/core/3/worklogs/account/{TempoAccountKey}?from={periodStartdate}&to={periodEnddate}' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {TempoAuthorisationToken}' 

The endpoint only accepts the Account key (not Tempo account ID or the Tempo Account name).

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.