Sobes.tech
Senior
54

Navrhněte API pro generování bankovního výpisu (PDF dokument, který se generuje dlouho). Jaké endpointy jsou potřeba?

Společnosti byly požádány
СБЕРСБЕР

Odpověď od 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} (опционально)

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

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