REST API Voice: JSON по HTTPS на https://voice-chat.ru/api. Здесь описаны методы, доступные ботам и сайтам; остальное API — внутреннее для приложений Voice и может меняться.
Авторизация
| Заголовок | Кто | Что доступно |
|---|---|---|
Authorization: Bot vbt_… | Бот | Методы с пометкой Bot |
Authorization: Bearer vat_… | Сайт через Voice ID | Методы с пометкой Bearer — в пределах выданных прав (scope) |
curl https://voice-chat.ru/api/users/@me -H "Authorization: Bot $VOICE_TOKEN"Формат
- Тела запросов и ответов — JSON (
Content-Type: application/json), кроме загрузки файлов (multipart) и/oauth2/token(form-urlencoded). - Идентификаторы — строки с префиксом:
u_пользователь,s_сервер,c_канал,r_роль,m_сообщение,dm_личная беседа. ID приложений и команд — числовые строки. - Время — миллисекунды Unix (createdAt, editedAt, joinedAt); в карточках (embeds) — ISO 8601.
- Права — десятичная строка битовой маски, см. Права.
- Ошибки — HTTP-код и
{ "error": "текст" }, иногда сcode. См. Ошибки. - Ответы API не кэшируются (
Cache-Control: no-store). При 429 смотритеRetry-After— Лимиты.
Основные объекты
Пользователь (публичный)
{
"id": "u_…",
"username": "alice",
"displayName": "Алиса",
"avatar": "/uploads/avatars/….webp", // относительные адреса — от https://voice-chat.ru
"banner": null,
"bio": "…",
"status": "online",
"customStatus": null,
"createdAt": 1767225600000,
"bot": true, // только у ботов
"botAppId": "1790…"
}Сообщение
{
"id": "m_…",
"channelId": "c_…",
"authorId": "u_…",
"content": "Привет!",
"attachments": [{ "url": "/uploads/attachments/….png", "name": "cat.png", "contentType": "image/png", "size": 48213 }],
"replyTo": null,
"mentions": ["u_…"],
"editedAt": null,
"pinned": false,
"type": "default",
"createdAt": 1767225600000,
"reactions": [{ "emoji": "👍", "count": 2, "me": false }],
"embeds": [ … ], // если есть
"components": [ … ], // если есть
"interaction": { "id": "…", "name": "ping", "userId": "u_…" } // ответ на команду
}Разделы
| Раздел | Методы |
|---|---|
| Пользователи | Кто я, профиль пользователя, мои серверы |
| Серверы | Каналы, роли, участники |
| Сообщения | История, поиск, отправка, правка, реакции, закрепление |
| Личные сообщения | Беседы бота с людьми |
| Команды | Команды «/» бота |
| Взаимодействия | Ответы на команды и кнопки |
| Файлы | Загрузка вложений |
| Вебхуки | Сообщения по адресу вебхука |
| OAuth2 | Voice ID: токены, userinfo, ключи |