Короткий ответ Эндпоинт запуска операции должен немедленно отвечать 202 Accepted с идентификатором задачи и ссылкой на статус, а не ждать завершения в рамках HTTP-запроса; клиент далее опрашивает отдельный эндпоинт статуса (или получает webhook по завершении). Как это работает подробнее 202 означает "запрос принят к обработке, но результат пока не готов" — в отличие от синхронных операций, где финальный статус известен сразу. Обработка переносится в фоновую задачу (воркер, очередь задач, например Celery/RQ/встроенный BackgroundTasks), а API-слой лишь регистрирует задачу и возвращает идентификатор. Пример кода Что использовать на практике Рекомендация. эндпоинт статуса должен возвращать состояние (pending/running/done/failed) и, при завершении, либо сам результат, либо ссылку на него (например, URL для скачивания отчёта); если ожидаемое время выполнения велико и известно заранее, можно дополнительно поддержать webhook-уведомление вместо постоянного polling клиентом. Выбор между частым коротким polling и webhoo