Поиск по сайту

API
Главная / API - Прайс-лист

Прайс-лист

Обновлено 11.06.2021
159 кб

Общие сведения

Сервис позволяет получить данные о стоимости перевозки между городами, включенными в прайс-лист. Отправки в эти города совершаются без дополнительного согласования стоимости.

Прайс-лист

Запрос метода

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

Адрес метода: https://api.dellin.ru/v1/public/pricelist.json

{  
   "appkey":"00000000-0000-0000-0000-000000000000",
   "city_from_uid":"0x834f00112fdd658311da4c6326ef0e13",
   "city_to_uid":"0x834f00112fdd658311da4c6326ef0e13"
}

Адрес метода: https://api.dellin.ru/v1/public/pricelist.xml

<request>
   <appkey>00000000-0000-0000-0000-000000000000</appkey>
   <city_from_uid>0x834f00112fdd658311da4c6326ef0e13</city_from_uid>
   <city_to_uid>0x834f00112fdd658311da4c6326ef0e13</city_to_uid>
</request>

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

Request
Request
ПараметрОбязательныйТипОписание
appkeyДаstringКлюч приложения. Для получения ключа необходимо пройти регистрацию

city_from_uid

Нет*string

UID города отправления, см "Справочник городов из прайс-листа"

Обязательно должен быть передан один из параметров: "city_to_uid" или "city_from_uid"

city_to_uid

Нет*string

UID города назначения, см. "Справочник городов из прайс-листа"

Обязательно должен быть передан один из параметров: "city_to_uid" или "city_from_uid"

Ответ метода

Пример ответа

{  
   "data":{  
      "header":"Межтерминальная доставка",
      "table":{  
         "caption":"Отправка из г. Москва (7 (495) 775-55-30)",
         "header":[  
            {  
               "name":"city_to",
               "text":"направление"
            },
            {  
               "name":"min_cost",
               "text":"мин. ст-ть"
            },
            {  
               "name":"weight_cost",
               "text":"стоимость за 1 кг. (руб)",
               "value":[  
                  "5000 - 10000",
                  "3000 - 5000",
                  "2000 - 3000",
                  "1500 - 2000",
                  "800 - 1500",
                  "300 - 800",
                  "150 - 300",
                  "0 - 150"
               ]
            },
            {  
               "name":"volume_cost",
               "text":"стоимость за 1 куб.м. (руб)",
               "value":[  
                  "25 - 45",
                  "15 - 25",
                  "10 - 15",
                  "7 - 10",
                  "4 - 7",
                  "1.3 - 4",
                  "0.6 - 1.3",
                  "0 - 0.6"
               ]
            }
         ],
         "body":[  
            {  
               "city_to":"Абакан",
               "min_cost":570,
               "weight_cost":[  
                  17.9,
                  18.7,
                  19.4,
                  20,
                  20.4,
                  22.3,
                  23,
                  23.7
               ],
               "volume_cost":[  
                  4650,
                  4860,
                  5040,
                  5200,
                  5300,
                  5800,
                  5980,
                  6160
               ]
            },
            {  
               "city_to":"Адлер",
               "min_cost":450,
               "weight_cost":[  
                  11.5,
                  12.2,
                  12.6,
                  12.8,
                  13.2,
                  14.4,
                  14.8,
                  15.3
               ],
               "volume_cost":[  
                  2990,
                  3170,
                  3280,
                  3330,
                  3430,
                  3740,
                  3850,
                  3980
               ]
            }
         ]
      }
   }
}
<response>
   <data>
      <header>Межтерминальная доставка</header>
      <table>
         <caption>Отправка из г. Москва (7 (495) 775-55-30)</caption>
         <thead>      
            <tr>
               <th rowspan="2">направление</th>
               <th rowspan="2" class="brighten">мин. ст-ть</th>
               <th colspan="8" class="brighten">стоимость за 1 кг. (руб)</th>
               <th colspan="8" class="brighten">стоимость за 1 куб.м. (руб)</th>
            </tr>
            <tr>
               <th class="nowrap">5000 - 10000</th>
               <th class="nowrap">3000 - 5000</th>
               <th class="nowrap">2000 - 3000</th>
               <th class="nowrap">1500 - 2000</th>
               <th class="nowrap">800 - 1500</th>
               <th class="nowrap">300 - 800</th>
               <th class="nowrap">150 - 300</th>
               <th class="nowrap">0 - 150</th>
               <th class="nowrap">25 - 45</th>
               <th class="nowrap">15 - 25</th>
               <th class="nowrap">10 - 15</th>
               <th class="nowrap">7 - 10</th>
               <th class="nowrap">4 - 7</th>
               <th class="nowrap">1.3 - 4</th>
               <th class="nowrap">0.6 - 1.3</th>
               <th class="nowrap">0 - 0.6</th>
            </tr>
         </thead> 
         <tbody>
            <tr class="odd">
               <td>Абакан</td>
               <td class="numeric">570</td>
               <td class="numeric">17.9</td>
               <td class="numeric">18.7</td>
               <td class="numeric">19.4</td>
               <td class="numeric">20</td>
               <td class="numeric">20.4</td>
               <td class="numeric">22.3</td>
               <td class="numeric">23</td>
               <td class="numeric">23.7</td>
               <td class="numeric">4650</td>
               <td class="numeric">4860</td>
               <td class="numeric">5040</td>
               <td class="numeric">5200</td>
               <td class="numeric">5300</td>
               <td class="numeric">5800</td>
               <td class="numeric">5980</td>
               <td class="numeric">6160</td>
            </tr>
            <tr class="odd">
               <td>Адлер</td>
               <td class="numeric">450</td>
               <td class="numeric">11.5</td>
               <td class="numeric">12.2</td>
               <td class="numeric">12.6</td>
               <td class="numeric">12.8</td>
               <td class="numeric">13.2</td>
               <td class="numeric">14.4</td>
               <td class="numeric">14.8</td>
               <td class="numeric">15.3</td>
               <td class="numeric">2990</td>
               <td class="numeric">3170</td>
               <td class="numeric">3280</td>
               <td class="numeric">3330</td>
               <td class="numeric">3430</td>
               <td class="numeric">3740</td>
               <td class="numeric">3850</td>
               <td class="numeric">3980</td>
            </tr>
         </tbody>
      </table>
   </data>
</response>

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

Response
Response
ПараметрТипОписание

data

objectДанные о тарифах
data.headerstringНазвание таблицы
data.tableTableТаблица с тарифами

Table
Структуры объектов в формате JSON и XML отличаются, ниже приведено описание для каждого из форматов
JSON
Table
ПараметрТипОписание

caption

string

Информация о направлении перевозки

header

array of HeaderЗаголовки столбцов таблицы

header.name

stringЗаголовок столбца (наименование параметра из блока "body")
header.textstringЗаголовок столбца (текстовое представление на кириллице)

header.value

array of stringsДиапазоны значений (заголовки столбцов в рамках данного столбца)

body

array of BodyТело таблицы
city_fromstring

Город отправления

Параметр присутствует в ответе, если в запросе был переда параметр "city_to_uid", но не был передан параметр "city_from_uid"
city_tostring

Город назначения

Параметр присутствует в ответе, если в запросе был переда параметр "city_from_uid", но не был передан параметр "city_to_uid"
min_costintegerМинимальная стоимость, руб.
weight_costarray of floatsСтоимость, руб./кг. Значения для соответствующих диапазонов веса из параметра "header.value" (имеющего заголовочный параметр "name" со значением "weight_cost")
volume_costarray of integersСтоимость, руб./м3. Значения для соответствующих диапазонов объема из параметра "header.value" (имеющего заголовочный параметр "name" со значением "volume_cost")
XML
Table
ПараметрТипОписание

caption

stringИнформация о направлении перевозки
theadarray of TableRowЗаголовки столбцов таблицы
tbodyarray of TableRowТело таблицы
TableRow
ПараметрТипОписание

tr

array of TrСодержимое строки таблицы
tr.tharray of strings

Содержимое ячейки заголовка таблицы

Параметр используется только для объекта "thead.tr"
tr.tdarray of strings

Содержимое ячейки таблицы

Параметр используется только для объекта "tbody.tr"

Обработка ошибок

Если в запросе переданы не все обязательные параметры, то будет выведено следующее сообщение об ошибке:

Пример ответа - Не переданы обязательные параметры

{  
   "errors":"Некорректный запрос"
}
<response>
   <errors>Некорректный запрос</errors>
</response>


Если в запросе обязательные параметры переданы с пустыми значениями, то будет выведено следующее сообщение об ошибке:

Пример ответа - Обязательные параметры переданы с пустым значением

{  
   "errors":{  
      "city_from_uid":"Это поле не может быть пустым."
   }
}
<response>
   <errors>
      <city_from_uid>Это поле не может быть пустым.</city_from_uid>
   </errors>
</response>

Если в запросе переданы некорректные значения параметров, то будет выведено следующее сообщение об ошибке:

Пример ответа - Переданы некорректные значения параметров

{
   "errors":{
      "city_from_uid": "Некорректный uid города",
      "city_to_uid": "Некорректный uid города"
   }
}
<response>
   <errors>
      <city_from_uid>Некорректный uid города</city_from_uid>
      <city_to_uid>Некорректный uid города</city_to_uid>
   </errors>
</response>

Справочник городов из прайс-листа

Запрос метода

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

Адрес метода: https://api.dellin.ru/v1/public/cities.json  

{  
   "appkey":"00000000-0000-0000-0000-000000000000"
}

Адрес метода: https://api.dellin.ru/v1/public/cities.xml 

<request>
   <appkey>00000000-0000-0000-0000-000000000000</appkey>
</request>

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

Request
Request
ПараметрОбязательныйТипОписание
appkeyДаstringКлюч приложения. Для получения ключа необходимо пройти регистрацию

Ответ метода

Пример ответа

{  
   "hash": "1707aea20f301fd0a8787b5a68608dd6cf270347ea04c266f1b4c6aa540088a4",
   "url": "https://api.dellin.ru/catalog/cities.csv?sk=Kn0OtWJcumDYUqRjtCEvhg&e=1401285434"
}
<request>
   <hash>1707aea20f301fd0a8787b5a68608dd6cf270347ea04c266f1b4c6aa540088a4</hash>
   <url>https://api.dellin.ru/catalog/cities.csv?sk=Kn0OtWJcumDYUqRjtCEvhg&e=1401285434</url>
</request>

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

Response
Response
ПараметрТипОписание
hashstringХеш-код файла (MD5). Путём сравнения хеш-кодов двух файлов, полученных в разное время, можно понять, изменились данные в справочнике или нет
urlstring

Ссылка на файл с данными справочника в формате csv в кодировке utf-8 (срок действия ссылки – 10 минут). Рекомендуемая частота обновления скачанного файла - раз в месяц

Разделителем строк в файле является символ "\n", разделителем столбцов – символ ",", а разделителем текста – символ " " ".

Файл содержит следующие колонки:

  • id — уникальный идентификатор города;
  • name — наименование города;
  • codeKLADR — код КЛАДР города;
  • isTerminal — флаг наличия терминала в городе