> ## Documentation Index
> Fetch the complete documentation index at: https://docs.soludesks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Errors

> Understand SoluDesks API error responses.

Error responses use the same envelope as successful responses, with `success` set to `false`.

```json theme={null}
{
  "status": 422,
  "success": false,
  "code": "VALIDATION_ERROR",
  "message": "Some fields contain invalid values.",
  "data": null,
  "errors": [
    {
      "field": "title",
      "code": "required",
      "message": "This field is required."
    }
  ]
}
```

## Common Status Codes

| Code  | Meaning                                                                                                      |
| ----- | ------------------------------------------------------------------------------------------------------------ |
| `400` | Request was malformed or an upload/session state is invalid.                                                 |
| `401` | API key is missing or invalid.                                                                               |
| `403` | API key lacks permission, LearnHub is not enabled, service provider is inactive, or key mode is unsupported. |
| `404` | Resource was not found in the key's scope.                                                                   |
| `409` | Idempotency conflict or an idempotent request is still processing.                                           |
| `422` | Validation failed.                                                                                           |
| `429` | Rate limit exceeded.                                                                                         |
| `500` | Server error.                                                                                                |

## Validation Errors

Validation errors include field-level details in `errors`. Nested payloads may use dotted field paths.
