Hanzo
OpenapiChannels

Returns the messages people have sent to the caller org's connected chat bots,…

Returns the messages people have sent to the caller org's connected chat bots, oldest first, in the portable envelope shape every transport normalises…

GET /v1/channels/inbox

Addresshttps://api.hanzo.ai/v1/channels/inbox
MethodGET
Operationget_channels_inbox
AuthAuthorization: Bearer $HANZO_API_KEY

Returns the messages people have sent to the caller org's connected chat bots, oldest first, in the portable envelope shape every transport normalises into. It is a CURSOR feed, not a search: pass the returned cursor back as since to get only what has arrived since. Only this org's messages are stored under this org, so the feed can never carry another tenant's chat.

Request

2 fields.

FieldInTypeRequiredDescription
sincequerystringSince is the exclusive cursor: only messages with a higher row id come back.
limitquerystringLimit caps how many messages come back.

Response

StatusBodyMeaning
200inboxPageok

200 body — 12 fields.

FieldInTypeAlwaysDescription
cursorbodyintegerCursor is the row id to pass back as since for the next page.
messagesbodyinboxView[]Messages are the inbound messages, oldest first.
messages[].accountbodystringAccount is the lowercased external id of the org's connected account on that transport: the Discord guild id, the Slack team id, the Teams AAD tenant id, or…
messages[].channelbodystringChannel is the transport this message arrived on — discord, slack, teams or telegram — and the :channel segment to reply through.
messages[].createdAtbodyintegerCreatedAt is Unix SECONDS, stamped by the ingest goroutine when the message was accepted — not the transport's own send time.
messages[].idbodyintegerID is the store's row id, assigned on insert — SERVER-SET, and the cursor: pass a page's last id back as since.
messages[].replyTobodystringReplyTo is the transport's reply target for this message: Slack's thread_ts, or the Telegram message id it arrived as.
messages[].roomIdbodystringRoomID is the conversation on the ORIGINATING transport, and the value to send back as room.id: a Discord channel snowflake, a Slack conversation id (D… IM,…
messages[].roomKindbodystringRoomKind is how ingest classified the room: "dm", "group" or "thread".
messages[].senderbodystringSender is the TRANSPORT-NATIVE user id of whoever wrote the message — a Discord member.user.id, a Slack U… user id, a Teams aadObjectId (falling back to…
messages[].senderUserbodystringSenderUser is the HANZO account subject that chat identity is linked to, resolved at ingest through the org's user link.
messages[].textbodystringText is the body as the transport delivered it, with the bot mention already stripped by the ingress adapter (on Discord it is the /hanzo prompt argument,…

Failure carries the platform error shape — see Errors.

Examples

hanzo channels inbox

Channels API · All Hanzo APIs · Interactive reference

How is this guide?

On this page