ManyChat Subscribers, Tags & Flows
For shops and creators who sell through Instagram DMs and Messenger with ManyChat: find a contact by email, phone or name, tag them, fill custom fields such as order number, and trigger a ManyChat flow to send them the next message.
Connect this API to an AI agent Browse all specs
What you can do with ManyChat Subscribers, Tags & Flows via MCP
Every endpoint below becomes a governed tool your AI agent (Claude, ChatGPT, or a customer-facing VX agent) can call — with scoped permissions, sandbox testing, and audit logs.
| Method | Path | Operation | Description |
|---|---|---|---|
| GET | /fb/page/getInfo |
getPageInfo | Get the connected ManyChat account (page) details |
| GET | /fb/page/getTags |
listTags | List all tags in the account |
| GET | /fb/page/getFlows |
listFlows | List automations (flows) and their ns ids |
| GET | /fb/page/getCustomFields |
listCustomFields | List custom user fields and their types |
| GET | /fb/subscriber/getInfo |
getSubscriber | Get a subscriber's profile, tags and custom fields by id |
| GET | /fb/subscriber/findByName |
findSubscribersByName | Find subscribers by full name |
| GET | /fb/subscriber/findBySystemField |
findSubscriberByEmailOrPhone | Find a subscriber by email or phone number |
| GET | /fb/subscriber/findByCustomField |
findSubscribersByCustomField | Find subscribers by the value of a custom field |
| POST | /fb/page/createTag |
createTag | Create a new tag |
| POST | /fb/subscriber/addTagByName |
addTagToSubscriber | Add a tag to a subscriber by tag name |
| POST | /fb/subscriber/removeTagByName |
removeTagFromSubscriber | Remove a tag from a subscriber by tag name |
| POST | /fb/subscriber/setCustomFieldByName |
setSubscriberCustomField | Set a subscriber's custom field value by field name |
| POST | /fb/sending/sendFlow |
sendFlowToSubscriber | Send an automation (flow) to a subscriber |
Authentication
Bearer
Bearer token — sent as Authorization: Bearer <token>
ManyChat API key, sent as Authorization: Bearer <key>.
How to get a credential
- Open your ManyChat account (the API needs a Pro plan).
- Go to Settings > API.
- Click Generate your API Key and copy it. The key is tied to this one ManyChat account (page).
Permissions used
| Access | Operations |
|---|---|
| API key (full account access, no scopes) | all operations: getPageInfo, listTags, listFlows, listCustomFields, getSubscriber, findSubscribersByName, findSubscriberByEmailOrPhone, findSubscribersByCustomField, createTag, addTagToSubscriber, removeTagFromSubscriber, setSubscriberCustomField, sendFlowToSubscriber |
Common errors
- 401 Unauthorized: the key is wrong or was regenerated; generate a new one in Settings > API.
- 403 Forbidden: the account is not on Pro, or the subscriber is outside the 24-hour messaging window for this channel.
- 400 Bad Request (
status: errorwithdetails): a missing or wrongly typed field, an unknown tag or field name, or a flownsthat does not exist. - 429 Too Many Requests: each method has its own per-second limit (10 to 50 rps; sending is 100 per subscriber per hour); slow down and retry.
Store the key as a VX Agents credential for this spec; never paste it into chat.
Usage guide
Setup
- Credential: a ManyChat API key (Settings > API, Pro plan) stored as a bearer token. One key = one ManyChat account (page); create a separate credential per account.
- Nothing else to pin: the account is implied by the key. Call
getPageInfoonce to confirm which account the key belongs to.
Tag a customer and send them the next step
- Find the person:
findSubscriberByEmailOrPhone(passemailORphone, phone in E.164 such as+15400000000),findSubscribersByName(name), orfindSubscribersByCustomField(field_idfromlistCustomFieldsplusfield_value). getSubscriberwithsubscriber_idto read their channels, tags and custom fields.listTagsto see the tag names in use;createTagonly if the tag does not exist yet.addTagToSubscriber/removeTagFromSubscriberwithsubscriber_idandtag_name. Tags often start automations in ManyChat, so a tag can trigger messages.setSubscriberCustomFieldwithsubscriber_id,field_name(not case sensitive) andfield_valueto store data like an order number or booking date.listFlowsto find the automation, thensendFlowToSubscriberwithsubscriber_idand the flow'snsvalue asflow_ns.
Confirm with the user before sendFlowToSubscriber, addTagToSubscriber, removeTagFromSubscriber or setSubscriberCustomField: they message real customers or change their data.
Good to know
- Every response is wrapped as
{"status": "success", "data": ...}; errors come back asstatus: errorwithmessageanddetails. subscriber_idis a number (the ManyChat contact id), not the Instagram or Facebook user id.- Custom field values must match the field type: text, number, boolean, date
YYYY-MM-DD, or date-time2018-05-01T06:30:24+03:00. - Meta's 24-hour rule still applies: outside the window a flow may fail unless it uses an allowed message tag or a channel that permits it (SMS, email, WhatsApp templates).
- Rate limits are per method (10 to 50 requests per second); sending is capped at 100 calls per subscriber per hour.
Source: ManyChat API reference (https://api.manychat.com/swagger), checked 2026-10-21.
How to use this spec
- Create a free VX Agents account (sandbox tools included).
- Open the marketplace and connect “ManyChat Subscribers, Tags & Flows” to an agent.
- Expose it as an MCP server for Claude/ChatGPT, or chat with it directly.