/api/v1/cases/{id}/decision
Record a binding credit decision, or send the case to a human.
- Scope
cases:decide- Rate limit
- 50 requests / min
- Idempotency
Idempotency-Keysupported
Authentication
Send your key as Authorization: Bearer …. It must carry the scope cases:decide; a key without it receives 403 forbidden.
Path parameters
idstringrequiredHeaders
Idempotency-KeystringReplays the first response for a repeated request. Reusing a key with a different body is idempotency_key_reused (409), never a silent replay.
Request body
application/jsonrequireddecisionstring (enum)requiredapproveapproveddeclinedeclinedreviewapprove, decline or review; the past-tense spellings are aliases. Matched case-insensitively.
reasonstringrequiredmin length 1The justification. Recorded as the override reason on an approval or decline, and as the review note on a review.
conditionsarray | nullnullableOnly with approve. Each is stored as a required prior-to-funding condition.
approved_amountnumber | string | nullnullableOnly with approve. WHOLE DOLLARS, never cents: greater than zero and at most 2147483647, as a number or a numeric string.
Response
200application/jsonSerializedCaseDecisionidstringrequiredstatusstring (enum)requiredpendingapproveddeclinedreviewinviteddecisionstring | nullrequirednullableThe recorded outcome, or null. Null is the review case: a review records
no outcome, and status (review) is the whole answer.
decided_bystringrequiredapi_key:<key id> — the API key that recorded the decision.
decided_atstring | nullrequirednullableapproved_amountnumber | nullrequirednullableWhole dollars. Null when the decision carries no approved amount.
interest_ratenumber | nullrequirednullableterm_monthsnumber | nullrequirednullablemonthly_paymentnumber | nullrequirednullabledecline_reasonsstring[]requiredconditionsstring[]requiredEchoed back only when the caller sent conditions; [] otherwise.
Errors
The statuses this operation can return, with the error.code values behind each. Every error body is the shared envelope described under Errors in Getting started.
400validation_error401unauthorized403forbidden404not_found409idempotency_key_reused429rate_limit_exceeded500internal_error