Messenger error 100: Invalid parameter
Last verified against Meta for Developers - Messenger Platform error codes
Bad Parameter Error: Invalid FBID.What error 100 means
Code 100 is the Graph API's bad-parameter error: something in your request, an ID, a field, a token parameter, a payload structure, is invalid for this endpoint. Meta's Messenger table lists several strings under the bare code: "Invalid FBID," "No matching user found," and for the marketing-messages system, "notification_messages_token is invalid" and "notification_messages_token has expired," with the blanket advice to "check to make sure the ID or token you are using is valid."
Since April 27, 2026, code 100 also has a new, high-traffic meaning: it is what Meta documents that you receive when a Send API request carries one of the retired message tags, CONFIRMED_EVENT_UPDATE, ACCOUNT_UPDATE or POST_PURCHASE_UPDATE. A bot whose out-of-window notifications suddenly began failing with code 100 in spring 2026 is not suffering a data bug; it is running a flow the platform has since retired. The fix is migration, to HUMAN_AGENT where a human is genuinely replying, or to opt-in mechanisms (one-time notifications, marketing messages) for everything else.
Otherwise, code 100 is a family patriarch whose subcodes carry the diagnosis: 2018001 (no matching user), the media quartet 2018008/2018047/2018109/2018294, 33 (object missing or unreadable), and 2018164 (wrong App ID). Bare 100 with none of those usually means a malformed payload: wrong nesting, missing required field, or an enum value the endpoint does not accept.
What it looks like
{
"error": {
"message": "(#100) Invalid parameter",
"type": "OAuthException",
"code": 100,
"fbtrace_id": "BLBz/WZt8dN"
}
}Why it happens
- A retired message tag (CONFIRMED_EVENT_UPDATE, ACCOUNT_UPDATE, POST_PURCHASE_UPDATE) in the request, failing with code 100 since April 27, 2026.
- Invalid or malformed IDs in recipient or object parameters.
- Expired or invalid notification_messages_token on marketing-message sends.
- Payload structure errors: wrong nesting, missing required fields, invalid enum values.
- Requests built for an older API version whose parameters changed.
How to fix Messenger error 100
- 1Read the message and subcode first; most 100s belong to a specific subcoded page with its own fix list.
- 2If the request uses a retired tag, migrate: HUMAN_AGENT for human escalations, opt-in tokens for notifications.
- 3Validate the payload against the current Send API reference, nesting and required fields exactly.
- 4For token strings (notification_messages_token), obtain a fresh token via the opt-in flow; expired ones cannot be revived.
- 5Reproduce in the Graph API Explorer to isolate whether the payload or the runtime context is at fault.
How to stop it recurring
Build requests from typed constructors rather than hand-assembled JSON, and validate against the schema before sending. Subscribe to the platform changelog: parameter retirements like the 2026 tag removal are announced ahead of enforcement, and the migration window is when fixes are cheap. The tag rules and every payload cap are tabulated in the Messenger limits reference, with the code-100 family mapped in the troubleshooting guide.
Official reference: Meta for Developers - Messenger Platform error codes. See all Messenger error codes or the Messenger limits and quotas.
Related codes
- 100: No matching user foundNo matching user found
- 100: Unsupported get request - object missing or unreadableUnsupported get request. Object with ID * does not exist, cannot be loaded due…
- 100: Incorrect App IDIncorrect App ID.
- 10: Message sent outside of allowed windowThis message is sent outside of allowed window. Learn more about the new…
- 100: Failed to fetch the file from the URLFailed to fetch the file from the url. Check that the URL is valid, with a…
Error 100 - quick answers
What does Messenger error 100 mean?
Code 100 is the Graph API's bad-parameter error: something in your request, an ID, a field, a token parameter, a payload structure, is invalid for this endpoint.
How do I fix Messenger error 100?
1. Read the message and subcode first; most 100s belong to a specific subcoded page with its own fix list. 2. If the request uses a retired tag, migrate: HUMAN_AGENT for human escalations, opt-in tokens for notifications. 3. Validate the payload against the current Send API reference, nesting and required fields exactly. 4. For token strings (notification_messages_token), obtain a fresh token via the opt-in flow; expired ones cannot be revived. 5. Reproduce in the Graph API…
Stop debugging Messenger by hand
Connect the channel through Conferbot: tokens, webhooks and retries are handled, failures show as readable status.