# Requests, Responses and Error Codes

The Erudus API supports GET, POST, PUT and DELETE HTTP methods for interacting with resources.

### SSL

All endpoints require HTTPS.

### JSON

The Erudus API supports JSON data format **only**. Most POST and PUT requests require a valid JSON object for the body. The responses generated by the API will also be in JSON format.

It is recommended to supply the following header when making API requests:

```
Accept    application/json
```

When sending data in a PUT or POST requests you should add the following header:

```
Content-Type    application/json
```

### Status Codes

The Erudus API attempts to return appropriate HTTP status codes for every request.

<table><thead><tr><th width="100">200</th><th>OK</th><th>Success!</th></tr></thead><tbody><tr><td>201</td><td>Created</td><td>The request has been fulfilled and resulted in a new resource being created.</td></tr><tr><td>204</td><td>No Content</td><td>The server successfully processed the request, but is not returning any content.</td></tr><tr><td>304</td><td>Not Modified</td><td>There was no new data to return.</td></tr><tr><td>400</td><td>Bad Request</td><td>The request was invalid or cannot be otherwise served.</td></tr><tr><td>401</td><td>Unauthorized</td><td>Authentication credentials were missing or incorrect.</td></tr><tr><td>403</td><td>Forbidden</td><td>The request is understood, but it has been refused or access is not allowed.</td></tr><tr><td>404</td><td>Not Found</td><td>The URI requested is invalid or the resource requested, does not exists.</td></tr><tr><td>406</td><td>Not Acceptable</td><td>Returned when an invalid format is specified in the request.</td></tr><tr><td>422</td><td>Unprocessable Entity</td><td>Returned when data validation fails.</td></tr><tr><td>429</td><td>Too Many Requests</td><td>Returned when rate limit is exhausted for the resource.</td></tr><tr><td>500</td><td>Internal Server Error</td><td>Something is broken. Please contact us and let us know.</td></tr><tr><td>502</td><td>Bad Gateway</td><td>Erudus is down or being upgraded.</td></tr><tr><td>503</td><td>Service Unavailable</td><td>Erudus may be up, but is overloaded with requests. Try again later.</td></tr><tr><td>504</td><td>Gateway timeout</td><td>Erudus is up, but the request couldn’t be serviced due to some failure within our stack. Try again later.</td></tr></tbody></table>

<br>


---

# Agent Instructions: 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:

```
GET https://developer.erudus.com/getting-started/requests-responses-and-error-codes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
