BetaThe V4 API is in beta — endpoints and functionality may change.
Messagesv4

List message events

GET/chats/{chatId}/messages/{messageId}/events

Lifecycle events for a message (sent, delivered, read, reactions, ...).

Path parameters

chatIdRequiredstring

Unique identifier of the chat, prefixed with chat_. Returned by the List chats endpoint.

messageIdRequiredstring

Unique identifier of the message, prefixed with msg_. Returned when you send a message or by the List messages endpoint.

Headers

AuthorizationRequiredstring

Your API key, sent as a bearer token: Authorization: Bearer <api_key>. Editing this stays in sync with the API key box on the right.

Bearer

Query parameters

limitoptionalinteger

Maximum number of items to return per page. Must be between 1 and 200; defaults to 50. Combine with cursor to paginate.

cursoroptionalstring

Opaque pagination cursor. Pass the next_cursor value from a previous response to fetch the next page; omit it on the first request.

Returns

dataoptionalMessageEvent[]

Array of MessageEvent

idoptionalstring

Event id (evt_...).

message_idoptionalstring
kindoptionalstring

Bare lifecycle kind, e.g. sent, delivered, read, reaction.

occurred_atoptionalinteger
metadataoptionalobject
has_moreoptionalboolean
next_cursoroptionalstring | null

Response codes

200Message events
401Your API key is missing or invalid. Pass it as a bearer token.
404No message was found with the provided `chatId`.

Sends a live request with your values and shows the real response below. Your key is stored only in this browser.

Request
curl -X GET https://api.blooio.com/v4/chats/chat_a1b2c3d4/messages/msg_a1b2c3d4/events?limit=50&cursor=string \  -H "Authorization: Bearer bl_live_..."
Response objectexample
{  "data": [    {      "id": "obj_a1b2c3d4",      "message_id": "msg_a1b2c3d4",      "kind": "string",      "occurred_at": 0,      "metadata": {}    }  ],  "has_more": true,  "next_cursor": "string"}