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

# Ошибки

> Коды ответов API и что с ними делать.

Успешные ответы приходят в JSON. Ошибки `400`, `401` и `403` тоже в JSON, а `404` и `500` приходят HTML-страницей. Поэтому сначала проверяйте код ответа и заголовок `Content-Type`, а потом разбирайте тело.

| Код | Когда | Тело | Что делать |
| - | - | - | - |
| `200`, `201` | Успех | JSON. У `complete_upload` и `delete_list` тело пустое | — |
| `400` | Ошибка в данных запроса | `{"title": ["This field is required."]}`: поле и список ошибок | Исправьте поля из ответа |
| `401` | Нет токена, он истёк или неверный | `{"detail": "…"}` | Получите новый токен, см. [Авторизация](/authentication) |
| `403` | Нет прав на пространство или его не существует | `{"detail": "You do not have permission to perform this action."}` | Проверьте `space_id` и [права](/api-reference/spaces/rights) |
| `404` | Нет такого адреса или записи. У `result/`: обработку не запускали | HTML | Проверьте адрес и `audio_id` |
| `500` | Ошибка на стороне AiGenda. У `result/`: обработка упала | HTML | Повторите позже. Для `result/` см. [Статусы](/processing/status) |

## Повторы

| Запрос | Повторять при сбое сети или `5xx`? |
| - | - |
| `GET` любой | Да, с паузой 2, 4, 8 секунд |
| `POST /api/token/` | Да, 1–2 раза через 1–2 секунды |
| `PUT` части файла | Да, по той же ссылке, пока она не истекла |
| `POST …/complete_upload/` | Сначала проверьте `is_uploaded` в `info/`. Если `false`, повторите |
| `POST …/audio/`, `by_url/`, `by_youtube/`, `meeting/` | **Нет.** Каждый вызов создаёт новую запись. Сначала проверьте, не создалась ли она, см. [Надёжная интеграция](/reference/best-practices) |
| `POST /api/audio/classify/` | Нет. Сначала проверьте статус в `result/` |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.