Коллекции для партнеров
Загрузите готовые коллекции и импортируйте их в Postman для тестирования API.
Список коллекций:
Инструкция по работе с коллекциями
Структура запросов
В разделе Collections внутри главной корневой папки лежит несколько папок:
-
Menu – запросы для парсинга меню:
Выдача меню/номенклатуры
.Стоки/Stocks
– выдача позиций меню недоступных для заказа на текущий момент.Promo
– выдача акционных блюд в связке с меню (только для ресторанов).
-
Slots/Слоты
– методы получения слотов в каталоге и корзине (только для магазинов на слотах). -
Order (Заказы)
– запросы по ручкам заказа:POST /order
– отправка заказа.GET /order/{order_id}
– выдача актуальной информации о заказе.DELETE /order/{order_id}
– отмена заказа в системе ресторана (со стороны Яндекса).PUT /order/{order_id}
– обновление заказа в системе ресторана.GET /order/{order_id}/status
– выдача актуального статуса заказа в системе ресторана.
-
Метод получения списка заведений партнера
GET /restaurants
. -
Метод получения токена авторизации
POST /security/oauth/token
.
Работа с окружением
Для удобства и скорости выполнения запросов, изменяемые параметры выведены в переменные. Перед началом работы добавьте их в окружение.
-
Создайте новое окружение на вкладке
Environments
. -
Введите имя окружения и сохраните его.
-
В столбце Variable добавьте необходимые параметры. В столбце Current_value введите значения нужных параметров:
-
Сохраните изменения. Чтобы изменить значения переменных, перейдите на вкладку Редактирование.
Отправка запросов
-
Авторизация
-
Нажмите на нужный запрос и перейдите на него.
-
В теле запроса (вкладка Body) убедитесь, что указаны необходимые переменные, а значения
grant_type
иscope
соответствуют кредам:- Заголовок запроса
application/x-www-form-urlencoded
(соответствует спецификации) - При запросе токена заголовок авторизации не требуется – на вкладке Authorization должен быть установлен
type = "no auth"
, а на вкладкеHeaders
заголовок авторизации не должен быть включен:
- Заголовок запроса
-
Нажмите Send, чтобы отправить запрос.
-
-
Запрос на получение меню или номенклатуры
- Получить токен авторизации.
- Перейти к запросу
GET {host}/menu/{restaurant_id}/composition
илиGET /{host}/nomenclature/{place_id}/availability
. - Убедиться, что полученный токен применился корректно:
- На вкладке Authorization используется Type "OAuth 2.0".
- На вкладке Headers токен указан в значении
(value)
ключаAuthorization
:
- Нажать Send, чтобы отправить запрос.
Примечание
В запросах на получение меню/номенклатуры учтены проверки на успешный ответ (код 200) и коды ошибок 401 (запрос без авторизации) и 404 (сэмулирован запрос с невалидным place_id). Там проверяются заголовки и тела ответов на соответствие спецификации.
Остальные запросы выполняются аналогично. Проверки заголовков и тела ответа учитывают только успешный код ответа (200).
Проверка результатов тестов
Для запросов получения меню или стоков, и данных по заказам внутри вкладки Tests
написаны скрипты автопроверок на наиболее грубые ошибки, к которым чувствительна система.
После выполнения запроса результаты тестов выводятся в блоке Response
-> Tests Results
Расшифровка статусов тестов
-
Content-Type is present and correct value
– корректный заголовок (Content Type) в ответе. -
Validate JSON schema
– схема ответа соответствует спецификации. -
Date in lastChange is present in correct format
– параметр lastChange соответствует формату RFC3339 с дробной частью секунд и регулярному выражению. -
The price should not be <= 0
– цена товара ненулевая. -
mxikCodeUz is exactly 17 symbols long | AssertionError: expected +0 to equal 54
– коды ИКПУ (актуально только для Узбекистана) соответсвуют формату (17 цифр). -
The measureUnit one of [г, мл, g, ml]
– единица измерения соответствует допустимым значениям (граммы и миллилитры). -
Id in items are unique - все id товаров уникальны.
– проверка на"categoryId": null
. В этом случае id таких категорий будут выведены в консоль. -
All categoryId of items exist in categories id
– все id категорий, на которые ссылаются айтемы, объявлены в массиве категорий. -
Images links lead to picture
– все ссылки на изображения содержат допустимые разрешения. -
Response timeout is within acceptable range
- Время ожидания ответа на запрос находится в пределах допустимого диапазона. -
PASS /FAIL
– статус прохождения тестов.