API query methods
This page is about OKR for Jira Cloud. Using Data Center? Click here.
Base URL for all API calls
If you are in the EU region: https://eu.okr-jira-prod.appfire.com
Everywhere else: https://okr-jira-prod.appfire.com
Key notes
While updates are available via API, using the
percentDone
field directly on Objectives and Key Results is preferred for progress tracking.Progress values for manual Key Result updates are not editable and won't be present in the retrieved data.
Objective progress cannot be tracked via updates.
Query objectives by date
The query retrieves a list of all objectives that have a start date and/or due date within the specified date range.
GET /api/v2/api-export/objectives/byDate
Parameter | Description | Mandatory |
---|---|---|
| Start date of query time window, in UNIX Epoch time format, in milliseconds. | |
| End date of query time window, in UNIX Epoch time format, in milliseconds. | |
| A list of objects you want to include expanded in request. By default, you receive only the IDs of connected entities. |
Example request:
GET https://okr-jira-prod.appfire.com/api/v2/api-export/objectives/byDate?
startDateEpochMilli=1409459200000
&deadlineEpochMilli=1748647410000
&expand=KEY_RESULTS,TEAMS,PERIODS,LABELS
Query objectives by ID
The query for a list of all objectives with specified IDs.
GET /api/v2/api-export/objectives/byIds
Parameter | Description | Mandatory |
---|---|---|
| Comma separated list of objective IDs you want to receive. |
|
| A list of objects you want to include expanded in reqeust. By default, you receive only the IDs of connected entities. |
|
Example request:
GET https://okr-jira-prod.appfire.com/api/v2/api-export/objectives/byIds?objectiveIds=5fda249d289742000406b3e4
&expand=OBJECTIVES,KEY_RESULTS,TEAMS,PERIODS,LABELS
Query key results by date
The query retrieves a list of all key results that have a start date and/or due date within the specified date range.
GET /api/v2/api-export/keyResults/byDate
Parameter | Description | Mandatory |
---|---|---|
| Start date of query time window, in UNIX Epoch time format, in milliseconds. |
|
| End date of query time window, in UNIX Epoch time format, in milliseconds. |
|
| A list of objects you want to include expanded in reqeust. By default, you receive only the IDs of connected entities. Permitted values: OBJECTIVES,TEAMS,PERIODS,LABELS |
|
Example request:
GET https://okr-jira-prod.appfire.com/api/v2/api-export/keyResults/byDate?
startDateEpochMilli=1509459200000
&deadlineEpochMilli=1748647410000
&expand=OBJECTIVES,KEY_RESULTS,TEAMS,PERIODS,LABELS
Query key results by ID
Query for a list of all key results with specified IDs.
GET /api/v2/api-export/keyResults/byIds
Parameter | Description | Mandatory |
---|---|---|
| Comma separated list of key result ids you want to receive. | |
| A list of objects you want to include expanded in reqeust. By default, you receive only the IDs of connected entities. |
Example request:
GET https://okr-jira-prod.appfire.com/api/v2/api-export/keyResults/byIds?
expand=OBJECTIVES,KEY_RESULTS,TEAMS,PERIODS,LABELS
&keyResultIds=5fda249d289742000406b3e5
Query updates by entity ID
This query retrieves updates for objectives or key results, displaying the newest ones first.
NOTE ON PROGRESS: Updates are not the best way to calculate progress. Utilize the percentDone
field on Objectives and Key Results to obtain the latest progress value.
Updates for non-auto Key Results have startValue
, value
, and desiredValue
fields. They allow tracking changes in the progress of a Key Result. The latest update for a Key Result will have an up-to-date value.
As for auto KR updates, there are two kinds of them. Automatic updates are generated when connected issues change status, and such updates have progress values. You can also create a manual update with a description, but progress values are not editable and will not be present on the Update object fetched through API.
Objective progress cannot be traced by its updates. Objective updates will always have their progress as null. We calculate the progress of an objective in-flight and do not generate an update for every change in the Objective's underlying Key Results.
GET /api/v2/api-export/updates
Parameter | Description | Mandatory |
---|---|---|
| ID of a single objective or key result to return updates for. | |
| Only updates earlier than the date provided will be returned. | |
| This endopint supports cursor-based pagination. | |
| Controls how many updates the request will return in single response. If there are more updates than returned, |
|
Example request:
GET https://okr-jira-prod.appfire.com/api/v2/api-export/updates?entityId=5fda249d289742000406b3e5&pageSize=100&cursor=MTY0MDYwMDQ5MDI5MA==
Query comments
Query paged comments (all or for given updateIds).
GET /api/v2/api-export/updateComments
Parameter | Description | Mandatory |
---|---|---|
| Ids of updates to retrieve comments. | |
| This endopint supports cursor-based pagination. | |
| Controls how many comments the request will return in single response. If there are more comments than returned, |
Example request:
GET https://okr-jira-prod.appfire.com/api/v2/api-export/updateComments?updateId=6453c760a3b1a006776f1c7f&pageSize=1&cursor=MTY4MzIxMjE0MTA1OQ==