Описание метода в api версии 2

Назначение

Возвращает список новых и измененных заказов клиентов с описанием их состояния, начиная от указанного момента времени.

Предполагаемый порядок работы с методом списка заказов: 

  • В запросе указывается момент времени в поле RequestTimeBoundaryMs для отбора всех заказов измененных после этого момента времени. Если нужно отобрать все заказы с "начала времен", то нужно указать момент времени равный 0 (ноль).
  • В ответе возвращается список новых и измененных заказов от указанного в запросе момента времени, а также возвращается новый момент времени для следующего запроса LastChangeBoundaryMs, этот момент времени необходимо сохранить в базе данных приложения, чтобы использовать для выполнения следующего запроса списка новых и измененных заказов. 

Пример запроса JSON

Пример демонстрирует вызов метода /order/list.

Пример запроса

POST /ExternalExchange/v2/order/list HTTP/1.1 
Content-Type: application/json; 

{
 "merchantId": "000000001",
 "RequestTimeBoundaryMs": 63749385824867
}
JS

Пример успешного ответа

{
"orders": [
		{
			"merchantId": "000000002",
			"uuid": "293f6b70-25c2-11eb-a89a-002590fc819c",
			"date": "2020-11-13T15:07:19Z",
			"number": "0000-000001",
			"orderNumberInPersonalCabinet": "40221314-0657",
			"stockId": "f34a28a5-ea38-40f0-9612-1ef4915aceea",
			"orderAmount": 1250,
			"originalShipmentNumber": "40221314-0657-2",
			"orderId": "402213140",
			"orderShipmentDate": "2020-11-13T15:04:49Z",
			"status": "AWAITING_PACKAGING"
		},
		{
			"merchantId": "000000002",
			"uuid": "aa79f318-27e8-11eb-2c9b-002590fc819c",
			"date": "2020-11-16T08:48:57Z",
			"number": "0000-000002",
			"orderNumberInPersonalCabinet": "20111140-0140",
			"stockId": "f34a28a5-ea38-40f0-9612-1ef4915aceea",
			"orderAmount": 2500,
			"originalShipmentNumber": "20111140-0140-1",
			"orderId": "201111400",
			"orderShipmentDate": "2020-11-16T08:48:40Z",
			"status": "AWAITING_PACKAGING"
		}
	],
	"message": "Request was valid",
	"LastChangeBoundaryMs": 63741113613944,
	"successInAllSubrequests": true,
	"merchantId": "000000002",
	"success": true
}
JS

Пример ответа c ошибками

Пример 1 - не найден личный кабинет по коду:
{
	"orders": [],
	"message": "Personal cabinet was not found by merchantId = 000000005",
	"successInAllSubrequests": false,
	"merchantId": "000000005",
	"success": false
}

Пример 2 - не заполнена граница запроса:
{
	"orders": [],
	"message": "RequestTimeBoundaryMs is not specified in the request 000000001",
	"successInAllSubrequests": false,
	"merchantId": "000000001",
	"success": false
}

Пример 3 - превышение периода запроса более 3 месяцев:
{
	"orders": [],
	"message": "Request depth exceeds max possible value of 3 months",
	"successInAllSubrequests": false,
	"merchantId": "000000001",
	"success": false
}
JS

Описание параметров запроса


ПараметрТипОбязателенОписание
1merchantIdstringДа

Внутренний идентификатор личного кабинета торговой площадки (Справочник "Подключения к личным кабинетам"). Используется для поиска "Подключения к личному кабинету". По найденному подключению возвращается список заказов.

2RequestTimeBoundaryMsdecimalДа

Момент времени в миллисекундах (в UTC, начиная с 01.01.0001 00:00:00).

Метод будет возвращать изменения по заказам клиента от переданного момента времени в параметре до текущего момента времени. 

Ограничения:

  • Максимальный период запроса изменений заказов клиентов составляет 3 месяца.

Описание параметров ответа


ПараметрТипОбязателенОписание

ordersМассивНет

Массив заказов клиентов с описанием. Может быть пустым при ошибке.

1merchantIdstringДаВнутренний идентификатор личного кабинета торговой площадки
2uuidstringДаВнутренний идентификатор 1С элемента "Заказы торговых площадок" в Маркете
3datestringДаДата документа 1С "Заказа клиента"
4numberstringДаНомер документа 1С "Заказа клиента"
5orderNumberInPersonalCabinetstringДаНомер заказ клиента в личном кабинете торговой площадки
6stockIdstringДа, начиная с версии 11 апи маркетаИдентификатор склада
7orderAmountdecimalДаСумма заказа клиента
8originalShipmentNumberstringДа

Исходный номер отправки - в Ozon и Яндекс устанавливают исходный номер отправления при создании заказа. Для Яндекс это поле order.shipments.id данных заказа.

9orderShipmentDatestringДаДата отгрузки заказа клиента в личном кабинете торговой площадки
10orderIdstringДаКод элемента "Заказы торговых площадок" в Маркете
11statusstringДа

Текстовый идентификатор статуса заказа клиента. 

Возможные значения:

  • "AWAITING_APPROVE" - Подтверждение
  • "AWAITING_PACKAGING" - Комплектация
  • "PACKED" - Скомплектован
  • "SHIPPED" - Отгружен
  • "DELIVERED" - Доставлен
  • "CANCELLED" - Отменен
  • "SOLD" - Отражена реализация
  • "UNDEFINED" - не определен


Параметры
12messagestringДа

Описание результата запроса.

  • "Request was valid" - Успешный запрос
  • "merchantId is not specified in request" - Не заполнен идентификатор мерчанта (код подключения к личному кабинету)
  • "Personal cabinet was not found by merchantId" - Не удалось найти подключение к личному кабинету по переданному коду мерчанта
  • "RequestTimeBoundaryMs is not specified in the request" - Не передана граница запроса данных в миллисекундах
13LastChangeBoundaryMsdecimalДаНовая граница запроса данных. Момент времени в миллисекундах (в UTC, начиная с 01.01.0001 00:00:00) до которого были отправлены данные по заказам клиентов. По умолчанию это текущий момент времени вызова сервиса /order/list. В дальнейшем можно передавать во входящий параметр запроса RequestTimeBoundaryMs.
14successInAllSubrequestsbooleanДа

Статус выполнения подзапросов метода

  • true - все подзапросы метода выполнены успешно
  • false - подзапрос выполнен с ошибкой. Описание ошибки см. в параметре message
15merchantIdstringДаВнутренний идентификатор личного кабинета торговой площадки.
16successbooleanДа

Общий статус запроса

  • true - запрос успешный
  • false - выполнен с ошибкой