Sample - Asana API
GET/time_tracking_entries

Get multiple time tracking entries

Required scope: time_tracking_entries:read

Returns a list of time tracking entries filtered to a task, attributed project, portfolio or user.

  • RetriesRetries up to 2×, 500ms backoff, 30s timeout.

11 parameters
taskstringoptional
Globally unique identifier for the task to filter time tracking entries by.
attributable_tostringoptional
Globally unique identifier for the project the time tracking entries are attributed to.
portfoliostringoptional
Globally unique identifier for the portfolio to filter time tracking entries by.
userstringoptional
Globally unique identifier for the user to filter time tracking entries by.
workspacestringoptional
Globally unique identifier for the workspace. At least one of `entered_on_start_date` or `entered_on_end_date` must be provided when filtering by workspace.
entered_on_start_datestringoptional
The start date for filtering time tracking entries by when they were entered.
entered_on_end_datestringoptional
The end date for filtering time tracking entries by when they were entered.
timesheet_approval_statusstringoptional
Globally unique identifier for the timesheet approval status to filter time tracking entries by.
limitintegeroptional
Results per page. The number of objects to return per page. The value must be between 1 and 100.
offsetstringoptional
Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. *Note: You can only pass in an offset that was returned to you via a previously paginated request.*
opt_fieldsarray<string>optional
This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. Properties can include nested fields. To learn more, see the [input/output options guide](/docs/inputoutput-options#selecting-nested-fields).

7 status codes
200Successfully retrieved the requested time tracking entries.
dataarray<object>optional
next_pageobjectoptional
*Conditional*. This property is only present when a limit query parameter is provided in the request. When making a paginated request, the API will return a number of results as specified by the limit parameter. If more results exist, then the response will contain a next_page attribute, which will include an offset, a relative path attribute, and a full uri attribute. If there are no more pages available, next_page will be null and no offset will be provided. Note that an offset token will expire after some time, as data may have changed.
400This usually occurs because of a missing or malformed parameter. Check the documentation and the syntax of your request and try again.
errorsarray<object>optional
401A valid authentication token was not provided with the request, so the API could not associate a user with the request.
errorsarray<object>optional
402The request was valid, but the queried object or object mutation specified in the request is above your current premium level.
errorsarray<object>optional
403The authentication and request syntax was valid but the server is refusing to complete the request. This can happen if you try to read or write to objects or properties that the user does not have access to.
errorsarray<object>optional
404Either the request method and path supplied do not specify a known action in the API, or the object specified by the request does not exist.
errorsarray<object>optional
500There was a problem on Asana’s end. In the event of a server error the response body should contain an error phrase. These phrases can be used by Asana support to quickly look up the incident that caused the server error. Some errors are due to server load, and will not supply an error phrase.
errorsarray<object>optional

Error handling

A 400 is returned: This usually occurs because of a missing or malformed parameter. Check the documentation and the syntax of your request and try again. A 401 is returned: A valid authentication token was not provided with the request, so the API could not associate a user with the request. A 402 is returned: The request was valid, but the queried object or object mutation specified in the request is above your current premium level. A 403 is returned: The authentication and request syntax was valid but the server is refusing to complete the request. This can happen if you try to read or write to objects or properties that the user does not have access to. A 404 is returned: Either the request method and path supplied do not specify a known action in the API, or the object specified by the request does not exist. A 500 is returned: There was a problem on Asana’s end. In the event of a server error the response body should contain an error phrase. These phrases can be used by Asana support to quickly look up the incident that caused the server error. Some errors are due to server load, and will not supply an error phrase.