Instagram Channel
Use an Instagram channel when your audience mainly interacts with your brand through Instagram Direct Messages and you want the agent to answer directly in Instagram DM.
For Codeer, the important live endpoint is the Webhook URL. Publishing an Instagram channel mostly controls whether Codeer starts processing Instagram webhook events. The bound agent still answers with its current published version.
What you need before you start
- One agent with at least one published version
- Permission to edit channels in the workspace
- An Instagram Business or Creator account
- That Instagram account connected to a Facebook Page you can manage
- A Meta app
- Instagram messaging settings available in that Meta app
- An access token that can send Instagram messages
- A public HTTPS Codeer environment
Why public HTTPS matters
Meta only accepts webhooks that are reachable over public HTTPS. If the Webhook URL from Codeer is not publicly reachable, Meta will fail at the webhook verify step.
What you will prepare in Meta
-
A
Meta app -
An
Instagram BusinessorCreatoraccount -
The
Facebook Pageconnected to that Instagram account -
Instagram messaging settings
-
A webhook configuration whose callback URL points to Codeer's
Webhook URL -
A subscription for the Instagram account's messaging events
-
An access token that can send Instagram messages
Keep the Instagram Account ID, token, and webhook subscription aligned
Codeer checks incoming webhook events against the Instagram Account ID you enter for this channel. If the Account ID, access token, and webhook subscription do not belong to the same Instagram account, messages may be ignored or Codeer may fail to reply.
Full setup flow
-
Create the Codeer Instagram channel and copy the Webhook URL
- In Codeer, publish the target agent from
Editorfirst. - Open
Channels. - Click
New Channel. - Choose
Instagram. - Give the channel a stable
NameandSlug. - In the Instagram channel
Configuration, copy theWebhook URL. - Do not publish the Codeer Instagram channel yet. First collect the required Meta-side values, save them in Codeer, and then return to Meta to configure and verify the webhook.
- In Codeer, publish the target agent from
-
Confirm the Instagram account state
- Confirm that the target Instagram account is a Business or Creator account.
- Confirm that it is connected to a Facebook Page.
- Confirm that your Meta account has permission to manage the Instagram account and its connected Page.
Instagram messaging permissions usually flow through the connected Facebook Page
If the Instagram account does not appear in Meta, first check that it is a professional account, that it is connected to the correct Page, and that your Meta Business permissions include the asset.
-
Add Instagram messaging settings to the Meta app
- Open Meta for Developers.
- Open the Meta app you want to use for Instagram DM.
- Add the Instagram product or messaging use case.
- Connect the Instagram Business / Creator account that users will message.
- Confirm that the app has permission to receive and send messages for that Instagram account.
Meta dashboard labels may change
Meta changes App Dashboard navigation and use case names over time. The important parts are: the app is connected to the right Instagram account, webhook verification works, and the token can send Instagram messages.
-
Get the Instagram Account ID
- Find the target Instagram Business account ID in Meta App Dashboard, Instagram account settings, or Graph API tooling.
- This ID usually looks like a long number, for example
17841400000000000. - Copy the ID. You will paste it into Codeer as
Instagram Account ID.
-
Create a Webhook Verify Token
- Generate a hard-to-guess string for this channel's
Webhook Verify Token. - Keep it ready. You will enter the same value in Meta's webhook settings and in the Codeer form.
Verify Token is not the access token
Webhook Verify Tokenis a shared string you choose for Meta webhook verification.Access Tokenis the token Codeer uses to send Instagram messages. Do not reuse one as the other. - Generate a hard-to-guess string for this channel's
-
Copy the Meta App Secret
- In Meta App Dashboard, open
App Settings>Basic. - Find and copy
App Secret. - You will paste it into Codeer as
Meta App Secret.

Codeer uses App Secret to verify webhook signatures
When Instagram webhooks reach Codeer, Codeer uses
Meta App Secretto verifyX-Hub-Signature-256. If the App Secret is wrong, events will be ignored. - In Meta App Dashboard, open
-
Create or get an access token that can send Instagram messages
- In Meta App Dashboard, Graph API Explorer, or your existing Meta token flow, get an access token that can send Instagram messages.
- Confirm that the token belongs to the same Instagram account you entered in Codeer as
Instagram Account ID. - You will paste it into Codeer as
Access Token.

Confirm token and permission status before production
If the app is still in development mode or you only have a test token, testing may be limited to people with app roles. Before serving normal users, confirm that the Meta app, permissions, and token match your production rollout plan.
-
Save the Instagram configuration in Codeer
- Return to the Codeer Instagram channel.
- In
Configuration, enter:Instagram Account IDWebhook Verify TokenMeta App SecretAccess Token
- Choose the published agent that should answer Instagram DMs.
- Save the configuration.
Save the Verify Token before verifying the webhook in Meta
When Meta verifies the webhook, it calls Codeer's
Webhook URLwith the verify token you entered in Meta. Codeer compares that value with theWebhook Verify Tokenalready saved on the channel, so this step must happen before Meta verify / save.Only published agents appear in the selector
If the agent is missing, go back to
Editor, publish it, and then return to the Instagram channel page. -
Configure the webhook in Meta
- In the Meta app's Instagram / Webhooks settings, add a callback.
- Paste Codeer's
Webhook URLintoCallback URL. - Enter the
Webhook Verify Tokenyou created earlier. - Click verify / save in Meta.
- After verification succeeds, subscribe the Instagram account that should receive messages.
- Subscribe at least the Instagram messaging events so Codeer receives user DMs.

-
Publish the Codeer Instagram channel
- After webhook, Instagram Account ID, credentials, and agent binding are ready, publish the channel.
- Use
Unpublishif you want Codeer to stop processing new Instagram events.
First live test
Before sharing the channel more widely, run through the full flow with a real Instagram account.
-
Open the DM for the target Instagram account.
-
Send a realistic text message.
-
Confirm that Instagram DM receives the agent reply.
-
Go back to Codeer
Historiesand confirm that the conversation is recorded. -
Confirm that the reply comes from the bound agent's latest published version.
Troubleshooting
If Instagram is connected but the reply is wrong, check these in order:
-
The correct agent version is published.
-
The Instagram channel is published.
-
Meta webhook verification succeeded.
-
The webhook is subscribed to the correct Instagram account.
-
Instagram Account IDbelongs to the same Instagram account as the webhook event and access token. -
The Instagram account is Business or Creator, and is connected to the correct Facebook Page.
-
Webhook Verify Tokenexactly matches the value in Meta webhook settings. -
Meta App Secretcomes from the same Meta app. -
Access Tokenis still valid and can send Instagram messages.