Error Codes

The HTTP status codes the Pluggy API returns, what each means, and the shape of an error body.

View as Markdown

Error body#

Every error, on every endpoint, has this shape:

json
{
  "code": 404,
  "codeDescription": "ITEM_NOT_FOUND",
  "message": "Item not found"
}
FieldMeaning
codeThe HTTP status, repeated. Always present.
messageA sentence for a person. Always present; not stable.
codeDescriptionA stable identifier for the specific error, when the endpoint distinguishes several. Branch on this, not on message.
dataExtra detail for some errors — for instance, the Items that already exist when creating one would duplicate a connection.

Status codes#

StatusMeaningUsually because
400 Bad RequestThe request is invalid.A missing or malformed field.
401 UnauthorizedThe credential is missing, wrong or expired.An API Key past its 2 hours, or wrong clientId/clientSecret on POST /auth (CLIENT_KEYS_UNAUTHORIZED, CLIENT_DISABLED).
403 ForbiddenThe credential cannot reach this resource.A Connect Token used outside its scope — see AuthenticationAPI.
404 Not FoundNo such resource.An id that does not exist.
405 Method Not AllowedThe endpoint does not support this verb.
406 Not AcceptableA format other than JSON was requested.
409 ConflictThe request contradicts the current state of the resource.A conflict updating an Item — see PATCH /items/{id}API.
429 Too Many RequestsA rate limit was exceeded.See Rate LimitsAPI for the limits and the Retry-After header.
500 Internal Server ErrorSomething failed on our side.Retry later.
503 Service UnavailableTemporarily offline for maintenance.Retry later.

Each endpoint's page in this reference lists the statuses it returns and, where the API distinguishes them, the codeDescription values.

Read the guide: Errors Codes.

Was this page helpful?