Hanzo
OpenapiChannels

Reports every chat channel this org can send through, and whether it can send…

Reports every chat channel this org can send through, and whether it can send through it right now.

GET /v1/channels

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

Reports every chat channel this org can send through, and whether it can send through it right now.

A channel appears here whether or not it is connected — an empty list would leave a caller unable to tell "this org has no Slack" from "Slack is down", which are different problems with different fixes. Each entry carries the connection behind it, so the answer to "why can I not post?" is in the same response as the channel that cannot post.

Request

GET /v1/channels takes no parameters and no body — the credential is the whole request.

Response

StatusBodyMeaning
200chatChannelsok

200 body — 14 fields.

FieldInTypeAlwaysDescription
channelsbodychannelView[]Channels is every chat transport this deployment supports, in a fixed order, each carrying whether the org has connected it, the account behind the connection,…
channels[].accountbodystringAccount is the id-shaped fact about that connection: the lowercased external id integrations custodies for it — a Discord guild id, a Slack team (workspace)…
channels[].accountLabelbodystringAccountLabel is the human label of that same account — the Discord guild name, the Slack team name, the Teams tenant name (falling back to the tenant id), the…
channels[].capabilitiesbodycapabilities
channels[].capabilities.actionsbodybooleanActions is whether the transport renders an INTERACTIVE control natively, and it is the flag to read before composing one.
channels[].capabilities.dmbodybooleanDM is whether the transport carries a DIRECT message at all. True for slack, teams and telegram.
channels[].capabilities.groupbodybooleanGroup is whether the transport carries multi-person rooms — a Discord guild channel, a Slack channel, a Teams channel or group chat, a Telegram group or…
channels[].capabilities.mediabodybooleanMedia is whether the transport renders an ATTACHMENT natively.
channels[].capabilities.threadbodybooleanThread is whether a reply can be threaded UNDER a specific message.
channels[].connectedbodybooleanConnected is whether integrations holds a connection for (this org, this transport) — whether someone finished its connect flow.
channels[].dmPolicybodystringDMPolicy is how this org admits direct messages here: "pairing", "allowlist" or "open", defaulting to "pairing" when the org has never set one.
channels[].groupPolicybodystringGroupPolicy is how this org admits group and thread rooms here: "open", "allowlist" or "disabled", defaulting to "open".
channels[].idbodystringID is the fixed transport identifier — discord, slack, teams or telegram — and the value every route on this surface names a channel by, including the…
channels[].pendingPairingbodyintegerPendingPairing counts the org's UNEXPIRED pairing requests on this channel: exactly the rows GET /v1/channels/pairing returns for it, one per person waiting on…

Failure carries the platform error shape — see Errors.

Examples

hanzo channels list

Channels API · All Hanzo APIs · Interactive reference

How is this guide?

On this page