x-log-id
– ID лога, который потребуется сообщить в техподдержку при возникновении проблем.DeliveryCompany
.Параметр | Тип | Описание |
---|---|---|
deliveryCompanyId |
number | ID компании доставки. |
deliveryCompanyName |
string | Название компании доставки. |
deliveryCompanyLogo |
string | null | URL логотипа компании доставки. |
tariffName |
string | null | Название тарифа доставки. |
pickupCompanyId |
number | ID компании отгрузки. |
deliveryDriver |
string | Внутреннее название драйвера компании доставки. |
deliveryDays.min |
number | Минимальный срок доставки в днях. |
deliveryDays.max |
number | Максимальный срок доставки в днях. |
deliveryPlanDays.min |
number | Минимальный срок доставки в днях, без учёта выходных дней. |
deliveryPlanDays.max |
number | Максимальный срок доставки в днях, без учёта выходных дней. |
deliveryDate.from |
string | Минимальная дата доставки. |
deliveryDate.to |
string | Максимальная дата доставки. |
services |
object | Дополнительные услуги. Ключами объекта выступают ID услуг. |
priceCommissionDeclared |
number | Стоимость страховки в рублях. |
percentCommissionDeclared |
number | Процентная ставка страховки. |
priceCommissionCod |
number | Комиссия наложенного платежа наличными в рублях. |
percentCommissionCod |
number | Процентная ставка наложенного платежа наличными. |
priceCommissionCodCard |
number | Комиссия наложенного платежа картой в рублях. |
percentCommissionCodCard |
number | Процентная ставка наложенного платежа картой. |
priceCommissionAcquiring |
number | Комиссия за эквайринг в рублях. |
percentCommissionAcquiring |
number | Процентная ставка за эквайринг. |
isPost |
boolean | Является ли данная доставка доставкой почтой. |
specificity |
array | Особенности службы доставки. |
Только для доставки Почтой России и компаний курьерской доставки: | ||
cashPaymentAvailable |
boolean | Доступна ли оплата наличными при получении. |
cardPaymentAvailable |
boolean | Доступна ли оплата картой при получении. |
priceDelivery |
number | Чистая стоимость доставки. |
totalPrice |
number | Итоговая стоимость доставки, включающая в себя стоимость доп. услуг и комиссии. |
Только для компаний курьерской доставки: | ||
isExpress |
boolean | Является ли данная доставка экспресс-доставкой. |
timeSelectAvailable |
boolean | Доступен ли выбор даты и времени доставки. |
Только для компаний, доставляющих в пункт выдачи: | ||
points |
array | Массив точек самовывоза. |
PickupPoint
.Параметр | Тип | Описание |
---|---|---|
id |
number | ID точки самовывоза. |
name |
string | Название. |
longitude |
string | Долгота. |
latitude |
string | Широта. |
type |
number | Тип ПВЗ. |
description |
string | null | Описание как пройти к ПВЗ. |
address |
string | Адрес. |
schedule |
array | null |
График работы. Массив из 7 значений (пн-вс). |
metro |
array | null |
Ближайшие станции метро (до 3-х). Выводятся в виде объектов с полями:
|
district |
string | null | Район города. |
photos |
array | null | Массив URL фотографий ПВЗ. |
fittingAvailable |
boolean | Доступна ли услуга “Примерка”. |
checkupAvailable |
boolean | Доступна ли услуга “Осмотр вложения”. |
partialBuyoutAvailable |
boolean | Доступна ли услуга “Частичная выдача”. |
cashPaymentAvailable |
boolean | Доступна ли оплата наличными при получении. |
cardPaymentAvailable |
boolean | Доступна ли оплата картой при получении. |
union |
string | Точки, расположенные на карте слишком близко друг к другу, либо имеющие один и тот же адрес, имеют одинаковые значения данного параметра, что помогает выводить их на карте в виде единого маркера. |
deliveryCompanyId |
number | ID компании доставки. |
deliveryCompanyName |
string | Название компании доставки. |
deliveryDriver |
string | Внутреннее название драйвера компании доставки. |
deliveryDays.min |
number | Минимальный срок доставки в днях. |
deliveryDays.max |
number | Максимальный срок доставки в днях. |
deliveryDate.from |
string | Минимальная дата доставки. |
deliveryDate.to |
string | Максимальная дата доставки. |
deliveryHoldDays |
number | Количество дней, которое заказ будет храниться на ПВЗ. |
priceCommissionCod |
number | Комиссия наложенного платежа наличными в рублях. |
priceDelivery |
number | Чистая стоимость доставки для конкретного ПВЗ. |
totalPrice |
number | Итоговая стоимость доставки для конкретного ПВЗ, включающая в себя стоимость доп. услуг и комиссии. |
isFar |
boolean |
Содержит Такие ПВЗ выводятся, если в запрашиваемом населённом пункте нет ПВЗ. |
zipCode |
string | null | Почтовый индекс. |
DeliveryService
.Параметр | Тип | Описание |
---|---|---|
id |
number | ID услуги. |
name |
string | Название услуги. |
price |
number | Стоимость услуги в рублях. |
checked |
boolean |
Является ли данная услуга “выбранной” по умолчанию. Стоимость услуг, у которых этот параметр равен Стоимость услуг со значением |
required |
boolean |
Является ли данная услуга обязательной. Стоимость обязательных услуг содержится в общей сумме |
POST https://api.saferoute.ru/v2/calculator
Требуется авторизация
Заголовки запроса.
Имя заголовка | Обязательный | Описание |
---|---|---|
Shop-Id |
Нет |
ID магазина. Если не передан, в запросе требуется задать адрес отправителя в параметре |
Параметры запроса.
Имя параметра | Обязательный | Тип данных и возможные значения | Описание |
---|---|---|---|
reception.countryCode |
— | string |
Код страны получателя. По умолчанию |
reception.cityFias |
— | string | ФИАС населённого пункта получателя. |
reception.cityName |
— | string | Название населённого пункта получателя. |
reception.cityType |
— | string | Тип населённого пункта ('г' , 'д' , 'пос' и т.п.) получателя. |
reception.zipCode |
— | string | Почтовый индекс населённого пункта получателя. |
reception.region |
— | string | Регион получателя. |
reception.area |
— | string | Район в регионе получателя. |
reception.street |
— | string | Улица получателя. |
reception.house |
— | string | Дом получателя. |
reception.bulk |
— | string | Корпус получателя. |
reception.flat |
— | string | Квартира получателя. |
sender.countryCode |
— | string |
Код страны получателя. По умолчанию |
sender.cityFias |
— | string | ФИАС населённого пункта отправителя. |
sender.cityName |
— | string | Название населённого пункта отправителя. |
sender.cityType |
— | string | Тип населённого пункта ('г' , 'д' , 'пос' и т.п.) отправителя. |
sender.zipCode |
— | string | Почтовый индекс населённого пункта отправителя. |
sender.region |
— | string | Регион отправителя. |
sender.area |
— | string | Район в регионе отправителя. |
sender.street |
— | string | Улица отправителя. |
sender.house |
— | string | Дом отправителя. |
sender.bulk |
— | string | Корпус отправителя. |
sender.flat |
— | string | Квартира отправителя. |
pickupType |
— | number1 , 4 |
Требуется передавать только если не был задан магазин через заголовок |
products |
— | array |
Товары заказа. Передаются в виде объектов со следующими полями (все параметры передаются за единицу товара):
|
kits |
— | array |
Комплекты товаров заказа. Передаются в виде объектов со следующими полями:
|
priceDeclared |
— | number | Оценочная стоимость. |
priceCod |
— | number | Наложенный платёж. |
priceClient |
— | number | Стоимость доставки с клиента. Комиссия взимается как с наложенного платежа. |
pricePrePayClient |
— | number | Стоимость предоплаты за доставку с клиента. Влияет на комиссию эквайринга. |
discount |
— | number | Общая скидка на заказ (в рублях). |
marketplace.id |
— | number | null | ID маркетплейса. |
marketplace.warehouseId |
— | number | null | ID склада маркетплейса. |
marketplace.fbo |
— | boolean | Тип отгрузки FBO (продажа со склада маркетплейса). |
marketplace.fbs |
— | boolean | Тип отгрузки FBS (продажа со склада продавца). |
services |
— | array |
ID дополнительных услуг, которые необходимо вывести в данные транспортных компаний (свойство Стоимость этих услуг не будет добавлена в общую стоимость доставки |
servicesRequired |
— | array |
Обязательные дополнительные услуги. Компании, не поддерживающие эти услуги, не будут включены в список результатов. Стоимость этих услуг добавляется в общую стоимость доставки |
type |
— | number | Фильтр по типу доставки. Если передан, калькулятор вернёт только доставку указанного типа. |
companyIds |
— | array | Фильтр по компаниям доставки, позволяющий посчитать только отдельные компании. Передаётся в виде массива ID требуемых компаний. |
onlyCheap |
— | boolean | Вывод только вариантов доставки с самой низкой ценой. По умолчанию false . |
calcDeclared |
— | boolean | Учёт переданной оценочной стоимости (priceDeclared ) товаров. По умолчанию true . |
calcCod |
— | boolean | Учёт переданного наложенного платежа (priceCod ) товаров. По умолчанию true . |
hidePointFullInfo |
— | boolean | Если передано true , массив points вместо объектов с полными данными будет содержать только ID ПВЗ. |
applyWidgetSettings |
— | boolean | Применять ли настройки и правила виджетов. По умолчанию false . |
applyDefaultDimensions |
— | boolean |
Использовать ли габариты из настроек виджетов в качестве габаритов по умолчанию. По умолчанию При использовании |
timeout |
— | number | Время ожидания ответа от серверов транспортных компаний (в миллисекундах). Компании, данные от которых не были получены за указанное время, не попадут в выдачу. По умолчанию 20 000 мс. |
Габариты по местам: | |||
places |
— | array |
Места. Передаются в виде объектов со следующими полями:
|
Общие габариты: | |||
weight |
— | number | Общий вес заказа в кг. |
dimensions.width |
— | number | Общая ширина заказа в см. |
dimensions.height |
— | number | Общая высота заказа в см. |
dimensions.length |
— | number | Общая длина заказа в см. |
itemCount |
— | number | Общее количество мест. По умолчанию 1. |
volume |
— | number | Общий объём в м3. |
Пример ответа.
{
"1": [...], // Массив моделей DeliveryCompany (доставка в пункты выдачи)
"2": [...], // Массив моделей DeliveryCompany (доставка курьером)
"3": [...] // Массив моделей DeliveryCompany (доставка Почтой России)
}
В случае полного отсутствия вариантов доставки API вернёт 3 пустых массива.
POST https://api.saferoute.ru/v2/calculator/one
Требуется авторизация
Заголовки запроса.
Имя заголовка | Обязательный | Описание |
---|---|---|
Shop-Id |
Да | ID магазина. |
Type |
Да | Тип доставки. |
Company-Id |
Да | ID компании, доставку которой нужно посчитать. |
Параметры запроса идентичны параметрам предыдущего запроса для расчёта стоимости доставки, за исключением параметров type
и companyIds
– эти значения берутся из заголовков Type
и Company-Id
.
В ответ приходит отдельная модель DeliveryCompany
, либо пустой массив (если доставка невозможна).
POST https://api.saferoute.ru/v2/calculator/company
Требуется авторизация
Заголовки запроса.
Имя заголовка | Обязательный | Описание |
---|---|---|
Shop-Id |
Да | ID магазина. |
Параметры запроса.
Имя параметра | Обязательный | Тип данных и возможные значения | Описание |
---|---|---|---|
type | — | number | Тип доставки. Если передан, будут получены только доставки указанного типа. |
reception.cityFias | — | string | ФИАС населённого пункта. |
reception.zipCode | — | string | Почтовый индекс населённого пункта. |
reception.cityName | — | string | Название населённого пункта. |
reception.countryCode | — | string | Код страны. |
reception.addressString | — | string | Адрес доставки одной строкой (страна, тип и название населённого пункта). |
applyWidgetSettings | — | boolean | Если передано true , при определении списка доступных компаний будут применяться настройки и правила виджетов. |
Пример ответа (ключи соответствуют типам доставок).
{
"1": [4, 15, 36], // ID компаний с доставкой в пункты выдачи
"2": [7, 10, 22, 54], // ID компаний с курьерской доставкой
"3": [] // ID компаний доставки Почтой России (пустой массив - отсутствие вариантов)
}
ID собственных способов доставки имеют формат не чисел, а строк вида '{ID аккаунта}_{ID способа}'
.