Errors

Handle RFC 9457 Problem Details by stable code and retryability.

Common responses

StatusMeaningRetry
400Invalid request or cursorNo
401Invalid or revoked API keyNo
403Insufficient scopeNo
402Insufficient creditAfter top-up
404Resource unavailableNo
429Organisation rate limitAfter Retry-After
503Service or usage accounting unavailableOnly when retryable

Problem Details

json
{
  "type": "https://docs.luranta.com/problems/invalid-request",
  "title": "Invalid request",
  "status": 400,
  "detail": "The limit must be between 1 and 100.",
  "instance": "/v0/jobs",
  "code": "invalid_request",
  "request_id": "019c...",
  "retryable": false,
  "param": "limit"
}
Network failures are ambiguous
Do not automatically retry an interrupted billable response. Official SDKs surface TransportError so your application can reconcile deliberately.