> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arzguard.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Загрузить вложение

> Загружает файл в набор вложений, связанный с ранее созданным ключом.

Загружает файл в набор вложений, связанный с ранее созданным ключом.

Сначала создайте ключ через [POST /attachments/new-key](/guard-forum/api/post-attachments-new-key). Создатель ключа и текущий API-пользователь должны совпадать; иначе возвращается `attachment_key_user_wrong`. Затем передайте этот ключ в метод создания или изменения сообщения как `attachment_key`.

## Доступ

Передавайте `XF-Api-Key` в заголовке каждого запроса. [Типы ключей и выбор пользователя](/guard-forum/authentication).

Требуемые scopes: `attachment:write`. Все перечисленные разрешения нужны одновременно.

Права текущего API-пользователя проверяются отдельно от scopes. Для Super key контекст задаётся заголовком `XF-Api-User`.

## Параметры

**XF-Api-Key** `string` *required*

Секретный API-ключ. В примерах ключ берётся из серверной переменной `$FORUM_API_KEY`.

Тело запроса: `multipart/form-data`. Вложенные значения передавайте в форме с квадратными скобками в имени поля.

**key** `string` *required*

Секретный ключ набора временных вложений, полученный через `POST /attachments/new-key`. Это не API-ключ из заголовка.

**attachment** `file` *required*

Файл вложения. Передаётся файловой частью `multipart/form-data`.

## Ответ

HTTP `200`, JSON. [Схемы объектов и условные поля](/guard-forum/models).

**attachment** `Attachment`

Описание успешно загруженного вложения.

Ошибки возвращаются в общей структуре `errors`. Обрабатывайте поле `code`; текст `message` может меняться или переводиться. [Формат ошибок](/guard-forum/requests-and-errors).

```bash cURL theme={null}
curl --request POST 'https://forum.arzguard.com/api/attachments/' \
  --header "XF-Api-Key: $FORUM_API_KEY" \
  --form 'key=EXAMPLE_ATTACHMENT_KEY' \
  --form 'attachment=@/path/to/example.txt'
```

```json 200 · условный пример theme={null}
{
  "attachment": {
    "attachment_id": 123,
    "filename": "example.txt"
  }
}
```

Примеры сокращены и содержат только условные значения. Состав полей объектов зависит от прав, контекста и установленных дополнений.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.