API Error: No such object / resource_missing (resource not found by ID)
The endpoint exists, but the ID you passed — in the URL or as a reference in the body — doesn’t match any record the caller can see.
Meaning
APIs return this when a lookup by ID fails: Stripe says “No such customer: 'cus_123'” (code resource_missing), others “Resource not found” or “Referenced object does not exist”. It covers both the record you’re fetching and records you reference from a create/update request (a customer_id, price_id, parent_id).
The record may be deleted, belong to another account or tenant, or exist in a different environment — test vs live, staging vs production — which is the single most common reason.
Common causes
- Wrong or stale ID (deleted, typo, truncated)
- ID from another environment (test vs live, staging vs prod)
- ID from another account/tenant/connected account
- Referenced object deleted after it was saved locally
- Caller lacks permission and the API hides the object as “not found”
⚡ Quick fix
- Look the ID up directly with the same credentials
- Check the key/environment matches where the ID was created
- Re-sync or re-create the referenced object if it was deleted
Detailed fix by platform
REST API
- bash
# fetch the object with the SAME key the failing request uses curl https://api.stripe.com/v1/customers/cus_123 -u "$STRIPE_KEY:"
How to diagnose
- Lookup — Does GET /resource/{id} succeed with the same key?
- Environment — Test or live key? Which project/tenant?
- History — Deleted? Check audit/event logs
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
Report a correction or suggest an improvement
Last updated 7 Oct 2026