Skip to main content
GET
Channels
Channel endpoints use the orchestrator:

List channels

Use provider=telegram or provider=whatsapp without agent to list connected provider accounts in the organization.

Connect Telegram

Then register the webhook:

Connect WhatsApp

Validate the Meta access token and phone number before saving secrets:
After storing the access token and app secret as Runtools secrets, connect the channel:
Register the webhook and copy the returned setup.webhookUrl and setup.verifyToken into Meta’s WhatsApp webhook settings:
Each WhatsApp Business phone number can be connected to one agent at a time.

Privacy

Approve a pending request:
Approve a known conversation directly:
Revoke access:

Product channel bindings

Product channel bindings let a developer-owned Telegram, WhatsApp, Slack, Discord, iMessage, or SMS channel serve end users of a product built on Runtools. The channel credential stays builder-owned. The person chatting is resolved through a separate channel identity link:
When a linked product user messages the channel, Runtools runs the agent with Hosted Connect end-user scope. Missing Gmail, Stripe, Slack, or other customer data credentials return connect_required; product channels never fall back to builder Connected Apps.

Bind a channel to a product app

identityPolicy must be link_required. groupPolicy can be disabled or sender_scoped. Create a link session from your product server:
Complete it after your product verifies the provider sender identity:
For trusted server-side imports, link directly:
List and revoke links: