> For the complete documentation index, see [llms.txt](https://docs.exoclick.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.exoclick.com/api/exoclick-public-api/api-manual-errors.md).

# Errors

All errors will return the most specific, appropriate HTTP response code from the following table:

## Return Codes

| Code | Error                    | Description                                                                                               |
| ---- | ------------------------ | --------------------------------------------------------------------------------------------------------- |
| 400  | Bad Request              | A malformed request was received from the client. This is the most generic response given by the API      |
| 401  | Unauthorized             | You are not authorized and cannot access the requested resource                                           |
| 403  | Forbidden                | You do not have permission to access the requested resource                                               |
| 404  | Not Found                | The requested resource cannot be found. It may become available later                                     |
| 405  | Method Not Allowed       | An unsupported HTTP method was used for the requested resource                                            |
| 406  | Not Acceptable           | The Accept or Accept-Encoding type requested by the client is not available                               |
| 409  | Conflict                 | The request cannot be completed because there is a conflict with the existing resource                    |
| 410  | Gone                     | The requested resource is no longer available and never will be in future                                 |
| 411  | Length Required          | The requested resource expects a Content-Length to be supplied by the client                              |
| 413  | Request Entity Too Large | The request body supplied by the client was too large, the resource refuses to process it                 |
| 415  | Unsupported Media Type   | An incorrect (or no) Content-Type has been supplied by the client                                         |
| 422  | Unprocessable Entity     | The request is not malformed and the media type is acceptable but the resource cannot process the request |
| 429  | Too many requests        | The rate limit has been reached. Please see Rate Limiting section for more information                    |
| 500  | Internal Server Error    | The server could not process your request due to an unexpected internal server error                      |
| 501  | Not Implemented          | The requested resource has not been implemented                                                           |
| 503  | Service Unavailable      | The requested service is temporarily not available                                                        |

## Standard Response Format

All errors will have a standard response body with two fields, `code` and `message`. More fields can be used but they are optional.

## Examples

This is the simplest form of an error’s return body, clients can rely on these fields being present in every error.

### Error Responses - Example 1 (Baseline)

```json
{
  "code": 429,
  "message": "You have exceeded your number of requests. Please try again later"
}
```

The following example has, in addition to the standard fields, for errors associated with this specific request.

### Error Responses - Example 2 (More Complex)

```json
{
  "code": 422,
  "message": "Unprocessable entity",
  "cause": "Validation failed",
  "errors": [
    {
      "resource": "Issue",
      "field": "title",
      "code": "missing_field"
    },
    ...
  ]
}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.exoclick.com/api/exoclick-public-api/api-manual-errors.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
