Создание и запуск рейса по алгоритму 1

Создает и запускает новый рейс по форме создания заявки с отдельными точками (voyages/create). Если поля price, currency, car_confirm, carrier_code заполнены и найден перевозчик, то рейс назначается на указанного перевозчика с указанной ценой. Если не находит то просто создает рейс на вкладке “Неактивные”. Если поля пустые, то рейс автоматически запускает на гарантированное распределение или торги, по подходящему направлению. Алгоритм поиска параметров для запуска рейса:

Команда voyages/createAndStart

Метод POST

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

https://api.logist-pro.su/api/voyages/createAndStart

[
    {
    "carrier_code": "010505464530",
    "car_confirm": "00:01",
    "currency": "UAH",
    "price": 2000,
    
    "number":"voyage_number",
    "shipper_code":1,
    "edit":false,
    "additional_field_1":"Дополнительно поле 1",
    "additional_field_2":"Дополнительно поле 2",
    "additional_field_3":"Дополнительно поле 3",
    "additional_field_4":"Дополнительно поле 4",
    "additional_field_5":"Дополнительно поле 5",
    "additional_field_6":true,
    "comment":"Комментарий к рейсу общий",
    "carcase":{
        "name":"Лесовоз 1,5 тонны",
        "code":"D115",
        "weight_code":"1_5",
        "type_code":"lesovoz"
    },
    "points":[
        {
        "point_code":"point_1",
        "address":"Адрес точки погрузки",
        "point_zone":"zone_1",
        "city":"City",
        "point_type":"load",
        "point_date":"2021-01-01 12:00:00",
        "point_date_till":"2021-01-02 15:00:00",
        "point_pallets":"20",
        "point_volume":"20",
        "point_weight":"20",
        "point_weight_units":"т",
        "point_lenght":"20",
        "ftl":false,
        "loading_methods":["back","top"],
        "cargo_type":["готовая продукция"],
        "comment":"Комментарий к первой точке"
	},{
        "point_code":"point_2",
        "address":"Адрес точки выгрузки",
        "point_zone":"zone_2",
        "city":"City",
        "point_type":"unload",
        "point_date":"2021-01-03 13:00:00",
        "point_date_till":"2021-01-04 16:00:00",
        "point_pallets":"20",
        "point_volume":"20",
        "point_weight":"20",
        "point_weight_units":"т",
        "point_lenght":"20",
        "ftl":false,
        "loading_methods":["back","top"],
        "cargo_type":["готовая продукция"],
        "comment":"Комментарий ко второй точке"
        }
    ]}
]

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

Успешный запрос:
{
    "status": "success",
    "errors": [],
    "updates": [],
    "voyages": {
        "0.voyage": [
            {
                "number": "voyage_number",
                "message": [
                    "success"
                ]
            }
        ]
    }
}

Ошибка:
{
    "status": "failed",
    "errors": {
        "0.number": [
            "already_exists"
        ]
    },
    "updates": [],
    "voyages": {
        "0.voyage": [
            {
                "number": "voyage_number",
                "message": [
                    "already_exists"
                ]
            }
        ]
    }
}

Обновление:
{
    "status": "success",
    "errors": [],
    "updates": {
        "0.voyage": true
    },
    "voyages": {
        "0.voyage": [
            {
                "number": "voyage_number",
                "message": [
                    "success"
                ]
            }
        ]
    }
}
Поля в запросе Обязательное поле Описание Тип поля Пример\комментарий
price Обязательное при назначении на перевозчика Цена рейса double
currency Обязательное при назначении на перевозчика Валюта string (1..255 EUR, RUR, USD, UAH, RUR_WITH_VAT, RUR_WITHOUT_VAT, UAH_WITH_VAT, UAH_WITHOUT_VAT, KZT
car_confirm Обязательное при назначении на перевозчика Номер рейса string (1..255) Формат "HH:ii"
carrier_code Обязательное при назначении на перевозчика ИНН перевозчика / SAP-код string (1..255) SAP-код заводится в партнерстве
number обязательно Номер рейса string (1..100) Уникальный код рейса
shipper_code обязательно Значение кода (ID) грузоотправителя numeric Предоставляется после регистрации
edit обязательно Значение для редактирование рейса boolean Если true - то обновляет поля рейса и точек, false - создается новый рейс
additional_field_1 Дополнительное поле 1 string (1..255) Задается в настройках филиала
additional_field_2 Дополнительное поле 2 string (1..255) Задается в настройках филиала
additional_field_3 Дополнительное поле 3 string (1..255) Задается в настройках филиала
additional_field_4 Дополнительное поле 4 string (1..255) Задается в настройках филиала
additional_field_5 Дополнительное поле 5 string (1..255) Задается в настройках филиала
additional_field_6 Дополнительное поле 6 boolean (0..1) Задается в настройках филиала
comment Комментарий к рейсу string (1..255)
carcase транспортное средство array[]
carcase.name учитывается при создании нового ТС Название нового Типа ТС string (1..255)
carcase.code обязательно Код Тип ТС string (1..255)
carcase.weight_code обязательно при создании нового ТС Код грузоподъемности string (1..255) Типы описаны в справочнике
carcase.type_code обязательно при создании нового ТС Код типа подвижного состава string (1..255) Типы описаны в справочнике
points точки маршрута array[]
points.point_code обязательно Уникальный код точки string (1..255)
points.address обязательно при создании новой точки Адрес точки string (1..255)
points.point_zone учитывается при создании новой точки Зона точки string (1..255)
points.city учитывается при создании новой точки Город точки string (1..255)
points.point_type обязательно Тип точки (загрузка\выгрузка) string (1..255) load / unload
points.point_date обязательно Дата\время прибытия на точку string (19) Формат: “2021-01-01 12:00:00”
points.point_date_till Крайние дата\время прибытия на точку при диапазоне даты и время string (19) Формат: “2021-01-01 12:00:00”
points.point_pallets Количество паллет Integer
points.point_volume Объем груза Integer
points.point_weight Вес груза Integer
points.point_weight_units Единица измерения веса груза string (1..255) т - тонны , кг - килограммы
points.point_lenght Погонные метры Integer
points.ftl Полная загрузка ТС boolean
points.loading_methods Массив список типов погрузки array() Типы описаны в справочнике
points.cargo_type Массив список типов характера груза array() массив свободных значений. Можно получить ранее используемые значения в справочнике, или передать новые.
points.comment Комментарий к точке string (1..255)
Поля в ответе Описание Тип поля Пример\комментарий
status Статус запроса string (1..100) success/failed
errors Блок ошибок array()
errors.0.number номер рейса, поле с ошибкой и описание ошибки array() 0 - номер рейса в запросе, number - поле с ошибкой
updates Блок обновления рейса array()
updates.0.voyage номер и статус обновления рейса array()
voyages Блок статусов по каждому рейсу с его номером array()