# API для работы с файлами, логотипами и аватарками (В доработке)

В данном разделе вы можете найти методы для работы с файлами, логотипами и аватарками фирм и контактов

Максимальный разрешенный размер - 10 Мб
Поддерживаемые форматы: .bmp, .doc, .docx, .gif, .jpeg, .jpg, .odt, .pdf, .png, .pps, .ppsx, .ppt, .pptx, .rar, .rtf, .tif, .tiff, .txt, .xls, .xlsx, .xml, .cer, .crt, .pem, .wmv, .mdi

## Возможности сервиса

- [Работа с логотипами и аватарками](#методы-для-работы-с-аватаркамилоготипам)
- [Работа с файлами](#методы-для-работы-с-файлами)

### Методы для работы с аватарками/логотипам

#### Загрузка логотипа фирмы или аватарки контакта

Загружает логотип фирмы или аватарку контакта

<a id="post-avatars-"></a>

Загружает логотип фирмы или аватарку контакта

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

```bash
curl 'https://api.ati.su/avatars/?account=string' \
  -X 'POST' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: multipart/form-data; boundary=boundary'
```

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

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

```json
{
  "ok": false,
  "url": "string",
  "name": "string"
}
```

**Описание полей ответа**
- `ok` — Идентификатор успешности запроса
- `url` — Ссылка на сохраненный аватар
- `name` — Имя сохраненной аватарки


#### Удаление логотипа фирмы или аватарки контакта

Удаляет логотип фирмы или аватарку контакт

<a id="delete-avatars-"></a>

Удаляет логотип фирмы или аватарку контакта

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

```bash
curl 'https://api.ati.su/avatars/?account=string' \
  -X 'DELETE' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: application/json'
```

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


#### Загрузка логотипа фирмы

Загружает логотип фирмы

<a id="post-avatars-logo"></a>

Загружает логотип фирмы

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

```bash
curl 'https://api.ati.su/avatars/logo' \
  -X 'POST' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: multipart/form-data; boundary=boundary'
```

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

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

```json
{
  "ok": false,
  "url": "string",
  "name": "string"
}
```

**Описание полей ответа**
- `ok` — Идентификатор успешности запроса
- `url` — Ссылка на сохраненный аватар
- `name` — Имя сохраненной аватарки


#### Удаление логотипа фирмы

Удаляет логотип фирмы

<a id="delete-avatars-"></a>

Удаляет логотип фирмы или аватарку контакта

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

```bash
curl 'https://api.ati.su/avatars/?account=string' \
  -X 'DELETE' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: application/json'
```

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


### Методы для работы с файлами

#### Загрузка файла

Сохраняет файл на файловую систему

> Описание тела запроса
>
> ```json
> {
>   "firms": {
>     "type": "string",
>     "description": "Список фирм, имеющих доступ к этому документу"
>   },
>   "rawBody": {
>     "type": "string",
>     "format": "binary",
>     "description": "Тело файла"
>   }
> }
> ```

<a id="post-v1.0-filestorage-files-"></a>

Загрузить файл в хранилище

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

```bash
curl 'https://api.ati.su/v1.0/filestorage/files/' \
  -X 'POST' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: multipart/form-data; boundary=boundary'
```

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

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

```json
{
  "ok": false,
  "result": {
    "id": "string",
    "fileName": "string",
    "size": 0,
    "mimetype": "string",
    "link": "string"
  }
}
```

**Описание полей ответа**
- `ok` — Идентификатор успешности запроса
- `result.id` — Идентификатор файла
- `result.fileName` — Имя файла
- `result.size` — Размер файла в байтах
- `result.mimetype` — Тип файла
- `result.link` — Ссылка на файл для скачивания


#### Загрузка нескольких файлов

Метод позволяет загрузить сразу несколько файлов на файловую систему.

> Описание тела запроса
>
> ```json
> {
>   "firms": {
>     "type": "string",
>     "description": "Список фирм, имеющих доступ к этому документу"
>   },
>   "rawBody": {
>     "type": "array",
>     "items": {
>       "type": "string",
>       "format": "binary",
>       "description": "Список из тел файла"
>     }
>   }
> }
> ```

> Если файл загрузить не удалось, то для него возвращается схема
>
> ```json
> {
>   "error": {
>     "type": "string",
>     "title": "Идентификатор ошибки"
>   },
>   "reason": {
>     "type": "string",
>     "title": "Текст ошибки"
>   },
>   "id": {
>     "type": "string",
>     "title": "Идентификатор файла"
>   }
> }
> ```

<a id="post-v1.0-filestorage-files-multiple"></a>

Загрузить несколько файлов в хранилище

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

```bash
curl 'https://api.ati.su/v1.0/filestorage/files/multiple' \
  -X 'POST' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: multipart/form-data; boundary=boundary'
```

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

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

```json
[
  {
    "ok": false,
    "result": {
      "id": "string",
      "fileName": "string",
      "size": 0,
      "mimetype": "string",
      "link": "string"
    }
  }
]
```


#### Удаление файла

Метод удаляет загруженный файл

<a id="delete-v1.0-filestorage-files-{file_id}-"></a>

Удалить файл

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

```bash
curl 'https://api.ati.su/v1.0/filestorage/files/string/' \
  -X 'DELETE' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: application/json'
```

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


#### Удаление нескольких файлов

Метод позволяет удалить сразу несколько загруженных файлов.

> Если файл удалить не удалось, то для него возвращается схема
>
> ```json
> {
>   "error": {
>     "type": "string",
>     "title": "Идентификатор ошибки"
>   },
>   "reason": {
>     "type": "string",
>     "title": "Текст ошибки"
>   },
>   "id": {
>     "type": "string",
>     "title": "Идентификатор файла"
>   }
> }
> ```

<a id="delete-v1.0-filestorage-files-multiple"></a>

Удалить несколько файлов из хранилища

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

```bash
curl 'https://api.ati.su/v1.0/filestorage/files/multiple' \
  -X 'DELETE' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: application/json' \
  --data-raw '[
  "string"
]'
```

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

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

```json
[
  {
    "ok": false,
    "id": "string"
  }
]
```


#### Получение файла по его ID

Возвращает файл по его file_id

<a id="get-v1.0-filestorage-files-{file_id}-"></a>

Получить файл по его ID

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

```bash
curl 'https://api.ati.su/v1.0/filestorage/files/string/' \
  -X 'GET' \
  -H 'Authorization: Bearer {authorizationToken}' \
  -H 'Content-Type: application/json'
```

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

## llms.txt

Индекс ключевых страниц документации для LLM и AI-агентов доступен в [основном llms.txt](https://ati.su/developers/llms.txt).
