For AI agents: markdown of this page — /docs-content-en/chats/messages/inform.md documentation index — /llms.txt
Notify a recipient in Do Not Disturb
POST /v1/chats/messages/:messageId/inform
Delivers your message to the other member of a personal chat as an important notification while they have Do Not Disturb on. The Bitrix24 account checks the conditions: the chat is personal, you are the message author, the recipient has not seen the message yet, the message is recent, and the recipient has Do Not Disturb on.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
ParametermessageId (path) |
Typenumber | Requiredyes | DescriptionMessage ID, a positive integer — from the chat feed (GET /v1/chats/:dialogId/messages) or from the send response |
The request accepts no body and no query parameters: any field is rejected with 400 INVALID_PARAMS.
Examples
curl — personal key
curl -X POST https://vibecode.bitrix24.com/v1/chats/messages/1002/inform \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth application
curl -X POST https://vibecode.bitrix24.com/v1/chats/messages/1002/inform \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — personal key
const res = await fetch('https://vibecode.bitrix24.com/v1/chats/messages/1002/inform', {
method: 'POST',
headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const body = await res.json()
console.log(body.success ? 'Notification sent' : body.error.b24Code)
JavaScript — OAuth application
const res = await fetch('https://vibecode.bitrix24.com/v1/chats/messages/1002/inform', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const body = await res.json()
console.log(body.success ? 'Notification sent' : body.error.b24Code)
Response fields
| Field | Type | Description |
|---|---|---|
Fieldsuccess |
Typeboolean | DescriptionAlways true on success |
Fielddata.result |
Typeboolean | Descriptiontrue — the notification was sent |
Response example
{
"success": true,
"data": { "result": true }
}
Error response example
422 — the recipient does not have Do Not Disturb on:
{
"success": false,
"error": {
"code": "BITRIX_ERROR",
"message": "INFORM_USER_STATUS_ERROR",
"b24Code": "INFORM_USER_STATUS_ERROR"
}
}
Errors
| HTTP | Code | Description |
|---|---|---|
| HTTP400 | CodeINVALID_PARAMS |
DescriptionmessageId is not a positive integer, or the request has a body field or a query parameter. Checked before any call to Bitrix24 |
| HTTP422 | CodeBITRIX_ERROR |
DescriptionBitrix24 refused with WRONG_CHAT_TYPE in error.b24Code — the chat is not personal |
| HTTP422 | CodeBITRIX_ERROR |
DescriptionBitrix24 refused with INFORM_USER_STATUS_ERROR in error.b24Code — the recipient does not have Do Not Disturb on |
| HTTP422 | CodeBITRIX_ERROR |
DescriptionBitrix24 refused with another INFORM_* code in error.b24Code — you are not the author of the message, or the message has already been seen or is too old |
| HTTP422 | CodeBITRIX_ERROR |
DescriptionBitrix24 refused with MESSAGE_NOT_FOUND in error.b24Code — the message does not exist |
| HTTP404 | CodeENTITY_NOT_FOUND |
DescriptionBitrix24 returned the NOT_FOUND code. The portal code is in error.b24Code |
| HTTP403 | CodeBITRIX_ACCESS_DENIED |
DescriptionThe user has no access to the chat — Bitrix24 refused with the ACCESS_DENIED code |
| HTTP403 | CodeSCOPE_DENIED |
DescriptionThe API key does not have the im scope |
| HTTP403 | CodeWRITE_BLOCKED_READONLY_KEY |
DescriptionThe key is read-only — see access rights |
| HTTP401 | CodeTOKEN_MISSING |
DescriptionThe API key has no Bitrix24 tokens configured |
The full list of common API errors — Errors.
Known specifics
A refusal is an expected outcome. The notification makes sense only while the recipient is in Do Not Disturb and has not seen the message. In every other case the Bitrix24 account responds with an INFORM_* code, and that is not an integration error.