Введение
SupportHub REST API — это HTTP-интерфейс, через который внешние системы (CRM, боты, мобильные приложения, ваши собственные сервисы) создают тикеты, отправляют и читают сообщения, работают с контактами и получают события проекта.
Когда что использовать
- REST API — серверная интеграция: подключить CRM, бота или собственный канал, программно создавать тикеты и писать в них.
- Виджет для сайта — чат на сайте без написания своего клиента: один script-тег.
- Webhooks — SupportHub сам присылает события на ваш публичный URL (push).
- Long polling
/updates— когда публичного URL нет (например, бот за NAT): вы сами забираете события, как в Telegram getUpdates.
Базовый URL
https://api.support.forestsnet.com/api/v1204 без тела. Даты — ISO 8601 по UTC; в объектах тикетов, сообщений и контактов они приходят без указания пояса (2026-04-06T10:12:33.123456) — читайте их как UTC. Идентификаторы объектов — UUID в виде строки.Что есть в API
Все пути ниже — относительно базового URL. Каждый запрос нужно подписать API-ключом (см. Аутентификация).
| Тикеты | GET /tickets POST /tickets GET /tickets/{id} PATCH /tickets/{id} POST /tickets/{id}/close POST /tickets/{id}/reopen POST /tickets/{id}/rate GET /contacts/{id}/tickets |
| Сообщения | GET /tickets/{id}/messages POST /tickets/{id}/messages PATCH /messages/{id} POST /messages |
| Контакты | GET /contacts GET /contacts/{id} POST /contacts |
| Файлы | POST /media/upload GET /media/{id} |
| События | GET /updates |
| Webhooks | GET /webhooks POST /webhooks PATCH /webhooks/{id} DELETE /webhooks/{id} POST /webhooks/{id}/test |
| База знаний (опубликованные публичные статьи, чтение) | GET /kb/categories GET /kb/categories/{id} GET /kb/articles GET /kb/articles/{id} GET /kb/search?q= |
| Проект | GET /workspace/settings GET /widget/signing-secret |
GET /workspace/settings возвращает название, slug и часовой пояс проекта, окно редактирования сообщений и язык. GET /widget/signing-secret отдаёт секрет, которым ваш сервер подписывает токен посетителя виджета.
База знаний отдаёт только опубликованные статьи, открытые клиентам: внутренние статьи через API не видны. Если база знаний не входит в тариф проекта, эндпоинты отвечают 403 PLAN_FEATURE_UNAVAILABLE. У статьи из GET /kb/articles/{id} два поля с текстом: content_markdown — текст как его написали в редакторе (markdown), content_html — тот же текст в HTML: жирный, курсив, зачёркивание, код, ссылки и списки размечены, переносы строк — это <br>, остальной текст экранирован. Заголовки и таблицы markdown в HTML остаются обычным текстом. Каждое чтение статьи увеличивает view_count.

