Sobes.tech
Senior
88

Проектирайте API за генериране на банкова извлечение (PDF документ, който се генерира бавно). Какви крайни точки са необходими?

Компаниите бяха попитани
СБЕРСБЕР

Отговор от AI

sobes.tech AI

Для API генерации банковской выписки, учитывая, что генерация PDF может занимать длительное время, рекомендуется использовать асинхронный подход с несколькими эндпоинтами:

  1. POST /statements/generate

    • Запрос на создание новой выписки.
    • В теле запроса передаются параметры: период, счет, фильтры и т.п.
    • Возвращает уникальный statementId и статус "в обработке".
  2. GET /statements/{statementId}/status

    • Проверка статуса генерации выписки.
    • Возвращает статус: "в обработке", "готово", "ошибка".
  3. GET /statements/{statementId}/download

    • Скачивание готового PDF.
    • Возвращает файл, если статус "готово".
  4. DELETE /statements/{statementId} (опционально)

    • Удаление сгенерированной выписки для освобождения места.

Такой подход позволяет клиенту не ждать завершения генерации, а опрашивать статус и скачивать файл, когда он будет готов.