Skip to main content
Skip table of contents

Tempo API version 4.0 vs. version 3.0: A comparison

  • You should refer to the Tempo REST API documentation (4.0) to access the complete REST API documentation guide.

  • This Tempo API version 4.0 vs. version 3.0: A comparison topic only lists the differences between the latest Tempo REST API version 4.0 versus the previous version 3.0.

  • Tempo API version 3.0 no longer includes the resource https://api.tempo.io/4/teams/{teamId}/members/{accountId}. To fetch the display name by Jira account ID, use the Jira Cloud platform REST API.

Tempo REST API version 4.0

The Tempo REST API version 4.0 improves performance when compared to version 3.0 by streamlining the process in the backend to deliver faster response time. Certain requests to Jira were removed in order to speed up the API response time.

For example, displayName is no longer part of the Tempo API request in version 4.0 but can be requested in a separate call.

What's New In This Version

What's new in Tempo API version 4.0:

  • Better performance and faster response time.

  • Increase from 1000 records in version 3.0 to a maximum of 5000 records per API call in version 4.0.

  • New endpoints that include skills and account search.

  • Improved existing endpoints by replacing issueKey with issueId and projectKey with projectId.

  • Open API format.

Response Messages v3.0 Versus v4.0

Compare the response messages between version 3.0 and version 4.0. Here are examples.

Response message in version 3.0:

CODE
{
    "self": "https://api.tempo.io/core/3/worklogs/3920",
    "tempoWorklogId": 3920,
    "jiraWorklogId": 14020,
    "issue": {
        "self": "https://tempo-sales.atlassian.net/rest/api/2/issue/CTP-1",
        "key": "CTP-1",
        "id": 10991
    },
    "timeSpentSeconds": 3600,
    "billableSeconds": 3600,
    "startDate": "2019-11-27",
    "startTime": "16:11:15",
    "description": "asdf",
    "createdAt": "2019-11-27T16:11:23Z",
    "updatedAt": "2019-11-27T16:11:23Z",
    "author": {
        "self": "https://tempo-sales.atlassian.net/rest/api/2/user?accountId=557058:3322bc29-17c6-493f-b4f5-1945319acf06",
        "accountId": "557058:3322bc29-17c6-493f-b4f5-1945319acf06",
        "displayName": "Taylor"
    },
    "attributes": {
        "self": "https://api.tempo.io/core/3/worklogs/3920/work-attribute-values",
        "values": []
    }
}

Response message in the new version 4.0:

CODE
{
     "self": "https://api.tempo.io/4/worklogs/2",
     "tempoWorklogId": 2,
     "issue": {
         "id" : 10003,
         "self": "https://eu-hda.atlassian.net/rest/api/2/issue/10003"
     },
     "timeSpentSeconds": 3600,
     "billableSeconds": 3600,
     "startDate": "0000-09-30",
     "startTime": "23:59:59",
     "description": "Working on issue SPRIN-4",
     "createdAt": "2022-04-06T16:11:18Z",
     "updatedAt": "2022-06-03T15:19:09Z",
     "author": {
         "self": "https://eu-hda.atlassian.net/rest/api/2/user?accountId=61d86dbdce3652006ae71936",
         "accountId": "61d86dbdce3652006ae71936"
     },
     "attributes": {
         "self": "api.tempo.io/4/worklogs/2/work-attribute-values",
         "values": []
     }
 }

For information on how to obtain the displayName field, refer to the JIRA REST API documentation here.

New Endpoints for Version 4.0

The new endpoints introduced in version 4.0 are associated with Skills, Skill assignments and Account Resource:

CODE
Account Resource API

POST /account/search     - Search existing accounts

Skills API

POST   /skills/search    - Search skills
GET    /skills/id        - Retrieve a skill
POST   /skills           - Create a new Skill
PUT    /skills/id        - Update a skill
DELETE /skills/id        - Delete a skill

Skill Assignments API

POST /skill-assignments                             - Assign a list of skills for a given resource
POST /skill-assignments/replace                     - Replace skills for a given resource
GET  /skill-assignments/assigneeId/assigneeType     - Retrieve a list of skills for a given resource
DELETE /skill-assignments/assigneeId/assigneeType   - Remove skill for a given resourceSkills API

Changes to Endpoints in Version 4.0

The following changes are made to version 4.0 endpoints:

CODE
Changes to issueKey and projectKey. The issueKey and projectKey are no longer valid:

GET /worklogs                                 - Use issueId in the issue query paramater and projectId in the project query parameter.
POST /worklogs                                - Use the issueId input field.
PUT /worklogs                                 - Use the issueId input field.
GET /worklogs/project/{projectIdOrKey}        - Search worklogs by projectId.
projectId and issueId                         - Use these parameters in all self link that mentions a Jira resource.

Changes to Plans

POST /plans/search                            - This replaces GET /plans and offers better search.
plannedSecondsPerDay                          - Renamed from plannedPerDaySeconds.
assigneeId and assigneeType (USER | GENERIC)  - Replaces by accountId: required (string).
issueKey: (string) projectKey: (string)       - Are merged into planItemID and planItemType.
Team plans                                    - Are no longer supported in this version.

JavaScript errors detected

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

If this problem persists, please contact our support.