---
metadata:
  - name: generator
    content: Diplodoc Platform v5.47.3
alternate:
  - https://yandex.com.tr/support/tracker/en/api-ref/import/import-attachments.md
title: How to import files
description: This article describes how to import files.
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/support/tracker/en/llms.txt


# Importing files

Use this request to import files attached to an issue and its comments into Tracker.

<div class="request_example method_post yfm-clipboard">
    <p>POST</p>
    <pre><code>https://api.tracker.yandex.net/v3/issues/&lt;issue_ID>/attachments/_import?filename=&lt;filename>&amp;createdAt=&lt;createdAt>&amp;createdBy=&lt;createdBy></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 -->

{% note warning "" %}

This request can only be made by an [administrator](https://yandex.com/support/tracker/role-model.html).

{% endnote %}

## Query format {#query}

To import a file, use an HTTP `POST` request. Provide the file in the request body using `multipart/form-data`[RFC-7578](https://tools.ietf.org/html/rfc7578). The file size may not exceed 1024 Mbit.

{% list tabs %}

- Attach a file to an issue

    ```json
    POST /v3/issues/<issue_ID>/attachments/_import?filename=<filename>&createdAt=<createdAt>&createdBy=<createdBy>
    Host: api.tracker.yandex.net
    Authorization: OAuth <OAuth_token>
    X-Org-ID or X-Cloud-Org-ID: <organization_ID>
    Content-Type: multipart/form-data
    <file>
    ```
    <!-- source: en/_includes/api/headings-content-multi-data.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 -->


    - **Content-Type**

        Request body format. The required value is `multipart/form-data`.

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

    {% cut "Resource" %}

    | Parameter | Description | Data type |
    --- | --- | ---
    | \<issue_ID\> | Key of the issue to attach the file to. | String |
    | \<comment_ID\> | ID of the comment to attach the file to. | String |

    {% endcut %}

    {% cut "Request parameters" %}

    **Required parameters**

    | Parameter | Description | Data type |
    --- | --- | ---
    | filename | File name, no more than 255 characters. | String |
    | createdAt | Date and time when the file is attached, in `YYYY-MM-DDThh:mm:ss.sss±hhmm` format. You can specify any value in the interval from the issue's creation time to its latest update. | String |
    | createdBy | Username or ID of the user who attached the file. | String |

    {% endcut %}

    {% cut "Request body parameters" %}

    **Required parameters**

    | Parameter | Description | Data type |
    --- | --- | ---
    | file_data | Uploaded file. The file size may not exceed 1024 Mbit. | String |

    {% endcut %}

- Attach a file to a comment

    ```json
    POST /v3/issues/<issue_ID>/comments/<comment_ID>/attachments/_import?filename={filename}&createdAt={createdAt}&createdBy={createdBy}
    Host: api.tracker.yandex.net
    Authorization: OAuth <OAuth_token>
    X-Org-ID or X-Cloud-Org-ID: <organization_ID>
    Content-Type: multipart/form-data
    <file>
    ```

    <!-- source: en/_includes/api/headings-content-multi-data.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 -->


    - **Content-Type**

        Request body format. The required value is `multipart/form-data`.

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

    {% cut "Resource" %}

    | Parameter | Description | Data type |
    --- | --- | ---
    | \<issue_ID\> | Key of the issue to attach the file to. | String |
    | \<comment_ID\> | ID of the comment to attach the file to. | String |

    {% endcut %}

    {% cut "Request parameters" %}

    **Required parameters**

    | Parameter | Description | Data type |
    --- | --- | ---
    | filename | File name, no more than 255 characters. | String |
    | createdAt | Date and time when the file is attached, in `YYYY-MM-DDThh:mm:ss.sss±hhmm` format. You can specify any value in the interval from the issue's creation time to its latest update. | String |
    | createdBy | Username or ID of the user who attached the file. | String |

    {% endcut %}

    {% cut "Request body parameters" %}

    **Required parameters**

    | Parameter | Description | Data type |
    --- | --- | ---
    | \<file\> | Uploaded file. The file size may not exceed 1024 Mbit. | String |

    {% endcut %}

{% endlist %}

## 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 the parameters of the attached file in JSON format:

    ```json
	{
	  "self": "https://api.tracker.yandex.net/v3/issues/JUNE-2/attachments/123",
      "id" : "123",
      "name" : "pic.png",
      "content" : "https://api.tracker.yandex.net/v3/issues/JUNE-2/attachments/123/pic.png",
      "thumbnail" : "https://api.tracker.yandex.net/v3/issues/JUNE-2/thumbnails/123",
	  "createdBy" : {
		"self": "https://api.tracker.yandex.net/v3/users/12********",
		"id" : "12********",
		"display" : "<displayed_employee_name>"
	  },
	  "createdAt" : "2017-06-11T05:16:01.339+0000",
	  "mimetype" : "image/png",
	  "size" : 5678
	  "metadata" : {
		"size" : "128x128"
	  }
	}
    ```

    {% cut "Response parameters" %}

    | Parameter | Description | Data type |
    -------- | -------- | ----------
    | self | Address of the API resource corresponding to the attached file | String |
    | id | File's unique ID. | String |
    | name | File name | String |
    | content | Address of the resource to download the file from | String |
    | thumbnail | Address of the resource to download the preview thumbnail from; available for image files only | String |
    | [createdBy](#createdBy) | Object with information about the user who attached the file | JSON object |
    | createdAt | Date and time when the file is uploaded, in <br/>```YYYY-MM-DDThh:mm:ss.sss±hhmm``` format | String |
    | mimetype | File type, for example:<ul><li>`text/plain`: Text file</li><li>`image/png`: Image in PNG format</li></ul> | String |
    | size | File size in bytes | Integer |
    | [metadata](#metadata) | Object with file metadata | JSON object |

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

    | Parameter | Description | Data type |
    -------- | -------- | ----------
    | self | Address of the resource corresponding to the user who uploaded the file. | String |
    | id | User's login. | String |
    | display | User's name (as in the interface). | String |


    `metadata` **object fields** {#metadata}

    | Parameter | Description | Data type |
    -------- | -------- | ----------
    | size | Image size in pixels | 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-413.md -->
    413
    :   The file size exceeds 1024 Mb.
    <!-- endsource: en/_includes/api/answer-error-413.md -->

    <!-- source: en/_includes/api/answer-error-422.md -->
    422
    :   JSON validation error, the request is rejected.
    <!-- endsource: en/_includes/api/answer-error-422.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 %}