API ЖД Тариф - Описание протокола обмена данными с системой расчета провозной платы на жд от Альта-Софт

Материал из Alta-Soft Wikipedia
Версия от 11:59, 16 апреля 2019; Boluchevskikh (обсуждение | вклад) (Расчет ЖД Тарифа)
Перейти к навигации Перейти к поиску

Описание протокола обмена данными (API) с системой расчета провозной платы на жд (жд тарифа) от Альта-Софт

Обмен данными между сервисом Альта-Софт и сторонними ресурсами осуществляется по протоколу http, транспорт xml.
Все запросы в системе – GET.

Для всех запросов необходимо указывать обязательный параметр - api_key.
Api_key выдается клиенту после оплаты доступа к api-функционалу и имеет ограниченный период действия (6 мес или год). По окончании срока действия ключа (если не было оплачено продление) доступ к функционалу приостанавливается.

Выполнение запроса на выбор из справочника грузов ЕТСНГ и ГНГ

Запрос выбор из справочников грузов состоит из обязательного параметра type и других параметров, завясящих от type.
Для запроса необходимо выполнить GET-запрос на адрес http://tax.alta.ru:81/rail.xml

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

  1. type = [fre|frg] Получить список грузов ЕТСНГ (fre) или грузов ГНГ (frg) в формате XML
    index = [код или первые символы кода груза или наименование или часть наименования]
    corr = [yes|no] Указывет серверу, надо ли искать соответствие ЕТСНГ-ГНГ. По умолчанию yes.
      Пример 1: http://tax.alta.ru:81/rail.xml?type=fre&index=011&encoding=utf-8&api_key=[вставьте ваш api_key] (получить список грузов ЕТСНГ код которых начинается на "011" и соответствующих им грузов ГНГ)
      Пример 2: http://tax.alta.ru:81/rail.xml?type=frg&index=пшен&encoding=utf-8&corr=no&api_key[вставьте ваш api_key] (получить список грузов ГНГ наименование который содержит "пшен". НЕ чуствителен к регистру. НЕ будет выводить соответствующие грузы из справочника ЕТСНГ)

Выполнение запроса на выбор из справочника станций

Запрос выбор из справочников грузов состоит из обязательного параметра type и других параметров, завясящих от type.
Для запроса необходимо выполнить GET-запрос на адрес http://tax.alta.ru:81/rail.xml

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

  1. type = [fst|tst] Получить список станций назначения (fst) или отправления (tst) в формате XML
    index = [код или первые символы кода станции или наименование или часть наименования],
      Пример 1: http://tax.alta.ru:81/rail.xml?type=tst&index=104&encoding=utf-8&api_key=[вставьте ваш api_key] (получить список станций назначения код которых начинается на "104")
      Пример 2: http://tax.alta.ru:81/rail.xml?type=fst&index=моск&encoding=utf-8&api_key=[вставьте ваш api_key] (получить список станций отправления наименование который содержит "моск". НЕ чуствителен к регистру)

Выполнение запроса на выбор из справочника государств

Послать запрос вида:
http://tax.alta.ru:81/rail.xml?type=states

Выполнение запроса на получение дерева отправок и перевозочных средств

  1. type = [van_tree] Получить дерево перевозочных средств.

Расчет ЖД Тарифа

  • fst- 5-и значный код станции отправления
  • tst -5-и значный код станции назначения
  • fre - 5-и значный код груза ЕТСНГ
  • frg - 6-и значный код груза ГНГ
  • fstate - код страны отправления
  • tstate - код страны назначения
  • num_vagons - количество вагонов в отправке (не обязателен). По умолчанию num_vagons=1
  • modular - признак сборной отправки (не обязателен). По умолчанию modular=0
  • w - вес груза в килограммах. Это параметр будет установлен у всех вагонов в отправке (если num_vagons больше одного)
    Дополнительно допускается использовать параметры w1,w2...wN для указания веса в конкретном вагоне (см. пример ниже)
  • gp - грузоподъемность в тоннах. Это параметр будет установлен у всех вагонов в отправке (если num_vagons больше одного)
    Дополнительно допускается использовать параметры gp1,gp2...gpN для указания грузоподъемности конкретного вагона (см. пример ниже)
  • empt - [0|1], default - 0. Порожняя отправка - 1, груженая - 0.
  • return - [0|1], default - 0. Рассчитывать возврат - 1, не рассчитывать - 0.
  • van - код вагона из дерева перевозочных средств
  • owner - [0|1] default - 0. Принадлежность перевозочного средства, 0 - общего парка, 1 - собств. (арендованный)
  • route - [0|1], default = 1. Включить нитку маршрута в отчет - 1, не включать - 0.
    Пример расчета отправки из 1 вагона: http://tax.alta.ru:81/rail.xml?type=calc&fst=01100&tst=22022&fre=01100&frg=10019000&fstate=20&tstate=20&van=200&w=60000&gp=66&owner=0&return=0&empt=0&api_key=[вставьте ваш api_key]
  • Пример расчета отправки из 6 вагонов, где у всех вагонов, кроме 2-ого и 4-ого вес груза составляет 60000 кг (параметр w), у 2-ого вагона 65000 кг (параметр w2), у 4-ого вагона - 68000 кг (параметр w4). Грузоподъемность у всех вагонов равна 66 тоннам (параметр gp), кроме 6-ого вагона - 70 тонн (параметр gp6): http://tax.alta.ru:81/rail.xml?type=calc&fst=01100&tst=22022&fre=01100&frg=10019000&fstate=20&tstate=20&van=200&w=60000&gp=66&owner=0&return=0&empt=0&num_vagons=6&w2=65000&w4=68000&gp6=70&api_key=[вставьте ваш api_key]
    Пример расчета сборной отправки: http://tax.alta.ru:81/rail.xml?file=index.php&file=rail.xml&type=calc&fst=19350&tst=97040&fre=&frg=&fstate=20&tstate=20&num_vagons=1&van=200&w=0&gp=65&owner=0&return=0&empt=0&route=0&modular=1&fre1=12701&w1=4850&fre2=12101&w2=1500&fre3=12501&w3=32000&fre4=37101&w4=900&api_key=[вставьте ваш api_key]. Параметр modular=1, список грузов описывается параметрами:
    fre1...freN, frg1...frgN, w1...wN, где N - кол-во грузов в сборной отправке,
    fre1, fre2...freN - коды грузов по ЕТСНГ,
    frg1, frg2.... frgN - коды грузов по ГНГ (необязательно, если не указаны - будет подобрано соответствие ЕТСНГ-ГНГ),
    w1, w2...wN - соответствующие массы грузов в килограммах

Ссылки на примеры

Протестировать все вышеописанные примеры можно на странице:
http://alta.ru/rail_tracking/rail_trf/example.php


Пример работы полнофункциональной страницы по выбору из справочников и расчету жд тарифа:
http://alta.ru/rail_tracking/rail_trf/demo.php