When it fires
The market id (a UUID) you passed doesn’t match any market. Returned byGET /v1/markets/{id}, GET /v1/markets/{id}/predictions, GET /v1/markets/{id}/quote, POST /v1/trades, POST /v1/trades/{id}/confirm and POST /v1/redemptions.
Why it happens
- A typo in the market id.
- Cross-environment confusion: a staging market id sent to production, or the reverse. Markets don’t exist across environments.
- A placeholder id copied from documentation rather than a real one.
- Redemptions only: the market exists but has not been created on-chain yet, so there is nothing to redeem against.
POST /v1/redemptionsreports this asMARKET_NOT_FOUND.
How to fix
- Look up real market ids with
GET /v1/markets(filterable by status). - Cache the id once you have it; a market’s id never changes.
- If you expect the market to exist (for example you saw it in the Kash web app), confirm you are calling the same environment.
Related codes
MARKET_NOT_TRADEABLE— the market exists but does not accept tradesRESOURCE_NOT_FOUND— the generic 404 for other resources