Что такое Pull API в REST?

«Что такое Pull API в REST?» — вопрос из категории API тестирование, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

REST Pull API — это архитектурный стиль взаимодействия, при котором клиент явно запрашивает ("вытягивает") данные с сервера по его инициативе. Это противоположность push-модели (например, вебхукам), где сервер активно отправляет данные клиенту.

Ключевые характеристики:

  • Инициатива клиента: Сервер пассивен и ждет запросов.
  • Использование HTTP: Применяются стандартные методы: GET (получить), POST (создать), PUT/PATCH (обновить), DELETE (удалить).
  • Формат данных: Ответы обычно в формате JSON или XML.
  • Управление состоянием: Статус операции передается через HTTP-коды ответа (200 OK, 404 Not Found, 500 Internal Server Error).

Пример GET-запроса для получения пользователя:

curl -X GET 'https://api.example.com/v1/users/123' 
     -H 'Authorization: Bearer <token>'

Пример успешного ответа (JSON):

{
  "id": 123,
  "name": "Иван Иванов",
  "email": "ivan@example.com",
  "status": "active"
}

Преимущества: простота, прозрачность, кэшируемость. Недостаток: клиент должен периодически опрашивать сервер для получения актуальных данных, что может быть неэффективно.