# Коды ответов

HTTP-коды ответов Statsnet API.

API возвращает соответствующий HTTP-код, указывающий, был ли запрос успешным (например, `200 OK`) или завершился ошибкой (например, `403 Forbidden`). Если запрос не удался, проверьте ответ API для получения дополнительной информации.

## Коды успешных ответов

| Код | Статус | Описание |
| --- | --- | --- |
| `200` | OK | Запрос выполнен успешно. |
| `201` | Created | Ресурс успешно создан. |
| `204` | No Content | Запрос выполнен успешно, но данные для возврата отсутствуют. |

## Коды ошибок клиента

| Код | Статус | Описание |
| --- | --- | --- |
| `400` | Bad Request | Запрос некорректен или содержит недопустимые параметры. |
| `401` | Unauthorized | Сессия или учётные данные истекли, либо API-ключ недействителен/отозван. |
| `402` | Payment Required | У аккаунта ключа нет активной подписки (отменена или истекла). |
| `403` | Forbidden | Нет доступа: анонимный запрос к защищённому эндпоинту или недостаточный тариф. |
| `404` | Not Found | Запрашиваемый ресурс не существует. |
| `409` | Conflict | Запрос конфликтует с текущим состоянием ресурса. |
| `422` | Unprocessable Entity | Тело запроса содержит семантические ошибки. |
| `429` | Too Many Requests | Исчерпан месячный лимит API-вызовов или превышена частота запросов. Смотрите заголовки `X-API-Calls-Used` и `X-API-Calls-Limit`. На тарифах с отчётами этот код также означает исчерпанную квоту отчётов периода. |

## Коды ошибок сервера

| Код | Статус | Описание |
| --- | --- | --- |
| `500` | Internal Server Error | На сервере произошла непредвиденная ошибка. |
| `502` | Bad Gateway | Сервер получил некорректный ответ от вышестоящего сервера. |
| `503` | Service Unavailable | Сервер временно недоступен. Повторите запрос позже. |

## Формат ответа с ошибкой

При неудачном запросе API возвращает JSON-объект с деталями ошибки:

**Пример ответа с ошибкой**

```json
{
  "status": 403,
  "message": "access denied"
}
```
