Взаимодействие с API сервисом в формате JSON

документация еженедельно дополняeтся, добавляются новые параметры полученные на странице товара

Общие положения

Доступ к сервсиу осуществляется через API-ключ из личного кабинета.
Суточный лимит на всех тарифах, не более 6 000 проверок товаров.

1. Авторизация по ключу

Для передачи ключа в запросе, необходимо использовать HTTP заголовок: KEY: Authorization VALUE: ключ

2. HTTP методы

POST - для создания сущностей GET - для получения информации

3. Создание задания

POST: https://apimarket.parserdata.ru/api/task/create/ В теле запроса необходимо передать город мониторинга и список товаров: 1. Выбор города мониторинга - region_id (список городов) 2. Передача товаров осуществляется одним из параметров: • site_product_ids - идентификаторы товаров Яндекс Маркета (ID моделей) • site_product_urls - ссылки на товары Яндекс Маркета
Пример передачи товаров 1 Тело запроса с идентификаторами товаров Яндекс Маркета, город мониторинга Москва: { "region_id": 213, "site_product_ids":[ "630030594", "650874000", "558171067", "630058598", "573324027", "572745038", "558163103", "653533063" ] }
Пример передачи товаров 2 Тело запроса с ссылками товаров Яндекс Маркета, город мониторинга Москва. Преимущество использования параметра site_product_urls в том, что можно передавать ссылку с выбранными фильтрами, например с заданным цветом товара или гарантией производителя, или любые другие фильтра выбранные на сайте в карточке товара. Важно, в ссылке должен присутствовать параметр product и offers: { "region_id": 213, "site_product_urls":[ "https://market.yandex.ru/product/630030594/offers?local-offers-first=1&how=aprice", "https://market.yandex.ru/product/650874000/offers?local-offers-first=1&how=aprice", "https://market.yandex.ru/product/558171067/offers?local-offers-first=1&how=aprice", "https://market.yandex.ru/product/630058598/offers?local-offers-first=1&how=aprice", "https://market.yandex.ru/product/573324027/offers?local-offers-first=1&how=aprice", "https://market.yandex.ru/product/572745038/offers?local-offers-first=1&how=aprice", "https://market.yandex.ru/product/558163103/offers?local-offers-first=1&how=aprice", "https://market.yandex.ru/product/653533063/offers?local-offers-first=1&how=aprice" ] }
Пример ответа на успешный запрос созданного задания: { "task_id": 123 } где 123, номер созданного задания

4. Проверка статуса задания

GET: https://apimarket.parserdata.ru/api/task/TASK_ID/products/ где TASK_ID, номер созданного задания Пример ответа, во время парсинга: { "count": 0, "next": null, "previous": null, "results": [ ], "region_id": 213, "status": "PARSING" }
Возможные статусы: SAVE_PRODUCTS – подготовка IN_PROGRESS – отправка PARSING – парсинг DONE – завершено

5. Получение результатов

При смене статуса на DONE, в теле ответа выводятся результаты, где: count – количество переданных идентификаторов товаров Маркета next – следующая страница с результатами (на одной странице 25 товаров) previous – предыдущая страница с результатами (если значение на странице null, вы находитесь на последней странице) results – массив с полученными данными region_id – идентификатор выбраного города status – статус задания
Пример ответа с данными после парсинга: { "count": 8, "next": "https://apimarket.parserdata.ru/api/task/123/products/?page=2, "previous": null, "results": [ { "site_product_id": 630030594, "site_product_url": null, "offers": [ { "price": 9000.0, "shop_name": "КомпьютерМаркет", "delivery_cost": 195.0, "delivery_region": "Доставка из Москвы", "price_with_delivery_cost": 9195.0 }, { "price": 9790.0, "shop_name": "HOLODILNIK.RU", "delivery_cost": 100.0, "delivery_region": "Доставка из Москвы", "price_with_delivery_cost": 9890.0 }, { "price": 10000.0, "shop_name": "QUKE.ru", "delivery_cost": 290.0, "delivery_region": "Доставка из Москвы", "price_with_delivery_cost": 10290.0 } ] }, { "site_product_id": 650874000, "site_product_url": null, "offers": [ { "price": 12990.0, "shop_name": "М.ВИДЕО", "delivery_cost": 0.0, "delivery_region": "Доставка из Москвы", "price_with_delivery_cost": 12990.0 }, { "price": 13000.0, "shop_name": "QUKE.ru", "delivery_cost": 290.0, "delivery_region": "Доставка из Москвы", "price_with_delivery_cost": 13290.0 }, { "price": 14000.0, "shop_name": "ВОЛЬТА", "delivery_cost": 0.0, "delivery_region": "Доставка из Ростова-на-Дону", "price_with_delivery_cost": 14000.0 }, { "price": 15990.0, "shop_name": "Цифроград", "delivery_cost": 0.0, "delivery_region": "Доставка из Ставрополя", "price_with_delivery_cost": 15990.0 }, { "price": 16000.0, "shop_name": "М.ВИДЕО", "delivery_cost": 0.0, "delivery_region": "Доставка из Москвы", "price_with_delivery_cost": 16000.0 } ] } ], "region_id": 213, "status": "DONE" }