Содержание
Отчёт Маркета через API: сохраните файл, пока действует ссылка
Если выгрузка Маркета через API работала сразу, а сохранённая ссылка позже перестала открываться, сначала проверьте срок её действия. Для регулярной сверки нужен сам файл и описание запроса, по которому он получен. Одна ссылка не заменяет архив отчётности.
Разбор предназначен сотруднику учёта и специалисту по интеграции. Его результат: отчёт скачан, привязан к нужному запросу и доступен для дальнейшей проверки независимо от временного адреса.
Отделите готовность отчёта от успешного ответа
Метод получения отчёта вызывается после запуска генерации: GET v2/reports/info/{reportId}. Он возвращает состояние генерации и ссылку, если файл готов.
Верхний status: OK означает отсутствие ошибки обработки запроса. Готовность файла определяется отдельно по result.status:
| Значение | Что означает |
|---|---|
PENDING | Ожидание генерации |
PROCESSING | Генерация идёт |
DONE | Отчёт готов |
FAILED | Ошибка генерации |
Не принимайте успешный запрос проверки состояния за уже полученный отчёт. Рекомендуем отдельно отмечать в журнале интеграции завершение генерации и успешное сохранение файла: тогда будет видно, на каком этапе выгрузка остановилась.
Скачайте файл, пока ссылка действует
В документации указано: ссылка в поле file действует 60 минут с момента ответа. Каждый новый запрос информации об отчёте создаёт новую ссылку с ограниченным сроком. Маркет рекомендует сразу скачать файл и хранить его у себя.
Предлагаем такой порядок приёмки выгрузки:
- Сохраните
reportId, тип отчёта, кабинет и исходные параметры генерации. - Зафиксируйте состояние
DONEи время получения ответа. - Скачайте файл из
fileи убедитесь, что он открывается как ожидаемый отчёт, а не как сообщение об ошибке. - Сверьте период и состав данных с исходной задачей.
- Сохраните файл в рабочем хранилище с понятным названием, рядом оставьте параметры и время получения.
Выберите место хранения по правилам вашей организации. Не публикуйте временный адрес или выгрузку в общедоступных заметках: файл может содержать коммерческие сведения.
Если выгрузка не получилась
Когда отчёт готов, но старая ссылка перестала работать, получите информацию по тому же reportId заново и используйте актуальную ссылку. Сначала проверьте ответ, затем скачивание. Не начинайте с повторной генерации только потому, что истёк адрес.
Подстатус NO_DATA означает отсутствие данных для отчёта. Для TOO_LARGE документация предлагает уменьшить период или уточнить условия. При FAILED или NO_DATA проверьте исходные параметры, включая кампанию и период, если они применимы к выбранному отчёту.
Не записывайте неудачную выгрузку в учёте как подтверждённый нулевой результат. Сохраните параметры, статус и конкретную ошибку; укажите, какие данные ещё не сверены. Задача закончена, когда есть проверенный локальный файл либо явно описанная причина, почему получить его пока не удалось.
Комментарии 0