Описание методов API
Инструмент для подключения маркетплейсов, интернет-магазинов и других систем к сервису «Маркетплейсы. Отслеживание заказов»
Содержание страницы
Термины и определения
Сервис (OMS) – сервис «Маркетплейсы. Управление заказами» в системе «Одно окно».
Интегратор - контрагент РЭЦ, который получил доступ к функциональности Сервиса посредством универсального API для Интегратора. Интеграция с eBay и Amazon осуществляется по уже разработанному eBay и Amazon API, поэтому к ним не применяется термин "Интегратор" в контексте данного документа.
ИС Интегратора - информационная система Интегратора.
ЭТП - электронная торговая площадка (Amazon, eBay).
ЭТП-аккаунт - сущность, которая хранит в себе ключи и токены для обращения к API ЭТП, а также для авторизации и аутентификации аккаунта Экспортера в API ЭТП.
Листинг - объявление о продаже товара в ЭТП
ЭТП-карточка товара - листинг, импортированный в Сервис
Описание порядка функционирования
1.1. На рисунке 1.1. иллюстрируется порядок выполнения операций при подключении ЭТП-аккаунта и импорте товаров и заказов. Описание шагов, отраженных на рисунке 1.1, приведено в таблице 1.1.
Рисунок 1.1. - Порядок выполнения операций при подключении ЭТП-аккаунта и импорте товаров и заказов.
Таблица 1.1. - Подключение ЭТП-аккаунта, импорт товаров и заказов.
Подключение ЭТП-аккаунта
Импорт товаров из ЭТП
Подключение ЭТП-аккаунта
Импорт заказов из ЭТП
1.2. На рисунке 1.2. иллюстрируется порядок выполнения операций при подтверждении связей ЭТП-карточки товара и карточки продукции Каталога. Описание шагов, отраженных на рисунке 1.2., приведено в таблице 1.2.
Рисунок 1.2. - Порядок выполнения операций при подтверждении связей ЭТП-карточки товара и карточки продукции Каталога.
Таблица 1.2. - Подтверждение связей ЭТП-карточки товара и карточки продукции Каталога.
1.3. На рисунке 1.3 иллюстрируется порядок выполнения операции проверки наличия новых листингов в ИС ЭТП. Описание шагов, отраженных на рисунке 1.3, приведено в таблице 1.3.
Рисунок 1.3 - Порядок выполнения операции проверки наличия новых листингов в ИС ЭТП.
Таблица 1.3 - Проверка наличия новых листингов в ИС ЭТП.
1.4. На рисунке 1.4. иллюстрируется порядок выполнения операции проверки наличия новых заказов в ИС ЭТП. Описание шагов, отраженных на рисунке 1.4., приведено в таблице 1.4.
Рисунок 1.4. - Порядок выполнения операции проверки наличия новых заказов в ИС ЭТП.
Таблица 1.4. - Проверка наличия новых заказов.
1.5. На рисунке 1.5. иллюстрируется порядок выполнения операции создания отправления заказа в ИС ЭТП. Описание шагов, отраженных на рисунке 1.5., приведено в таблице 1.5.
Рисунок 1.5. - Порядок выполнения операции создания отправления заказа в ИС ЭТП.
Таблица 1.5. - Создание отправления заказа в ИС ЭТП.
1.6. На рисунке 1.6. иллюстрируется порядок выполнения операции отмены заказа в Сервисе OMS. Описание шагов, отраженных на рисунке 1.6., приведено в таблице 1.6.
Рисунок 1.6. - Порядок выполнения операции отмены заказа в Сервисе OMS.
Таблица 1.6. - Отмена заказа в Сервисе OMS.
1.7. На рисунке 1.7. иллюстрируется порядок выполнения операции синхронизации товарного остатка в ИС ЭТП. Описание шагов, отраженных на рисунке 1.7., приведено в таблице 1.7.
Рисунок 1.7. - Порядок выполнения операции синхронизации товарного остатка в ИС ЭТП.
Таблица 1.7. - Синхронизация товарного остатка в ИС ЭТП.
1.8. На рисунке 1.8. иллюстрируется порядок выполнения операции обмена refresh_token на access_token в ИС ЭТП. Описание шагов, отраженных на рисунке 1.8., приведено в таблице 1.8.
Рисунок 1.8. - Порядок выполнения операции обмена refresh_token на access_token в ИС ЭТП.
Таблица 1.8. - Обмен refresh_token на access_token в ИС ЭТП.
Описание методов программного интерфейса
2.1. Для интеграции с API Сервиса на стороне Интегратора должны быть реализованы следующие методы API:

2.1.1. URI авторизации OAuth, на который пользователь будет переходить из Сервиса при подключении ЭТП-аккаунта: GET {oauth2_url}?redirect_uri={redirect_uri}&client_id={clientid}&response_type=code&state={state}&scope={scope}. Описание параметров запроса приведено в Таблице 2.1.1.

Таблица 2.1.1. – Описание параметров вызова URI авторизации OAuth (обязательные поля выделены жирным).
2.1.2. URI перенаправления OAuth, который ИС Интегратора загружает в браузер после согласия или отказа пользователя на авторизацию Сервиса:

2.1.2.1. POST {redirect_uri}/accept?state={state}&code={code} - в случае успешного предоставления доступа Сервису к ИС Интегратора. Описание параметров запроса приведено в Таблице 2.1.2.1.

Таблица 2.1.2.1. – Описание параметров запроса, вызываемого в случае успешного предоставления доступа Сервису (обязательные поля выделены жирным).
2.1.2.2. POST {redirect_uri}/reject?state={state}&error={error}&error_description={error_description} - в случае отказа в предоставлении доступа Сервису к ИС Интегратора или в случае неуспешного предоставления доступа. Описание параметров запроса приведено в Таблице 2.1.2.2.

2.1.2.2. – Описание параметров запроса, вызываемого в случае отказа или неуспешного предоставления доступа Сервису (обязательные поля выделены жирным).Таблица
2.1.3. Метод обмена oauth кода на refresh token в ИС Интегратора: POST {oauth2_url}?grant_type=authorization_code&code={code}&client_id={client_id}&client_secret={client_secret}. Описание параметров запроса и ответа приведено в Таблицах 2.1.3.1. и 2.1.3.2.

Таблица 2.1.3.1 – Описание параметров запроса обмена oauth кода на refresh token в ИС Интегратора (обязательные поля выделены жирным).
Таблица 2.1.3.2. – обмена oauth кода на refresh token в ИС Интегратора Описание параметров ответа на запрос (жирным выделены поля, которые всегда возвращаются в ответе).
2.1.4. Метод получения списка Листингов (товаров) в ИС Интегратора: GET {request_url}/inventoryItems. Описание параметров запроса и ответа приведено в Таблицах 2.1.4.1. и 2.1.4.2.

Таблица 2.1.4.1 – Описание параметров запроса получения списка Листингов (товаров) в ИС Интегратора (обязательные поля выделены жирным).
Таблица 2.1.4.2 – Описание параметров ответа на запрос получения списка Листингов (товаров) в ИС Интегратора (жирным выделены поля, которые всегда возвращаются в ответе).
2.1.5. Метод получения списка Заказов из ИС Интегратора: GET {request_url}/orders. Описание параметров запроса и ответа приведено в Таблицах 2.1.5.1. и 2.1.5.2.

Таблица 2.1.5.1. – Описание параметров запроса получения списка Заказов из ИС Интегратора (обязательные поля выделены жирным).
Таблица 2.1.5.2. – Описание параметров ответа на запрос получения списка Заказов из ИС Интегратора (жирным выделены поля, которые всегда возвращаются в ответе).
2.1.6. Обновление доступного количества товара в листингах в ИС Интегратора: PATCH {request_url}/inventoryItems/{inventoryItemId}. Описание параметров запроса и ответа приведено в Таблицах 2.1.6.1., 2.1.6.2. и 2.1.6.3.

Таблица 2.1.6.1. – Описание параметров запроса обновление доступного количества товара в листингах в ИС Интегратора (обязательные поля выделены жирным).
Таблица 2.1.6.2. – Описание входных параметров запроса обновление доступного количества товара в листингах в ИС Интегратора (обязательные поля выделены жирным).
Таблица 2.1.6.3. – Описание параметров ответа на запрос обновления доступного количества товара в листингах в ИС Интегратора (жирным выделены поля, которые всегда возвращаются в ответе).
2.1.7. Метод получения перечня возможных перевозчиков в ИС Интегратора: GET {request_url}/shippingCarrierDetails. Описание параметров запроса и ответа приведено в Таблицах 2.1.7.1. и 2.1.7.2.

Таблица 2.1.7.1. – Описание параметров запроса получения перечня возможных перевозчиков. (обязательные поля выделены жирным).
Таблица 2.1.7.2. – Описание параметров ответа на запрос получения перечня возможных перевозчиков. (жирным выделены поля, которые всегда возвращаются в ответе).
2.1.8. Создание отправления заказа: POST {request_url}/orders/{orderId}/shippingFulfillment. Описание параметров запроса и ответа приведено в Таблицах 2.1.8.1., 2.1.8.2. и 2.1.8.3.

Таблица 2.1.8.1. – Описание параметров запроса создания отправления заказа в ИС Интегратора (обязательные поля выделены жирным).
Таблица 2.1.8.2. – Описание параметров тела запроса создания отправления заказа в ИС Интегратора (обязательные поля выделены жирным).
Таблица 2.1.8.3. – Описание параметров ответа на запрос создания отправления заказа в ИС Интегратора (жирным выделены поля, которые всегда возвращаются в ответе).
2.1.9. Получение допустимых причин отмены в ИС Интегратора: GET {request_url}/cancellationAvailability. Описание параметров запроса и ответа приведено в Таблицах 2.1.9.1. и 2.1.9.2.

Таблица 2.1.9.1. – (обязательные поля выделены жирным).Описание параметров запроса получения допустимых причин отмены в ИС Интегратора
Таблица 2.1.9.2. – Описание параметров ответа на запрос получения допустимых причин отмены в ИС Интегратора (жирным выделены поля, которые всегда возвращаются в ответе).
2.1.10. Отмена заказа в ИС Интегратора: POST {request_url}/cancellation. Описание параметров запроса и ответа приведено в Таблицах 2.1.10.1. и 2.1.10.2.

Таблица 2.1.10.1. – Описание параметров запроса отмены заказа в ИС Интегратора (обязательные поля выделены жирным).
Таблица 2.1.10.2. – Описание параметров ответа на запрос отмены заказа в ИС Интегратора (жирным выделены поля, которые всегда возвращаются в ответе).
2.1.11. Обмен refresh_token на access_token в ИС Интегратора: POST {oauth2_url}?grant_type=refresh_token&refresh_token={refresh_token}&client_id={client_id}&client_secret={client_secret}. Описание параметров запроса и ответа приведено в Таблицах 2.1.11.1. и 2.1.11.2.

Таблица 2.1.11.1. – Описание параметров запроса обмена refresh_token на access_token в ИС Интегратора (обязательные поля выделены жирным).
Таблица 2.1.11.2. – Описание параметров ответа на запрос обмена refresh_token на access_token в ИС Интегратора (жирным выделены поля, которые всегда возвращаются в ответе).
2.2. Для выполнения запросов, перечисленных в п.п. 2.1.4, 2.1.5, 2.1.6, 2.1.7, 2.1.8, 2.1.9, 2.1.10, необходимо передать в заголовке запроса Autorization: Bearer <access_token>

2.3. В заголовках ответов на все запросы, перечисленные в п.2. необходимо передать Content-Type: application/json