v1Changelog

The Problem Envelope

Non-2xx responses share one shape, so your integration can handle errors uniformly:

Problem
{
  "type": "https://docs.qwiklive.io/errors/BAD_REQUEST",
  "title": "Bad Request",
  "status": 400,
  "code": "BAD_REQUEST",
  "detail": "requestedAmount is required.",
  "correlationId": "7c3e1b90-2a44-4c8e-9b1a-0f5d2a6e8c10"
}
💡
Branch on code, not detail

The code field is stable and machine-readable; title/detail are human-facing and may change. Always log the correlationId for support.

Status Codes

StatusCodeWhen it happens
400BAD_REQUESTValidation failed — a required field is missing or malformed.
401UNAUTHORIZEDMissing or invalid client credentials.
403FORBIDDENCredentials valid but not permitted for this operation.
404NOT_FOUNDThe referenced loan, offer, or application does not exist.
429TOO_MANY_REQUESTSRate limit exceeded — retry after the indicated interval.
500INTERNAL_ERRORUnexpected server error.
502BAD_GATEWAYUpstream core banking system returned an invalid response.
503SERVICE_UNAVAILABLEService temporarily unavailable.
504GATEWAY_TIMEOUTUpstream core banking system timed out.

Retry Guidance