Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
api_передача_заказов [2015/10/21 15:42] Максим |
api_передача_заказов [2017/06/05 11:18] (текущий) Алексей |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== API приема и передачи заказов ====== | + | ====== API передачи заказов Qnits ====== |
===== Основная информация ===== | ===== Основная информация ===== | ||
- | Для обмена данными с API Qnits используется формат JSON. Запросы в формате JSON передаются методом HTTP POST на следующий адрес: http://ваш_домен/api **Запрос всегда содержит:** * ключ method с именем вызываемого метода * ключ qnit_id с номером витрины * ключ token - авторизационный токен * ключ params - список параметров для вызываемого метода * Параметры qnit_id и token можно узнать в менеджер панели по адресу http:// ваш_домен/manager_mvc/settings/access | + | Для обмена данными с API Qnits используется формат JSON. |
+ | |||
+ | Запросы в формате JSON передаются методом HTTP POST на следующий адрес: | ||
+ | [[http://api.qnits.ru/api|http://api.qnits.ru/api]] либо [[http://ваш_домен/api|http://ваш_домен/api]] | ||
+ | |||
+ | |||
+ | Запрос всегда содержит: | ||
+ | |||
+ | * ключ method с именем вызываемого метода | ||
+ | * ключ qnit_id с номером витрины | ||
+ | * ключ token - авторизационный токен | ||
+ | * ключ params - список параметров для вызываемого метода | ||
+ | |||
+ | Параметры qnit_id и token можно узнать в менеджер панели по адресу | ||
+ | [[http://panel.qnits.ru/manager_mvc/settings/api|http://panel.qnits.ru/manager_mvc/settings/api]] | ||
+ | |||
==== Метод "CreateOrder" ==== | ==== Метод "CreateOrder" ==== | ||
Используется для передачи заказов в Qnits. | Используется для передачи заказов в Qnits. | ||
- | **Пример запроса** | + | Пример запроса |
+ | |||
+ | ''{ "token": "541c4a59bdad87039c7ae8df6af14785сaf7526f01a613f5bd894d615ee811e5", "qnit_id": 1, "method": "CreateOrder", "params": { "name": "Иванов Иван", "phone": "79123211232", "external_id": "2643", <nowiki>"products": [</nowiki> { "id": 1000587, "quantity": 1, }, { "id": 3044, "quantity": 2 } ] } }'' | ||
+ | === Параметры === | ||
+ | |||
+ | Параметры метода передаются в массиве '''params'''. Параметры, помеченные звездочкой* обязательны, остальные можно не передавать. | ||
+ | |||
+ | |Ключ |Тип |Описание ||| | ||
+ | |name* |Строка |Имя клиента в свободной форме ||| | ||
+ | |phone* |Строка |Номер телефона клиента в свободной форме ||| | ||
+ | |external_id* |Строка |Идентификатор заказа на внешней витрине, необходим для защиты от дублирования заказов. Если вы не храните на внешней витрине заказы, то можно передавать в данный параметр текущие дату+время ||| | ||
+ | |products* | Массив | Массив списка товаров для заказа состоит из списка объектов с полями ||| | ||
+ | |::: |::: | Ключ |Тип |Описание | | ||
+ | |::: |::: | id* |Число |Артикул товара можно узнать в библиотеке товаров | | ||
+ | |::: |::: | quantity* |Число |Количество товаров в заказе | | ||
+ | |::: |::: | price |Число | \\ Желаемая цена товара \\ \\ \\ Если не передана или передан ноль/пустое значение, то устанавливается текущая розничная цена по платформе + доп. наценка витрины \\ \\ Может быть выше текущей розничной цены по платформе соответственно партнерский бонус с продажи будет выше \\ \\ Может быть ниже текущей розничной цены по платформе, за счет партнерского бонуса. Но не ниже уровня, при котором бонус равен нулю. | | ||
+ | |::: |::: |name |Строка |Название товара в вашем магазине | | ||
+ | |address |Строка |Адрес клиента в свободной форме ||| | ||
+ | |secondaryPhone |Строка |Дополнительный телефон клиента, на случай если первый телефон не доступен ||| | ||
+ | |email |Строка |Email клиента ||| | ||
+ | |comments |Строка |Комментарий(Виден клиенту) ||| | ||
+ | |clientIpAddress | Строка| ip адрес клиента в формате ipv4\\ \\ Осторожно используйте данный параметр — если переданный адрес не будет принадлежать клиенту, заказ может быть определен как подозрительный ||| | ||
+ | |utmParams | Массив| Массив UTM меток ||| | ||
+ | |::: |::: | Ключ | Тип | Описание | | ||
+ | |::: |::: | utm_cid | Строка | субаккаунт | | ||
+ | |::: |::: | utm_source | Строка | Метка utm_source | | ||
+ | |::: |::: | utm_medium | Строка | Метка utm_medium | | ||
+ | |::: |::: | utm_campaign | Строка | Метка utm_campaign | | ||
+ | |::: |::: | utm_content | Строка | Метка utm_content | | ||
+ | |::: |::: | utm_term | Строка | Метка utm_term | | ||
+ | |||
+ | |||
+ | В ответ на запрос сервер вернёт: | ||
- | * { | + | |Код |Описание ||| |
- | * "token": "541c4a59bdad87039c7ae8df6af14785сaf7526f01a613f5bd894d615ee811e5", | + | |201 |Заказ успешно создан, в ответе будет JSON массив со следующими полями: ||| |
- | * "qnit_id": 1, | + | |::: | Ключ |Тип |Описание | |
- | * "method": "CreateOrder", | + | |::: | status |Строка |статус создания «Ок» | |
- | * "params": { | + | |::: | order_id |Число |Номер созданного заказа | |
- | * "name": "Иванов Иван", | + | |::: | order_url |Строка |ссылка на заказ на витрине платформы, по данной ссылке можно делать редирект для клиента, чтобы он мог выбрать способ оплаты или ознакомиться с заказом | |
- | * "phone": "79123211232", | + | |400 |Ошибка во вводных данных, в ответе будет JSON массив со следующими полями: ||| |
- | * "external_id": "2643", | + | |::: | Ключ |Тип |Описание | |
- | * "products": [ | + | |::: | status |Строка |статус создания, «ERROR» | |
- | * { | + | |::: | errors |Массив |массив ошибок в формате JSON | |
- | * "id": 1000587, | + | |
- | * "quantity": 1, | + | |
- | * }, | + | |
- | * { | + | |
- | * "id": 3044, | + | |
- | * "quantity": 2 | + | |
- | * } | + | |
- | * ] | + | |
- | * } | + | |
- | * } | + | |
- | {{:pasted:20150824-121652.png}} | + | \\ |