# API Error: No such object / resource_missing (resource not found by ID)

**Code:** `resource_missing` · **Category:** API · **Seen on:** REST API

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

1. Look the ID up directly with the same credentials
2. Check the key/environment matches where the ID was created
3. Re-sync or re-create the referenced object if it was deleted

## Detailed fix by platform

### REST API

1. 

```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

1. **Lookup** — Does GET /resource/{id} succeed with the same key?
2. **Environment** — Test or live key? Which project/tenant?
3. **History** — Deleted? Check audit/event logs

---
Source: [WhatIsMyError](https://whatismyerror.com/errors/api/resource-missing-no-such-object)
