Error reference
Branch on `code`, never on `message`.
Error shape
{
"error": {
"code": "size_required",
"message": "size_usd is required — an estimate without a size is meaningless.",
"docs": "https://docs.crifine.app/api/exit"
}
}| Status | Code | What to do |
|---|---|---|
| 400 | size_required | Pass size_usd. There is no default, deliberately. |
| 400 | size_out_of_range | Sizes below $1,000 or above $500M are rejected rather than guessed at. |
| 402 | payment_required | Settle the quoted amount and retry with X-Payment-Proof. |
| 404 | pool_not_found | Check GET /v1/pools. The pool may not be under recording yet. |
| 409 | insufficient_history | The pool has fewer observed days than the requested window. Shorten the window or accept a lower days_observed. |
| 429 | rate_limited | Back off using Retry-After. Applies to free verification endpoints only. |
| 503 | recorder_gap | A depth snapshot window was missed and the result would be unsound. Retry; do not fall back to oracle price. |