curl --request POST \
--header "XF-Api-Key: $FORUM_API_KEY" \
--header 'Accept: application/json' \
--data-urlencode 'type=up' \
'https://forum.arzguard.com/api/posts/123/vote'
{
"success": true,
"action": "insert"
}
Сообщения
Голос за сообщение
Добавляет или снимает голос за сообщение, если его тип поддерживает голосование.
POST
/
api
/
posts
/
{id}
/
vote
curl --request POST \
--header "XF-Api-Key: $FORUM_API_KEY" \
--header 'Accept: application/json' \
--data-urlencode 'type=up' \
'https://forum.arzguard.com/api/posts/123/vote'
{
"success": true,
"action": "insert"
}
Добавляет или снимает голос за сообщение, если его тип поддерживает голосование.
Обязательные scopes:
Тело запроса:
Доступ
В каждом запросе обязателен заголовокXF-Api-Key. Примеры используют серверную переменную $FORUM_API_KEY; тип ключа и контекст пользователя определяют доступ к данным.
string
required
Ключ API. Храните его на сервере интеграции; в примере используется переменная окружения.
thread:write.
Особенности
Голосование должно поддерживаться данным содержимым; отрицательный голос дополнительно требует поддержкиdown и соответствующего права. Повторный голос того же направления снимает его. action сообщает результат, а итоговые счётчики в этом ответе не возвращаются.
Параметры
integer
required
ID сообщения. Значение
123 в примере условное.string
required
Направление голоса:
up или down. Повторная передача текущего направления снимает голос.application/x-www-form-urlencoded. Данные передаются в UTF-8.
Успешный ответ
HTTP200. Пример ниже сокращён и содержит только условные данные. Полные объекты и условия видимости полей описаны в схемах данных.
| Поле | Тип | Описание |
|---|---|---|
success | true | true, если действие выполнено успешно. |
action | string | insert — действие добавлено; delete — существующая реакция или голос сняты. |
Ошибки
Стандартный ответ содержит массивerrors с code, message и params. Проверяйте HTTP-статус и машинный код; формат и обработка ошибок общие для API.
curl --request POST \
--header "XF-Api-Key: $FORUM_API_KEY" \
--header 'Accept: application/json' \
--data-urlencode 'type=up' \
'https://forum.arzguard.com/api/posts/123/vote'
{
"success": true,
"action": "insert"
}