# Файлы в заказах

[Как работать с файлами ATI.SU](https://ati.su/developers/raw/api/filer.md)

### Методы для работы с файлами в Заказах

#### Прикрепление данных файла к Заказу

<a id="post-v1.2-orders-files-info"></a>

Добавление данных файла к заказу

**Пример запроса (curl):**

```bash
curl 'https://api.ati.su/v1.2/orders/files/info' \
  -X 'POST' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "deal_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "file_info": {
    "file_id": "string",
    "file_name": "string"
  },
  "file_type": {}
}'
```

**OpenAPI схема:** [JSON](https://ati.su/developers/raw/api/orders/files.openapi.json)

**Описание полей запроса**
- `deal_id` — ID заказа
- `file_info` — Данные о загруженном файле
- `file_info.file_id` — Id файла
- `file_info.file_name` — Название файла
- `file_type` — Тип файла

**Пример ответа (200)**

```json
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "storage_file_id": "string",
  "access": {},
  "add_date": "1970-01-01T00:00:00.000Z",
  "deal_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "is_counterparty_file": false,
  "file_name": "string",
  "size": 0,
  "link": "string",
  "file_id": "string",
  "source_type": {},
  "source_file_type": {},
  "file_type": {},
  "timeslots_warehouse_ids": [
    0
  ]
}
```

**Описание полей ответа**
- `id` — Id файла
- `storage_file_id` — Id файла в хранилище
- `access` — Доступ к файлу * `0` — только загрузивший файл * `1` — обе стороны * `2` — загрузивший файл и водитель * `3` — доступен обеим сторонам и водителю
- `add_date` — Время загрузки файла
- `deal_id` — Id связанного Заказа
- `is_counterparty_file` — Файл контрагента
- `file_name` — Имя файла
- `size` — Размер файла
- `link` — Ссылка на файл
- `file_id` — ID файла
- `source_type` — Источник файла * `0` — Загружен в заказ * `1` — Скопирован из груза * `2` — Скопирован из данных о водителе * `3` — Скопироване из данных о грузовике * `4` — Скопирован из данных о прицепе * `5` — Скопирован из данных о полуприцепе * `6` — Скопирован из данных о тягаче * `7` — Загружен для Ати-водителя
- `source_file_type` — Тип загруженного файла * `0` — Обычный файл * `1` — Водительское удостоверение * `2` — Паспорт водителя * `3` — Техпаспорт ТС * `4` — Пластик * `5` — Фото ТС
- `file_type` — Тип файла * `0` — Другой документ * `1` — Товарно-транспортная накладная * `2` — Товарная накладная * `3` — Транспортная накладная * `4` — Накладная * `5` — Счет-фактура * `6` — Счет на оплату * `7` — Платежное поручение * `8` — Акт выполненных работ * `9` — Заявка * `10` — Заявка (к договору) * `11` — Заказ * `12` — Договор * `13` — Доп. соглашение (к договору) * `14` — Доверенность * `15` — Поручение экспедитору * `16` — Информационное письмо * `17` — Документ о происшествии с грузом/ТС
- `timeslots_warehouse_ids` — Список складов с Временными окнами с доступом к файлу

**Пример ответа (4XX)**

```json
{
  "reason": "string",
  "error": "string"
}
```

**Описание полей ответа**
- `reason` — Причина ошибки
- `error` — Ключ ошибки


#### Удаление приложенного файла Заказа

<a id="delete-v1.2-orders-files-{fileId}"></a>

Удаление приложенного файла заказа

**Пример запроса (curl):**

```bash
curl 'https://api.ati.su/v1.2/orders/files/3fa85f64-5717-4562-b3fc-2c963f66afa6' \
  -X 'DELETE' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: application/json'
```

**OpenAPI схема:** [JSON](https://ati.su/developers/raw/api/orders/files.openapi.json)

**Пример ответа (4XX)**

```json
{
  "reason": "string",
  "error": "string"
}
```

**Описание полей ответа**
- `reason` — Причина ошибки
- `error` — Ключ ошибки


#### Настройка доступа к файлу Заказа

<a id="put-v1.2-orders-files-{fileId}-access"></a>

Настройка доступа к файлу заказа

**Пример запроса (curl):**

```bash
curl 'https://api.ati.su/v1.2/orders/files/3fa85f64-5717-4562-b3fc-2c963f66afa6/access' \
  -X 'PUT' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "access": {},
  "timeslots_warehouse_ids": [
    0
  ]
}'
```

**OpenAPI схема:** [JSON](https://ati.su/developers/raw/api/orders/files.openapi.json)

**Описание полей запроса**
- `access` — Доступ к файлу
- `timeslots_warehouse_ids` — Список складов с Временными окнами с доступом к файлу

**Пример ответа (200)**

```json
{}
```

**Пример ответа (4XX)**

```json
{
  "reason": "string",
  "error": "string"
}
```

**Описание полей ответа**
- `reason` — Причина ошибки
- `error` — Ключ ошибки


