Главная API Как получить PDF-отчёт результатов тестирования через API

Как получить PDF-отчёт результатов тестирования через API

Обновлено Apr 28, 2026

Endpoint GET /api/v1/tests/reports/pdf возвращает PDF-отчёт тестирования по uniqueId. В query нужно передать uniqueId, а lang можно передать для выбора языка PDF-отчёта. Перед выдачей PDF сервер проверяет, что отчёт принадлежит текущей компании.

Какой endpoint используется?

Используется GET /api/v1/tests/reports/pdf. Endpoint возвращает binary PDF file по уникальному идентификатору отчёта по тестированию.

Параметр Значение
Method GET
Endpoint /api/v1/tests/reports/pdf
Base URL [https://smartway.pro](https://smartway.pro)
Auth Bearer token

Для чего используется этот API endpoint?

Endpoint используется для загрузки или открытия PDF-отчёта тестирования. Его применяют после получения uniqueId из списка отчётов по тестированию.

Какие предварительные условия нужны перед выполнением запроса?

  • Нужен Bearer token с company context.

  • Token должен содержать scope tests.read.

  • Нужен uniqueId отчёта по тестированию, принадлежащего текущей компании.

Предусловие Описание Обязательно
access_token Bearer token с company context Да
tests.read Scope для чтения отчётов по тестированию Да
uniqueId Уникальный идентификатор отчёта по тестированию Да

Какие параметры нужно передать в запросе?

Headers

Header Тип Обязательно Описание
Authorization string Да Bearer token в формате Bearer <access_token>
Accept string Да application/pdf

Path parameters

Path parameters отсутствуют.

Query parameters

Параметр Тип Обязательно Описание
uniqueId string Да Уникальный идентификатор отчёта по тестированию
lang string Нет Язык PDF-отчёта; default en, доступные языки uk, ru, en

Request body

Request body не используется.

curl-пример

curl -X GET 'https://smartway.pro/api/v1/tests/reports/pdf?uniqueId=abc12345&lang=ru' \
  -H 'Authorization: Bearer <access_token>' \
  -H 'Accept: application/pdf' \
  --output test-report-abc12345.pdf

Какой ответ возвращает API?

Успешный запрос возвращает 200 OK и binary PDF file. Успешный ответ содержит Content-Type: application/pdf и Content-Disposition: inline; filename=test-report-<uniqueId>.pdf.

JSON response body не используется, потому что ответ является binary PDF file.

Что означают поля в ответе API?

Недостаточно данных для описания полей ответа.

Что происходит под капотом?

  • Перед выдачей PDF сервер проверяет, что отчёт принадлежит текущей компании.

  • Для доступа нужен scope tests.read.

Какие edge cases нужно учитывать?

Сценарий Поведение API Что сделать интегратору
uniqueId не найден API возвращает 404 Not Found Проверить uniqueId из списка отчётов по тестированию
Отчёт не принадлежит текущей компании API возвращает 404 Not Found Использовать только uniqueId, доступные в tenant-контексте текущей компании
lang не передан API использует en Передать lang, если нужен другой язык PDF

Какие ошибки может вернуть API?

HTTP status Описание
401 Unauthorized Отсутствует или невалидный Bearer token
403 Forbidden Недостаточно прав
404 Not Found Отчёт не найден или не принадлежит текущей компании
500 Internal Server Error Неожиданная ошибка
503 Service Unavailable Сбой сервиса

Как использовать результат в следующих API-запросах?

Значение uniqueId берётся из ответа POST /api/v1/tests/reports/search. Результат PDF-запроса нужно сохранять в файл или открывать как PDF-документ.

Пример получения uniqueId из списка отчётов:

curl -X POST 'https://smartway.pro/api/v1/tests/reports/search?lang=ru' \
  -H 'Authorization: Bearer <access_token>' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
    "page": 0,
    "size": 20,
    "view": "all"
  }'

Каких ошибок интегратору стоит избегать?

  • Передавать uniqueId, который не принадлежит текущей компании.

  • Не указывать Accept: application/pdf.

  • Ожидать JSON-ответ вместо binary PDF file.

  • Вызывать endpoint без scope tests.read.

FAQ

Какой параметр обязателен?

Обязательный query parameter — uniqueId.

Какой язык PDF можно запросить?

Параметр lang поддерживает uk, ru, en; если его не передать, используется en.

Что возвращает API?

API возвращает binary PDF file с Content-Type: application/pdf.

Что будет, если отчёт не принадлежит компании?

API вернёт 404 Not Found.

Какой scope нужен?

Для доступа нужен scope tests.read.