{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-docs/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Agent Channels","projectTitle":"Frontline Documentation"},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"agent-channels","__idx":0},"children":["Agent Channels"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Agent Channels"]}," are the messaging surfaces a customer-facing ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/concepts/agents"},"children":["Agent"]}," answers on: WhatsApp Business numbers, Instagram accounts, and Messenger pages."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This is the account-level integration itself and which agent it is bound to. It is ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not"]}," the same as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT /agents/{agentId}/settings/{channel}"]},", which configures how a given agent ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["behaves"]}," on a channel (split-message rules, conversation-close policy, appearance)."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Connecting a new channel requires the OAuth / embedded-signup flow in the app (Meta tokens) and is ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not"]}," available via the API. The Public API can list already-connected channels, bind or unbind them to agents, and run WhatsApp number maintenance."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"binding","__idx":1},"children":["Binding"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Every channel binds to ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["exactly one"]}," agent."]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pass ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["agentId"]}," to bind."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pass ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," (or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--clear"]}," on the CLI) to unbind."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Omit the field to leave the current binding unchanged (WhatsApp ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["update"]}," also edits the business profile this way)."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["WhatsApp numbers used by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SEND_WHATSAPP_MESSAGE"]}," nodes need ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canSendMessages: true"]}," (an assistant is assigned)."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"whatsapp-templates","__idx":2},"children":["WhatsApp templates"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Approved WhatsApp message templates from Meta are listed separately. Use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["template.name"]}," in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SEND_WHATSAPP_MESSAGE"]}," nodes and map parameters into ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["templateVariables"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"operations","__idx":3},"children":["Operations"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Verb"},"children":["Verb"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Path"},"children":["Path"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Purpose"},"children":["Purpose"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/public/v1/channels"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List WhatsApp / Instagram / Messenger + agent bindings"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/public/v1/channels/whatsapp/templates"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Approved WhatsApp templates"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/public/v1/channels/whatsapp/numbers/{phoneNumberId}/business-info"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Live business profile"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/public/v1/channels/whatsapp/{integrationId}/numbers/{phoneNumberId}"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Update profile and/or bind an agent"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/public/v1/channels/whatsapp/{integrationId}/numbers/{phoneNumberId}/register"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Register the number with Meta"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/public/v1/channels/whatsapp/{integrationId}/numbers/{phoneNumberId}/disconnect"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Disconnect one number"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/public/v1/channels/instagram/accounts/{instagramAccountId}"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bind / unbind an Instagram account"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/public/v1/channels/messenger/pages/{messengerPageId}"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bind / unbind a Messenger page"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /channels"]}," accepts an account API key. Binding and WhatsApp maintenance require a USER API key."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Full list in the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/reference/openapi"},"children":["API Reference"]}]}," under the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Agent Channels"]}," tag."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Personal WhatsApp sync (turning chats into CRM records) is a different surface — see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/concepts/admin/data-and-sync"},"children":["Data & Sync"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"cli","__idx":4},"children":["CLI"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"frontline agent-channels list --table\nfrontline agent-channels instagram assign <instagramAccountId> --agent-id <agentId>\nfrontline agent-channels messenger assign <messengerPageId> --clear\nfrontline agent-channels whatsapp update <integrationId> <phoneNumberId> --agent-id <agentId>\nfrontline agent-channels whatsapp info <phoneNumberId>\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--table"]}," mode, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["targetId"]}," is the value you pass to assign/update (WhatsApp uses ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["phoneNumberId"]},"; Instagram/Messenger use the numeric account/page id)."]}]},"headings":[{"value":"Agent Channels","id":"agent-channels","depth":1},{"value":"Binding","id":"binding","depth":2},{"value":"WhatsApp templates","id":"whatsapp-templates","depth":2},{"value":"Operations","id":"operations","depth":2},{"value":"CLI","id":"cli","depth":2}],"frontmatter":{"seo":{"title":"Agent Channels"}},"lastModified":"2026-10-02T13:31:57.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/docs/concepts/agent-channels","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}