> For the complete documentation index, see [llms.txt](https://docs.360dialog.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.360dialog.com/docs/mba/meta-business-agent/known-limitations.md).

# Known limitations

Meta Business Agent is in early access, and we found a number of gaps while testing. This page collects them all in one place so you can plan around them. Each is also flagged inline on the relevant step. We've raised the significant ones with Meta and expect fixes over time — check back for updates.

## Platform stability

| Gap                                                                                                                                                                             | What to do                                                                                                                                                                                                       |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| E**ndpoints intermittently return 4XX or 500 with no obvious cause.** The same request that failed succeeds later with no change on your side. Meta is actively debugging this. | Don't treat a one-off 4XX/500 as a permanent failure or a misconfiguration. Retry the call after a few hours — in every case we've seen, it resolved on its own. If it still fails after a day, contact support. |

## Eligibility & access

| Gap                                                                                                                                                 | What to do                                                                                                                                                                                                                          |
| --------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Eligibility check can return **HTTP 500** for a non-eligible or not-yet-enabled number instead of a clean "not eligible." Largely resolved by Meta. | If you see a 500 on `agent_eligibility`, re-check the number really meets the [requirements](/docs/mba/meta-business-agent/1.-check-eligibility.md) before treating it as an outage.                                                |
| API returns **403** until the **Meta Business AI Terms** are accepted for the WABA.                                                                 | Accept the terms in Business Manager → WhatsApp Manager → Business AI. Only someone with access to the WABA's **owning** business can accept. See [Enable and accept terms.](/docs/mba/meta-business-agent/2.-enable-your-agent.md) |
| Availability was **regional** during rollout (Brazil first, EU mid-July 2026). The restriction appears lifted.                                      | If a new-region number reads not-eligible, region may still be the cause — re-check after a short wait.                                                                                                                             |
| **CORS blocks browser calls** to Meta's agent endpoints.                                                                                            | Call the API from a backend, not directly from a browser. (With 360dialog, keep your `D360-API-KEY` server-side anyway.)                                                                                                            |

## Testing

| Gap                                                                                                                                                                                                                                                                             | What to do                                                                                                                                                                                                                                                              |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **`agent_test` only returns replies when the agent is fully published** (`rollout` enabled and `ai_audience = EVERYONE`). Under `ALLOWLISTED_ONLY` it returns an empty response with `no_response_reason = ELIGIBILITY_CHECK_FAILED`. **Raised with Meta; expected to change.** | For pre-launch testing on a production number, use `ALLOWLISTED_ONLY` and message from allowlisted numbers on real WhatsApp. Use `agent_test` on a dedicated test number set to `EVERYONE`. See [Test your agent](/docs/mba/meta-business-agent/4.-test-your-agent.md). |
| Each `agent_test` call **starts a fresh conversation** unless you pass back a `conversation_id`; the `to` field is ignored.                                                                                                                                                     | Capture `conversation_id` from the first response to continue a multi-turn test.                                                                                                                                                                                        |

## Conversation, handoff & context

| Gap                                                                                                                                            | What to do                                                                                        |
| ---------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| Once the agent **hands off to a human, it stops answering** that chat.                                                                         | Make sure a human handover path is live before launch — otherwise those customers get no reply.   |
| On hand-back, the agent **loses earlier conversation context**.                                                                                | Don't assume continuity across a human handoff; re-establish context if needed.                   |
| The handoff notice is the **fixed `message` you define** — it can't be adapted per customer language.                                          | For multilingual audiences, keep the handoff message simple or language-neutral.                  |
| The agent **doesn't always reply in the customer's language.**                                                                                 | Reinforce language behavior in your skills where it matters.                                      |
| **No API to read who currently holds the conversation** (thread owner) — there's no `GET` for thread control.                                  | Infer control state from webhooks / your own state; a read endpoint has been requested from Meta. |
| **Thread control supports only `release`** (hand back to agent), via the operate endpoint. Your app takes control simply by sending a message. | Use the documented thread-control call to release; see the **API reference**.                     |

## Files

| Gap                                                                 | What to do                                                                |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| **File upload fails when a file name is included.**                 | Upload without setting a filename in the multipart part.                  |
| **CSV files, and tables inside PDFs, error out** when read.         | Put structured/tabular facts into FAQs or business info instead of files. |
| The agent **can't reliably send files or images out** to customers. | Don't design flows that depend on the agent sharing a file.               |
| Uploads are `multipart/form-data`, **max 100 MB**.                  | Keep files within the limit.                                              |

## Events

| Gap                                                                                                                                                                                         | What to do                                                            |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| `agent_event` (proactive outbound) **only works while the agent is on-call** (holds the conversation). Status is poll-only (`request_received → processing → sent/failed/skipped/success`). | Only trigger events when the agent holds the thread; poll for status. |

## Webhooks — the capture gap

| Gap                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | What to do                                                                                                                                                                                                                                     |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><del>The agent's conversation travels on the <strong><code>standby</code></strong> field, which Meta delivers <strong>only to a single account-wide destination</strong>, not your number's webhook. So today you don't receive the agent's live conversation text (consumer inbound + agent replies) on your own webhook.</del></p><p><del><code>messages</code>, <code>messaging\_handovers</code>, and <code>bizai</code> delivery statuses do arrive. <strong>360dialog is building routing to deliver</strong><strong> </strong><strong><code>standby</code></strong><strong> </strong><strong>to your webhook.</strong></del></p> | The agent's `standby` conversation was previously not delivered to per-number webhooks. **Resolved** — 360dialog now routes `standby` to your number's webhook, re-signed with `x-360dialog-signature`. See [Webhooks](/docs/mba/webhooks.md). |

## API response shapes

| Gap                                                                                                                                                        | What to do                                                   |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
| `settings`, `skills`, `faq`, `websites`, `files`, and `allowlist` return **bare arrays**, not `{ "data": [ ... ] }`. `settings` is a single-element array. | Parse accordingly.                                           |
| `business_info` is a **closed six-field object** — no custom keys.                                                                                         | Use FAQs/files for anything that doesn't fit the six fields. |

## Connectors

| Gap                                                           | What to do                                                                                                                                   |
| ------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| **MCP connectors are not available** yet (on Meta's roadmap). | Integrate via the REST connector + tool model for now. See [Configure your agent](/docs/mba/meta-business-agent/3.-configure-your-agent.md). |

## Billing

| Gap                                                                                                                                                                                                     | What to do                                                |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------- |
| Since 1 August, Meta has required a client credit line for MBA usage. Meta plans direct credit-card support in September. MBA usage does **not** appear in standard WhatsApp message billing analytics. | Treat commercial terms as provisional. Check for updates. |

***

*Last reviewed: 29 July 2026. This is a moving target during early access — behaviors above may change as Meta ships fixes.*


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.360dialog.com/docs/mba/meta-business-agent/known-limitations.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
