Messenger error 100: Unsupported get request - object missing or unreadable
Last verified against Meta for Developers - Messenger Platform error codes
Unsupported get request. Object with ID * does not exist, cannot be loaded due to missing permissions, or does not support this operation.What error 100 means
Code 100 with subcode 33 is the Graph API's three-way ambiguity: "Object with ID * does not exist, cannot be loaded due to missing permissions, or does not support this operation." Meta deliberately refuses to distinguish the cases, confirming that an object exists while denying access would leak information, so the error reads identically whether your ID is wrong, your token is underpowered, or the endpoint does not do what you asked.
On Messenger integrations it typically appears on reads: fetching a conversation, message or Page object by ID. The permissions reading is the most common in practice, the object is real, but the Page token in hand belongs to a different Page, lacks a required scope, or the app's access level (Standard vs Advanced) does not cover the object class. The does-not-exist reading follows data bugs: IDs from another environment, deleted conversations, or numeric mangling of long IDs. The unsupported-operation reading catches category errors like GET on write-only endpoints.
Diagnosis is by elimination, and the Access Token Debugger plus the Graph API Explorer are the tools: run the same query with a known-good token of the right type; if it works there, the problem is your production token's identity or scopes, not the object. Note the difference from 100/2018001, which is specifically about message recipients; subcode 33 is the general object-access version.
What it looks like
{
"error": {
"message": "Unsupported get request. Object with ID '1234567890' does not exist, cannot be loaded due to missing permissions, or does not support this operation.",
"type": "GraphMethodException",
"code": 100,
"error_subcode": 33,
"fbtrace_id": "BLBz/WZt8dN"
}
}Why it happens
- IDs from a different Page, app, or environment than the token being used.
- Missing scopes or insufficient access level (Standard vs Advanced) for the object class.
- Deleted or expired objects (conversations, messages) referenced by stored IDs.
- Long IDs corrupted by numeric storage.
- Calling an operation the endpoint does not support (e.g. GET on a send-only edge).
How to fix Messenger error 100
- 1Reproduce in the Graph API Explorer with a fresh Page token for the same Page; success there isolates the token as the variable.
- 2Verify the token's Page identity and scopes in the Access Token Debugger.
- 3Confirm the ID's provenance: same Page, same app, same environment, stored as a string.
- 4Check the endpoint's reference page for supported operations and required permissions.
- 5Treat stale-object cases as data lifecycle: invalidate stored IDs when the referenced object can be deleted.
How to stop it recurring
Keep object IDs scoped the way tokens are: tag stored IDs with the Page and environment that produced them, and never let production code read staging IDs. Add access-level assertions to integration tests so a Standard-Access regression fails CI, not customer flows. The ID-scoping rules that make Messenger data non-portable are summarized in the limits reference and on the 2018001 page.
Official reference: Meta for Developers - Messenger Platform error codes. See all Messenger error codes or the Messenger limits and quotas.
Related codes
Error 100 - quick answers
What does Messenger error 100 mean?
Code 100 with subcode 33 is the Graph API's three-way ambiguity: "Object with ID * does not exist, cannot be loaded due to missing permissions, or does not support this operation." Meta deliberately refuses to distinguish the cases, confirming that an object exists while denying access would leak information, so the error reads identically whether your ID is wrong, your token is underpowered, or the endpoint does not
How do I fix Messenger error 100?
1. Reproduce in the Graph API Explorer with a fresh Page token for the same Page; success there isolates the token as the variable. 2. Verify the token's Page identity and scopes in the Access Token Debugger. 3. Confirm the ID's provenance: same Page, same app, same environment, stored as a string. 4. Check the endpoint's reference page for supported operations and required permissions. 5. Treat stale-object cases as data lifecycle: invalidate stored IDs when the referenced…
Stop debugging Messenger by hand
Connect the channel through Conferbot: tokens, webhooks and retries are handled, failures show as readable status.