---
metadata:
  - name: generator
    content: Diplodoc Platform v5.47.3
alternate:
  - https://yandex.com.tr/support/tracker/en/api-ref/issues/get-worklog.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/support/tracker/en/llms.txt

# Selecting records by parameters

Use this request to fetch data about the time spent by a specific user or during a certain period. You can make a `GET` or `POST `request.

<div class="request_example method_get yfm-clipboard">
    <p>GET</p>
    <pre><code>https://api.tracker.yandex.net/v3/worklog?createdBy=&lt;user_login_or_ID>&amp;createdAt=from:&lt;start>&amp;createdAt=to:&lt;end></code></pre>
    <button class="yfm-clipboard-button"><svg width="16" height="16" viewBox="0 0 24 24" class="yfm-clipboard-icon" data-animation="15">
    <path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path>
    <path stroke="currentColor" fill="transparent" strokewidth="1.5" d="M9.5 13l3 3l5 -5" visibility="hidden">
        <animate id="visibileAnimation-15" attributeName="visibility" from="hidden" to="visible" dur="0.2s" fill="freeze" begin=""></animate>
        <animate id="hideAnimation-15" attributeName="visibility" from="visible" to="hidden" dur="1s" begin="visibileAnimation-15.end+1" fill="freeze"></animate>
    </path>
</svg>
</button>
</div>

<!-- source: en/_assets/style/methods.md -->

<!-- endsource: en/_assets/style/methods.md -->

## GET request format {#GET}

To get records of time spent, use the HTTP `GET` request:

```json
GET /v3/worklog?createdBy=<user_login_or_ID>&createdAt=from:<start>&createdAt=to:<end>
Host: api.tracker.yandex.net
Authorization: OAuth <OAuth_token>
X-Org-ID or X-Cloud-Org-ID: <organization_ID>
```

<!-- source: en/_includes/api/headings.md -->
{% cut "Headers" %}

* `Host`: address of the node that provides the API.

* <!-- source: en/_includes/api/authorization.md -->
  `Authorization`: Authorization token about these formats:

    - `OAuth <OAuth_token>`: For authorization using the OAuth 2.0 protocol. [Learn more](https://yandex.com.tr/support/tracker/en/api-ref/access.md#about_OAuth)

    - `Bearer <IAM_token>`: For authorization using an IAM token, if a Yandex Cloud Organization organization is linked to Tracker. [Learn more](https://yandex.com.tr/support/tracker/en/api-ref/access.md#iam-token)
  <!-- endsource: en/_includes/api/authorization.md -->


* <!-- source: en/_includes/api/org-id.md -->
  `X-Org-ID` or `X-Cloud-Org-ID`: Organization ID.

  - Use the `X-Org-ID` header if a Tracker organization is linked to Yandex 360 for Business.

  - Use the `X-Cloud-Org-ID` header if a Tracker organization is linked to Yandex Cloud Organization.

  To get the organization ID, go to **Administration** → [**Organizations**](https://tracker.yandex.com/admin/orgs) and copy the value from the **ID** field. {#find-id}
  <!-- endsource: en/_includes/api/org-id.md -->


{% endcut %}
<!-- endsource: en/_includes/api/headings.md -->

{% cut "Request parameters" %}

**Additional parameters**

| Parameter | Description | Data type |
-------- | -------- | ----------
| createdBy | ID or username of the record author. This is an optional parameter. | String |
| createdAt=from | Start of the time interval during which the records were created, in ```YYYY-MM-DDThh:mm:ss.sss±hhmm```format.</br>This is an optional parameter. When using this parameter, specify the `createdBy` value. | String |
| createdAt=to | End of the time interval during which the records were created, in ```YYYY-MM-DDThh:mm:ss.sss±hhmm```format.</br>This is an optional parameter. When using this parameter, specify the `createdBy` value. | String |

{% endcut %}

## POST request format {#POST}

To get records of time spent, use an HTTP `POST` request:

```json
POST /v3/worklog/_search
Host: api.tracker.yandex.net
Authorization: OAuth <OAuth_token>
X-Org-ID or X-Cloud-Org-ID: <organization_ID>

{
  "createdBy": "veikus",
  "createdAt": {
    "from": "2018-06-06T08:42:15.258",
    "to": "2018-06-06T08:42:20.258"
  }
}
```

<!-- source: en/_includes/api/headings.md -->
{% cut "Headers" %}

* `Host`: address of the node that provides the API.

* <!-- source: en/_includes/api/authorization.md -->
  `Authorization`: Authorization token about these formats:

    - `OAuth <OAuth_token>`: For authorization using the OAuth 2.0 protocol. [Learn more](https://yandex.com.tr/support/tracker/en/api-ref/access.md#about_OAuth)

    - `Bearer <IAM_token>`: For authorization using an IAM token, if a Yandex Cloud Organization organization is linked to Tracker. [Learn more](https://yandex.com.tr/support/tracker/en/api-ref/access.md#iam-token)
  <!-- endsource: en/_includes/api/authorization.md -->


* <!-- source: en/_includes/api/org-id.md -->
  `X-Org-ID` or `X-Cloud-Org-ID`: Organization ID.

  - Use the `X-Org-ID` header if a Tracker organization is linked to Yandex 360 for Business.

  - Use the `X-Cloud-Org-ID` header if a Tracker organization is linked to Yandex Cloud Organization.

  To get the organization ID, go to **Administration** → [**Organizations**](https://tracker.yandex.com/admin/orgs) and copy the value from the **ID** field. {#find-id}
  <!-- endsource: en/_includes/api/org-id.md -->


{% endcut %}
<!-- endsource: en/_includes/api/headings.md -->

{% cut "Request body parameters" %}

| Parameter | Description | Data type |
-------- | -------- | ----------
| createdBy | ID or username of the record author. This is an optional parameter. | String |
| [createdAt](#createdAt) | Object with information about the record creation date and time. This is an optional parameter. | Map item |

`createdAt` **object fields** {#createdAt}

| Parameter | Description | Data type |
-------- | -------- | ----------
| from | Start of the time interval during which the records were created, in ```YYYY-MM-DDThh:mm:ss.sss±hhmm``` format | String |
| to | End of the time interval during which the records were created, in ```YYYY-MM-DDThh:mm:ss.sss±hhmm``` format | String |

{% endcut %}

## Response format {#answer}

{% list tabs %}

- Request executed successfully

    <!-- source: en/_includes/api/answer-200.md -->
    If the request is successful, the API returns a response with code `200 OK`.
    <!-- endsource: en/_includes/api/answer-200.md -->

    The response body contains a JSON array with records about the time spent, which were selected according to the specified parameters.

    ```json
    [
    {
      "self": "https://api.tracker.yandex.net/v3/issues/TEST-324/worklog/1",
      "id": 1,
      "version": 1402121720882,
      "issue": {
        "self": "https://api.tracker.yandex.net/v3/issues/TEST-324",
        "id": "515ec9eae4b09cfa********",
        "key": "TEST-324",
        "display": "important issue"
      },
      "comment": "important comment",
      "createdBy": {
        "self": "https://api.tracker.yandex.net/v3/users/66********",
        "id": "veikus",
        "display": "Artem Veikus"
      },
      "updatedBy": {
        "self": "https://api.tracker.yandex.net/v3/users/66********",
        "id": "veikus",
        "display": "Artem Veikus"
      },
      "createdAt": "2018-06-06T08:42:06.258+0000",
      "updatedAt": "2018-06-06T08:42:06.258+0000",
      "start": "2018-06-06T08:41:58.000+0000",
      "duration": "P3W"
     },
      ...
    ]
    ```

    {% cut "Response parameters" %}

    | Parameter | Description | Data type |
    -------- | -------- | ----------
    | self | Address of the API resource with a record of the time spent on the issue. | String |
    | id | ID of the record of time spent. | String |
    | version | Record version. Each change to the record increases its version number. | String |
    | [issue](#issue) | Block with issue details. | Map item |
    | comment | Text of the comment to the record. The comment is saved to the Time Spent report. | String |
    | [createdBy](#createdBy) | Object with information about the record author. | Map item |
    | [updatedBy](#updatedBy) | Object with information about the user who updated the record last. | Map item |
    | createdAt | Record creation date and time in ```YYYY-MM-DDThh:mm:ss.sss±hhmm``` format | String |
    | updatedAt | Record update date and time in ```YYYY-MM-DDThh:mm:ss.sss±hhmm``` format | String |
    | start | Date and time when work on the issue started, in ```YYYY-MM-DDThh:mm:ss.sss±hhmm``` format | String |
    | duration | Time spent, in ```PnYnMnDTnHnMnS, PnW``` format, according to the [ISO 8601](http://dotat.at/tmp/ISO_8601-2004_E.pdf) | String |

    ##### `issue` object fields {#issue}

    | Parameter | Description | Data type |
    -------- | -------- | ----------
    | self | Address of the API resource with information about the issue. | String |
    | id | Issue ID. | String |
    | key | Issue key. | String |
    | display | Issue name displayed. | String |

    `createdBy` **object fields** {#createdBy}

    | Parameter | Description | Data type |
    -------- | -------- | ----------
    | self | Address of the API resource with information about the user | String |
    | id | User ID. | String |
    | display | Displayed user name | String |

    `updatedBy` **object fields** {#updatedBy}

    | Parameter | Description | Data type |
    -------- | -------- | ----------
    | self | Address of the API resource with information about the user | String |
    | id | User ID. | String |
    | display | Displayed user name | String |

    {% endcut %}

- Request failed

    If the request is processed incorrectly, the API returns a message with error details:

    <!-- source: en/_includes/api/answer-error-400.md -->
    400
    :   One or more request parameters have an invalid value.
    <!-- endsource: en/_includes/api/answer-error-400.md -->

    <!-- source: en/_includes/api/answer-error-403.md -->
    403
    :   You are not authorized to perform this action. You can check what rights you have in the Tracker interface. The same rights are required to perform an action via the API and interface.
    <!-- endsource: en/_includes/api/answer-error-403.md -->

    <!-- source: en/_includes/api/answer-error-404.md -->
    404
    :   The requested object was not found. You may have specified an invalid object ID or key.
    <!-- endsource: en/_includes/api/answer-error-404.md -->

    <!-- source: en/_includes/api/answer-error-500.md -->
    500
    :   Internal service error. Try again later.
    <!-- endsource: en/_includes/api/answer-error-500.md -->

    <!-- source: en/_includes/api/answer-error-503.md -->
    503
    :   The API service is temporarily unavailable.
    <!-- endsource: en/_includes/api/answer-error-503.md -->

{% endlist %}
