ActivityTimeline REST API

All API requests can be made by ActivityTimeline user with Administrator permission only.

ActivityTimeline REST API is turned off by default. You must turn it on before the first use.


ActivityTimeline REST API can be turned on by changing ActivityTimeline REST API setting at AT REST API page in Configuration:

How to Use REST API

  1. Create a unique AT REST API authorization token in ActivityTimeline configuration

  2. Call API methods with specifying that auth-token as a request Header or URL parameter (or auth_token before AT v8.3.0). 

Sample Java/C# code of AT REST API usage

Sample Java project that demonstrates how to call AT REST API can be downloaded here (all API methods):

Sample .NET (C#) project that demonstrates how to call AT REST API can be downloaded here (some API methods):

Important Note when calling AT REST API from JavaScript/Node.js code.

ActivityTimeline uses number identifiers that could be larger than JavaScript number type supports.
As a result, some JavaScript JSON parsers replace the last few digits of an 'id' with zeros making that 'id' invalid.
Example: Actual 'id' of 1235598463805867311 becomes 1235598463805867300

 


 

Authorization

You can authorize into the REST API by specifying a unique Authorization Token in one of 4 supported ways:

  • Add auth-token Header with the value of your Authorization Token (preferred) V8.3.0+

  • Add auth-token URL parameter with the value of your Authorization Token V8.3.0+

  • DEPRECATED Add auth_token Header with the value of your Authorization Token

  • DEPRECATED Add auth_token URL parameter with the value of your Authorization Token 

 

Authorization Token can be generated at ActivityTimeline Configuration → AT REST API page. Handle it with the same security as you would a password.

You can authorize into the REST API by specifying a unique Authorization Token in one of 4 supported ways:

  • Add auth-token Header with the value of your Authorization Token (preferred) V8.3.0+

  • Add auth-token URL parameter with the value of your Authorization Token V8.3.0+

  • DEPRECATED Add auth_token Header with the value of your Authorization Token

  • DEPRECATED Add auth_token URL parameter with the value of your Authorization Token 

 

Authorization Token can be generated at ActivityTimeline Configuration → AT REST API page. Handle it with the same security as you would a password.

 

Methods:

Timeline Schedule & Workload  v4.2.0+

Returns information about user and events (Jira issues and custom events) for specified user for specified period of time.


Request

GET /rest/api/1/timeline?auth_token=YOUR_AUTH_TOKEN

 

QUERY PARAMETERS

Parameter

Type

Description

Parameter

Type

Description

start *

string

Start of the period formatted in "yyyy-MM-dd" format

end *

string

End of the period formatted in "yyyy-MM-dd" format

teamId *

long

Id of a specific team

eventType

string

Optional

If specified then the system will filter returned items to the specified type.

  • supported custom event type names: BOOKING, DAY_OFF, HOLIDAY,
    NOTE, PLACEHOLDER, SICK_LEAVE, VACATION.

  • ISSUE for Jira issues only,

  • WORKLOG for Jira worklogs only,

  • empty - return all items in a period.

jql

string

v10.4.0+

Optional

If specified then the system will filter the issues based on the provided JQL filter query.

Also, you may specify jqlWithNonWorkingEvents=true parameter to keep the custom non Jira events in the output (like bookings, placeholders, vacations, holidays, sick leaves etc).

* indicates required parameters

Example

https://<ACTIVITYTIMELINE_INSTANCE>/rest/api/1/timeline?teamId=1234567890&start=2016-07-11&end=2016-07-18&auth_token=YOUR_AUTH_TOKEN https://<ACTIVITYTIMELINE_INSTANCE>/rest/api/1/timeline?teamId=1234567890&start=2018-11-30&end=2019-01-01&eventType=HOLIDAY&auth_token=YOUR_AUTH_TOKEN https://<ACTIVITYTIMELINE_INSTANCE>/rest/api/1/timeline?teamId=1234567890&start=2018-11-30&end=2019-01-01&eventType=BOOKING&auth_token=YOUR_AUTH_TOKEN https://<ACTIVITYTIMELINE_INSTANCE>/rest/api/1/timeline?teamId=1234567890&start=2018-11-30&end=2019-01-01&eventType=ISSUE&auth_token=YOUR_AUTH_TOKEN https://<ACTIVITYTIMELINE_INSTANCE>/rest/api/1/timeline?teamId=1234567890&start=2018-11-30&end=2019-01-01&eventType=WORKLOG&auth_token=YOUR_AUTH_TOKEN

Responses


status 200 application/json Returns json representation of the result if request performed successfully.
Example
{ "id": "1107507732947945188", "name": "External Team", "members": [ { "id": "3786270175247354575", "involvement": 8, "personPosition": { "id": "8582213406392863840", "positionNameLong": "QA", "positionDescription": "QA Engineer" }, "userRealName": "Amy Kartel", "email": "amy.kartel@company.com", "enabled": true, "username": "amy.kartel", "issues": [ { "id": "273688659851364550", "issueId": 20003, "issueKey": "TRP-10", "summary": "[TRP-10] Incorrect wording on a label", "plannedStart": "2016-07-13", "plannedEnd": "2016-07-13", "due": "", "color": "Red", "issueType": "JIRA_ISSUE", "originalTimeEstimate": 0, "remainingTimeEstimate": 0 }, { "id": "10913502816060634", "issueId": null, "issueKey": "TRPae98fee1-96c1-4b0b-ada6-dd138e12e693", "summary": "[Booking] Reperi Product | potential work", "plannedStart": "2016-07-14", "plannedEnd": "2016-07-15", "due": "", "color": null, "issueType": "BOOKING", "originalTimeEstimate": 7200, "remainingTimeEstimate": 7200, "estimatePerWorkDay": "yes", "extraLink": "", "approvedBy": null }, { "id": "4960169761522796814", "issueId": 16802, "issueKey": "TA-8", "summary": "[TA-8] Choose ISP", "plannedStart": "2016-07-14", "plannedEnd": "2016-07-14", "due": "", "color": "None", "issueType": "JIRA_ISSUE", "originalTimeEstimate": 0, "remainingTimeEstimate": 0 }, { "id": "4445216931731619881", "issueId": null, "issueKey": "_AT_2db7247c-a0f5-4e3b-bfe5-4baf1df566fa", "summary": "[Day Off] out of the office", "plannedStart": "2016-07-11", "plannedEnd": "2016-07-12", "due": "", "color": "Yellow", "issueType": "DAY_OFF", "originalTimeEstimate": 0, "remainingTimeEstimate": 0, "extraLink": "", "approvedBy": null } ] }, { "id": "4759616025136811794", "involvement": 4, "personPosition": { "id": "3712124335976172354", "positionNameLong": "Consultant", "positionDescription": null }, "userRealName": "Bob Robinson", "email": "bob.robinson@company.com", "enabled": true, "username": "bob.robinson", "issues": [ { "id": "6068295962237947803", "issueId": 15103, "issueKey": "TDES-1", "summary": "[TDES-1] Two new graphics", "plannedStart": "2016-07-11", "plannedEnd": "2016-07-22", "due": "", "color": null, "issueType": "JIRA_ISSUE", "originalTimeEstimate": 57600, "remainingTimeEstimate": 144000 } ] }, { "id": "2612086174493854452", "involvement": 8, "personPosition": null, "userRealName": "Janny Miller", "email": "janny.miller@company.com", "enabled": true, "username": "janny.miller", "issues": [ { "id": "3121097772564302182", "issueId": 15106, "issueKey": "TDES-4", "summary": "[TDES-4] Update default layout", "plannedStart": "2016-07-12", "plannedEnd": "2016-07-12", "due": "", "color": null, "issueType": "JIRA_ISSUE", "originalTimeEstimate": 14400, "remainingTimeEstimate": 5400 }, { "id": "3954119684277487799", "issueId": 15105, "issueKey": "TDES-3", "summary": "[TDES-3] Update title styles", "plannedStart": "2016-07-11", "plannedEnd": "2016-07-11", "due": "", "color": "Purple", "issueType": "JIRA_ISSUE", "originalTimeEstimate": 0, "remainingTimeEstimate": 0 }, { "id": "4134472451282322432", "issueId": 15100, "issueKey": "TRP-1", "summary": "[TRP-1] Implement Data Migration Script", "plannedStart": "2016-07-13", "plannedEnd": "2016-07-15", "due": "", "color": null, "issueType": "JIRA_ISSUE", "originalTimeEstimate": 57600, "remainingTimeEstimate": 86400 }, { "id": "41351470354940514", "issueId": null, "issueKey": "TRPddc956ec-bb5b-4201-85ab-8f4f32f50e2c", "summary": "[Placeholder | TRP-4] Add Print dialog", "plannedStart": "2016-07-12", "plannedEnd": "2016-07-12", "due": "", "color": null, "issueType": "PLACEHOLDER", "originalTimeEstimate": 7200, "remainingTimeEstimate": 7200, "placeholderIssueKey": "TRP-4", "extraLink": "", "approvedBy": null } ] } ] }

 

status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request


status 200 application/json Returns json representation of the result if request performed successfully.
Example

 

status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request

 

 


Request

 

QUERY PARAMETERS

Parameter

Type

Description

Parameter

Type

Description

start *

string

Start of the period formatted in "yyyy-MM-dd" format

end *

string

End of the period formatted in "yyyy-MM-dd" format

username *

string

Username or accountId of specific user

eventType

string

Optional

If specified then the system will filter returned items to the specified type.

  • supported custom event type names: BOOKING, DAY_OFF, HOLIDAY,
    NOTE, PLACEHOLDER, SICK_LEAVE, VACATION.

  • ISSUE for Jira issues only,

  • WORKLOG for Jira worklogs only,

  • empty - return all items in a period.

jql

string

v10.4.0+

Optional

If specified then the system will filter the issues based on the provided JQL filter query.

Also, you may specify jqlWithNonWorkingEvents=true parameter to keep the custom non Jira events in the output (like bookings, placeholders, vacations, holidays, sick leaves etc).

* indicates required parameters

Example

Responses


status 200 application/json Returns json representation of the result if request performed successfully.
Example

 

status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request


status 200 application/json Returns json representation of the result if request performed successfully.
Example

 

status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request

 

 


Request


QUERY PARAMETERS

Parameter

Type

Description

Parameter

Type

Description

start *

string

Start of the period formatted in "yyyy-MM-dd" format

end *

string

End of the period formatted in "yyyy-MM-dd" format

teamId *

long

id of specified team

projectKey

string

Optional ActivityTimeline v8.1.2 and above
The system will output the per-user workload per specific project if
projectKey parameter is set

startOffset

int

Offset for first users, default is 0

maxUsers

int

Maximum users count to return, max 50

includeProjectDetails

boolean

Optional Activity Timeline v8.2.0 and above
If set to 'true" then the app will return break down of hours per project key.

Example:

jql

string

v10.4.0+

Optional

If specified then the system will filter the issues based on the provided JQL filter query.

Also, you may specify jqlWithNonWorkingEvents=true parameter to keep the custom non Jira events in the output (like bookings, placeholders, vacations, holidays, sick leaves etc).

* indicates required parameters

Example


Responses


status 200 application/json Returns json representation of the result if request performed successfully.
Example



status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request


status 200 application/json Returns json representation of the result if request performed successfully.
Example



status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request

 


Request


QUERY PARAMETERS

Parameter

Type

Description

Parameter

Type

Description

start *

string

Start of the period formatted in "yyyy-MM-dd" format

end *

string

End of the period formatted in "yyyy-MM-dd" format

username *

string

Username or accountId of specific user

jql

string

v10.4.0+

Optional

If specified then the system will filter the issues based on the provided JQL filter query.

Also, you may specify jqlWithNonWorkingEvents=true parameter to keep the custom non Jira events in the output (like bookings, placeholders, vacations, holidays, sick leaves etc).

* indicates required parameters


Example


Responses


status 200 application/json Returns json representation of the result if request performed successfully.
Example



status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request


status 200 application/json Returns json representation of the result if request performed successfully.
Example



status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request

 


Request


QUERY PARAMETERS

Parameter

Type

Description

Parameter

Type

Description

start *

string

Start of the period formatted in "yyyy-MM-dd" format

end *

string

End of the period formatted in "yyyy-MM-dd" format

teamId *

long

id of specified team

startOffset

int

Offset for first users, default is 0

maxUsers

int

Maximum users count to return, max 50

jql

string

v10.4.0+

Optional

If specified then the system will filter the issues based on the provided JQL filter query.

Also, you may specify jqlWithNonWorkingEvents=true parameter to keep the custom non Jira events in the output (like bookings, placeholders, vacations, holidays, sick leaves etc).

* indicates required parameters

Example


Responses


status 200 application/json Returns json representation of the result if request performed successfully.
Example

 

status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request


status 200 application/json Returns json representation of the result if request performed successfully.
Example

 

status 400 Returns if incorrect input parameters were supplied

status 401 Returns if user was not logged in

status 403 Returns if user didn't have permissions

status 500 Returns if errors occurred during request

 

 

 

 


 

Custom events   v4.5.5+

 

 

 

 

 

 


 

Teams   v8.3.0+

 

 

 

 

 

 

 

 


 

Projects    v8.3.0+

 

 


 

Users    v8.3.0+

 

 

 

 

 

 

 

 

 


 

Skills   v8.3.0+

 

 

 

 

 


 


Positions   v8.3.0+

 

 

 


 

 

Worklogs   V8.3.0+

 

 

 

 

 

 

 


 

Frequently Asked Question. Read more.

Helpful tips in our Blog.

Questions? Contacts Us.

Contact details for Solution partners.

Search doсumentation

Search doсumentation...