Skip to main content
A client token lets the browser call Channel3 without your API key. It looks like c3_ct_…. It can only run turns and read the one conversation it is bound to. The API key that minted it pays for those turns. Mint on your server. Never mint from the browser. Send the token as Authorization: Bearer c3_ct_… — see the quickstart.

Mint

Default lifetime is 30 minutes (ttl_seconds from 60 to 7200).
With no conversation_id, the token’s first turn creates the conversation and the token is bound to it. That is the quickstart path.

Pin a token to an existing conversation

Pass conversation_id when the shopper already has a chat — for example they refreshed the page and you minted a new token. The token can only continue and read that conversation. Any other id returns 404.
An expired or revoked token returns 401. Mint a new one before it expires. If you already have a conversation_id, pass it so the new token stays on the same conversation.

Revoke

Revoke from the server when the session ends. Put the token in the body so it stays out of URL logs.