Errors
Common public error codes and meanings
| Situation | Recommended response |
|---|
| Player does not have funds | HTTP 200, {"type":"ERROR","code":"insufficient_funds"} |
| Phoenix signature is invalid | HTTP 401 |
| Request body is malformed | HTTP 400 |
| Temporary operator outage | HTTP 5xx |
| Reason | Meaning |
|---|
login_required | Visitor attempted a player-only action |
insufficient_funds | Operator debit rejected for funds |
wallet_timeout | Debit call timed out |
wallet_unavailable | Debit could not reach operator wallet |
wallet_error | Debit failed for another transport reason |
duplicate_request | Same wager request was already reserved |
market_not_found | Market does not belong to this operator or does not exist |
market_not_open | Market is not currently tradable |
invalid_outcome | Outcome ID is not valid for the market |
invalid_budget | Bet amount is missing, zero, negative, or malformed |
rate_limited | Client is sending requests too quickly |
Show friendly copy to players. Keep the raw reason in logs for support.
| HTTP status | Meaning |
|---|
401 | Signature, timestamp, operator code, or key verification failed |
404 | Resource not found within the authenticated operator scope |
422 | Request was authenticated but invalid for the market state or schema |