#Контекст сообщения
GET /v1/bots/:botId/messages/:messageId/context
Возвращает окно сообщений вокруг указанного. Используется для анализа истории диалога — например, чтобы понять контекст входящего сообщения. Доступно только для ботов типа personal и supervisor.
#Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
botId (path) |
number | да | ID бота |
messageId (path) |
number | да | ID центрального сообщения |
range (query) |
number | нет | Количество сообщений в каждую сторону от центрального (1-50). По умолчанию 50 |
#Примеры
#curl — личный ключ
curl "https://vibecode.bitrix24.tech/v1/bots/42/messages/1501/context?range=20" \
-H "X-Api-Key: YOUR_API_KEY"
#curl — OAuth-приложение
curl "https://vibecode.bitrix24.tech/v1/bots/42/messages/1501/context?range=20" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
#JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/bots/42/messages/1501/context?range=20', {
headers: {
'X-Api-Key': 'YOUR_API_KEY',
},
})
const { success, data } = await res.json()
console.log('Сообщений:', data.messages.length)
console.log('Есть ещё до:', data.hasPrevPage)
console.log('Есть ещё после:', data.hasNextPage)
#JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/bots/42/messages/1501/context?range=20', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { success, data } = await res.json()
#Поля ответа
| Поле | Тип | Описание |
|---|---|---|
messages |
array | Массив сообщений вокруг центрального |
messages[].id |
number | ID сообщения |
messages[].chatId |
number | ID чата |
messages[].authorId |
number | ID автора |
messages[].date |
string | Дата отправки (ISO 8601) |
messages[].text |
string | Текст сообщения |
hasPrevPage |
boolean | Есть ещё сообщения до окна |
hasNextPage |
boolean | Есть ещё сообщения после окна |
#Пример ответа
{
"success": true,
"data": {
"messages": [
{
"id": 1499,
"chatId": 123,
"authorId": 3,
"date": "2026-03-31T09:58:00+03:00",
"text": "Коллеги, есть вопрос по задаче"
},
{
"id": 1500,
"chatId": 123,
"authorId": 1,
"date": "2026-03-31T09:59:00+03:00",
"text": "Давай обсудим"
},
{
"id": 1501,
"chatId": 123,
"authorId": 1,
"date": "2026-03-31T10:00:00+03:00",
"text": "Привет, бот!"
}
],
"hasPrevPage": true,
"hasNextPage": false
}
}
#Пример ответа при ошибке
502 — бот не имеет доступа:
{
"success": false,
"error": {
"code": "BITRIX_ERROR",
"message": "Access denied"
}
}
#Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | INVALID_BOT_ID |
botId не является числом |
| 404 | BOT_NOT_FOUND |
Бот с таким ID не найден |
| 403 | BOT_ACCESS_DENIED |
Бот принадлежит другому API-ключу |
| 502 | BITRIX_ERROR |
Ошибка Bitrix24 (текст ошибки в message) |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа imbot |
| 401 | TOKEN_MISSING |
API-ключ не имеет настроенных токенов |
Полный список общих ошибок API — Ошибки.
#Известные особенности
Только personal и supervisor: как и GET /messages/:messageId, метод доступен только для ботов типа personal и supervisor.
Пагинация: hasPrevPage и hasNextPage указывают, есть ли сообщения за пределами окна. Для полного обхода можно использовать крайние id из messages как новый messageId.
#Смотрите также
- Получить сообщение — получение одного сообщения по ID
- Прочитать сообщения — пометить как прочитанные
- События — получение входящих сообщений
- Бот-платформа — обзор, быстрый старт
- Лимиты и оптимизация — rate limits платформы