> ## 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.

# Создать тему

> Создаёт тему и первое сообщение в выбранном разделе.

Создаёт тему и первое сообщение в выбранном разделе.

## Доступ

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

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

Ключ API. Храните его на сервере интеграции; в примере используется переменная окружения.

Обязательные scopes: `thread:write`.

## Особенности

Guard Forum использует MultiPrefix: передавайте `sv_prefix_ids[]` либо запасной `prefix_id[]`, а не скалярный `prefix_id`. В ответе объект темы содержит `sv_prefix_ids` — массив ID. Подробнее: [расширения Guard Forum](/guard-forum/extensions).

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

## Параметры

**node\_id** `integer` *required*

ID раздела, в котором создаётся тема.

**title** `string` *required*

Заголовок темы.

**message** `string` *required*

Текст сообщения. Проверяется правилами и ограничениями выбранного типа содержимого.

**discussion\_type** `string`

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

**tags** `string[]`

Массив названий тегов. В форме передавайте повторяющиеся `tags[]`.

**custom\_fields\[\<name>]** `string`

Значение пользовательского поля с указанным именем. Замените `<name>` реальным ключом, например `custom_fields[example]`.

**discussion\_open** `boolean`

Открыта ли тема для ответов. Изменение применяется при наличии права закрывать и открывать тему.

**sticky** `boolean`

Закрепить ли тему в разделе. Применяется при наличии соответствующего права.

**attachment\_key** `string`

Ключ подготовленных вложений с типом `post` и контекстом `context[node_id]`, равным ID целевого раздела.

**sv\_prefix\_ids\[]** `integer[]`

Массив ID префиксов Guard Forum. Передавайте повторяющиеся `sv_prefix_ids[]`. Имеет приоритет над запасным параметром `prefix_id[]`; применяются проверки доступности и лимитов префиксов.

**prefix\_id\[]** `integer[]`

Запасной массив ID префиксов, если `sv_prefix_ids` не передан. Для создания и редактирования темы Guard Forum используйте массив, а не одиночное число.

**allow\_uncreatable\_type** `boolean`

Особая возможность типа обсуждения: разрешить тип, недоступный для обычного создания. Действует только при явно включённом обходе прав Super user key; в обычном запросе оставьте выключенным.

Тело запроса: `application/x-www-form-urlencoded`. Данные передаются в UTF-8.

## Успешный ответ

HTTP `200`. Пример ниже сокращён и содержит только условные данные. Полные объекты и условия видимости полей описаны в [схемах данных](/guard-forum/models).

| Поле | Тип | Описание |
| - | - | - |
| `success` | `true` | `true`, если действие выполнено успешно. |
| `thread` | `Thread` | Объект темы `Thread`. |

## Ошибки

Стандартный ответ содержит массив `errors` с `code`, `message` и `params`. Проверяйте HTTP-статус и машинный код; [формат и обработка ошибок](/guard-forum/requests-and-errors) общие для API.

Документированные для этого метода коды: `no_permission`. Это не исчерпывающий список возможных ошибок проверки данных и прав.

```bash cURL theme={null}
curl --request POST \
  --header "XF-Api-Key: $FORUM_API_KEY" \
  --header 'Accept: application/json' \
  --data-urlencode 'node_id=123' \
  --data-urlencode 'title=Пример темы' \
  --data-urlencode 'message=Пример сообщения' \
  --data-urlencode 'sv_prefix_ids[]=1' \
  'https://forum.arzguard.com/api/threads/'
```

```json Сокращённый условный ответ theme={null}
{
  "success": true,
  "thread": {
    "thread_id": 123,
    "sv_prefix_ids": [
      1
    ]
  }
}
```


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