Working with an AI agent? Download the full documentation as a Markdown file to use as context.
Download full .mdYou have software — an app, a SaaS, a backend, an AI agent — and you want it to hold a conversation with people on the channels they actually use: WhatsApp, Instagram DMs and Facebook Messenger. The goal is simple to state. The path is not obvious, because Meta's three channels barely overlap and the ecosystem around them is built mostly for support teams, not for systems.
This guide lays out the realistic options, honestly, with the trade-offs of each — and then shows the two concrete ways to connect a channel with Fiwano. No sales pitch in the comparison: if one of the other routes fits you better, you should take it.
Telegram is a single bot token and you're live in an afternoon. People assume Meta works the same way. It doesn't.
With that as the backdrop, here are the four ways people actually solve it.
The fastest route. You drop in an open-source library that drives WhatsApp Web as if it were a real device, point it at a phone number, and you can send messages in minutes. It's free and it feels like magic.
It works right up until Meta bans the number. This is not a rare edge case — it is the designed outcome: automating a personal account violates WhatsApp's terms, and accounts get flagged and disabled. When you lose a live number you lose the conversations and the trust attached to it.
Use it for a throwaway experiment or a personal hack. Don't build a business on it. One ban and the channel is gone, with no appeal and no SLA. There is no official equivalent for Instagram or Messenger, so it solves at most one of the three channels.
The proper, durable path. You become a Meta developer, pass business verification, and integrate WhatsApp Cloud API, Instagram Messaging and the Messenger Platform yourself.
Done right, this is robust and fully within Meta's terms. It is also heavier than it looks. You're integrating three different APIs, wiring webhooks for each, managing long-lived tokens, handling template approval on WhatsApp, and getting 50-plus dashboard settings correct across the three channels. The first end-to-end setup is a job of many hours and many iterations, and you own every future breaking change Meta ships.
Use it when the integration is core to your product, you have engineering time to spend, and you want zero dependencies between you and Meta. The cost is the build, the verification, and the ongoing maintenance of three moving targets.
Hand the whole thing to a SaaS that receives and sends the messages for you, usually with a shared team inbox, contacts, tags and automations.
These cover all three channels and save you the Meta plumbing. The catch is what they are: products for human support and marketing teams. You pay a monthly subscription (commonly in the ~$60–200/month range), and you inherit seat limits, contact caps and a long list of features you'll never call from code. The API, where there is one, is an afterthought bolted onto an inbox.
Use it when real people will sit in an inbox and reply. It fits poorly when the "user" is your own software or an AI agent that just needs to send and receive — you're renting an inbox to get an API.
A service whose product is the API: you call one endpoint to send, you receive a webhook when a message arrives, and the provider handles Meta on your behalf.
This is the right shape for software-to-user messaging. The thing to check is coverage and pricing model, because it varies a lot:
If you can find one that covers all three channels behind a single, predictable API, this is usually the lowest-overhead path to "my system can talk to users."
| If you want… | Best fit |
|---|---|
| A 10-minute personal hack, disposable | Unofficial library (expect bans) |
| Full control, no third party, time to build | Build on Meta's official APIs |
| Humans replying in a shared inbox | Inbox platform (SaaS subscription) |
| Your app or AI agent to send & receive, all three channels, via one API | Developer-first messaging API |
There is no single right answer — it depends on who is sending the messages and how much overhead you're willing to carry.
We were building an ERP, and the idea was simple: let people reach it from whatever messenger they like. Telegram took an afternoon. The Meta channels were another matter, so we worked through exactly the options above. The unofficial library got our numbers banned more than once. Building on Meta's APIs directly worked but cost us many hours every time we set it up. The outside services either covered one or two channels, or were full inbox platforms priced and shaped for support teams.
None of it fit what we actually wanted: a simple way for a system, or an AI agent, to hold a conversation on all three channels without the overhead. So we built it. Fiwano is a single REST API across WhatsApp, Instagram and Facebook Messenger — you connect a channel once, then send and receive through one contract, and we keep the Meta side working.
Because we're a verified Meta Tech Provider, you can connect channels through us without doing your own Meta App Review and business verification — the gate from Option 2 is handled on our side.
Which one you use depends on whose Meta assets you're connecting.
A. Through the Portal — your own channels, no code. Sign in, go to Channels → Connect Channel, pick WhatsApp, Instagram or Facebook Messenger, and complete Meta's OAuth in a popup. This is for connecting channels that you own.
B. Through the API — your end users' channels, programmatically. If you're building a product where your users connect their WhatsApp, Instagram or Facebook, you drive an embedded OAuth flow from your own app: request a setup URL, send the user through Meta's consent screen, and exchange the returned code for a channel — all via the API, under your own branding.
Both produce the same thing: a channel_id you send and receive messages
through. For the exact endpoints, request/response fields and the step-by-step
OAuth flow, see Channels. From there, sending is a
single call — see Sending Messages — and
incoming messages arrive as webhooks.
Prefer no-code? The same API is available as a verified n8n community node.
Yes. Meta exposes WhatsApp, Instagram and Messenger as three separate APIs with different objects and permissions, but Fiwano puts all three behind a single REST API — you connect a channel once, then send and receive through one contract.
Not with Fiwano. Because Fiwano is a verified Meta Tech Provider, you connect channels through it without doing your own Meta App Review or business verification. If you build directly on Meta's official APIs instead, verification is required.
Only for a throwaway experiment. Automating a personal WhatsApp account violates WhatsApp's terms, so the number eventually gets banned — with no appeal and no SLA — and you lose the conversations attached to it. There is also no equivalent for Instagram or Messenger.
Inbox platforms are built for human support teams — shared inbox, seats, contact caps — and charge a monthly subscription. A developer-first API is built for software: you send with one call and receive a webhook. If the 'user' is your own app or an AI agent, the API shape fits better.
Two ways. Through the Portal (Channels → Connect Channel) for your own channels with no code, or through the API with an embedded OAuth flow when your end users connect their own WhatsApp, Instagram or Facebook. Both produce a channel_id you send and receive through.
Fiwano API Documentation