- Request
- Query parameters
- Body
- mvrp_request_1_locations_item
- solver_options_mvrp_2
- vehicle
- depot_location_1
- mvrp_request_1_depots_item
- mvrp_request_1_initial_routes_item
- mvrp_request_1_zones_item
- coordinate_2
- client_service_duration_0
- crossdock_service_duration_0
- depot_duration_0
- mvrp_request_1_locations_optional_tags_item
- mvrp_request_1_locations_penalty
- locations_quant_0
- mvrp_request_1_locations_rolling_throughput
- service_duration_2_0
- service_durations
- shared_service_duration_0
- mvrp_request_1_locations_shipment_size
- mvrp_request_1_locations_throughput
- mvrp_request_1_locations_time_windows_item
- mvrp_request_1_locations_transit_time
- solver_options_mvrp_2_balanced_groups_item
- solver_options_mvrp_2_location_groups_item
- solver_options_mvrp_2_penalty
- solver_options_mvrp_2_points_throughputs_item
- solver_options_mvrp_2_template_rest_schedules_item
- vehicle_capacity
- vehicle_close_locations_item
- vehicle_cost_0
- vehicle_cost_1
- vehicle_optional_zones_item
- vehicle_payout_0
- vehicle_penalty
- vehicle_planned_route
- vehicle_proximity_edge_cost
- vehicle_rest_schedule
- vehicle_shifts_item
- vehicle_specs
- vehicle_trailer
- vehicle_visited_locations_item
- vehicle_walking_courier
- depot_location_1_package_throughput
- depot_location_1_penalty
- depot_location_1_throughput
- depot_location_1_time_windows_item
- depot_location_1_time_windows_loading
- depot_location_1_time_windows_refilling
- depot_location_1_time_windows_unloading
- mvrp_request_1_depots_package_throughput
- mvrp_request_1_depots_penalty
- mvrp_request_1_depots_throughput
- mvrp_request_1_depots_time_windows_item
- mvrp_request_1_depots_time_windows_loading
- mvrp_request_1_depots_time_windows_refilling
- mvrp_request_1_depots_time_windows_unloading
- initial_routes_route_element_1
- mvrp_request_1_initial_routes_shift
- mvrp_request_1_zones_geometry
- locations_penalty_delivery_deadline
- locations_penalty_depot_expiring_time
- locations_penalty_depot_ready_time
- penalty_drop_0
- locations_penalty_early
- locations_penalty_late
- locations_penalty_out_of_time
- locations_penalty_rolling_throughput
- locations_penalty_throughput
- locations_penalty_time_between_visits
- locations_penalty_transit_time
- rolling_throughput_vehicle_count_0_item
- locations_shipment_size_volume
- throughput_kg_per_hour_0_item
- throughput_units_per_hour_0_item
- throughput_vehicle_count_0_item
- solver_options_mvrp_2_balanced_groups_penalty
- solver_options_mvrp_2_penalty_close_location_groups
- solver_options_mvrp_2_penalty_drop_penalty_percentage
- solver_options_mvrp_2_penalty_empty_run_before_full
- solver_options_mvrp_2_penalty_multiorders
- solver_options_mvrp_2_penalty_small_order_part_before_big
- solver_options_mvrp_2_penalty_split_orders_percentage
- solver_options_mvrp_2_penalty_unused_depot
- solver_options_mvrp_2_points_throughputs_penalty
- solver_options_mvrp_2_points_throughputs_point
- solver_options_mvrp_2_points_throughputs_throughput
- template_rest_schedules_breaks_0_1
- template_rest_schedules_breaks_1_1
- solver_options_mvrp_2_template_rest_schedules_penalty
- vehicle_capacity_limits
- vehicle_capacity_volume
- vehicle_close_locations_distance_till_service_m
- vehicle_close_locations_duration_till_service_s
- vehicle_penalty_arrival_after_start
- vehicle_penalty_empty_runs
- vehicle_penalty_min_stop_weight
- vehicle_planned_route_locations_item
- vehicle_planned_route_start_time_0_item
- rest_schedule_breaks_0_1
- rest_schedule_breaks_1_1
- vehicle_rest_schedule_penalty
- vehicle_shifts_penalty
- vehicle_shifts_rest_schedule
- vehicle_shifts_run_restrictions
- vehicle_trailer_capacity
- vehicle_trailer_cost
- vehicle_trailer_max_capacity_difference
- vehicle_trailer_rolling_time
- vehicle_walking_courier_capacity
- vehicle_walking_courier_cost
- vehicle_walking_courier_restrictions
- depot_location_1_package_throughput_kg_per_hour_0_item
- depot_location_1_package_throughput_units_per_hour_0_item
- depot_location_1_penalty_early
- depot_location_1_penalty_late
- depot_location_1_penalty_out_of_time
- depot_location_1_penalty_package_throughput
- depot_location_1_penalty_throughput
- depot_location_1_throughput_kg_per_hour_0_item
- depot_location_1_throughput_units_per_hour_0_item
- depot_location_1_throughput_vehicle_count_0_item
- depot_location_1_time_windows_loading_penalty
- depot_location_1_time_windows_loading_time_windows_item
- depot_location_1_time_windows_refilling_penalty
- depot_location_1_time_windows_refilling_time_windows_item
- depot_location_1_time_windows_unloading_penalty
- depot_location_1_time_windows_unloading_time_windows_item
- package_throughput_kg_per_hour_0_item
- package_throughput_units_per_hour_0_item
- depots_penalty_early
- depots_penalty_late
- depots_penalty_out_of_time
- depots_penalty_package_throughput
- depots_penalty_throughput
- depots_time_windows_loading_penalty
- depots_time_windows_loading_time_windows_item
- depots_time_windows_refilling_penalty
- depots_time_windows_refilling_time_windows_item
- depots_time_windows_unloading_penalty
- depots_time_windows_unloading_time_windows_item
- initial_route_node_depot
- initial_route_node_location_1
- initial_route_node_work_break
- initial_route_node_courier_position
- initial_routes_shift_end
- initial_routes_shift_start
- points_throughputs_penalty_throughput
- breaks_penalty
- template_rest_schedules_penalty_early
- template_rest_schedules_penalty_late
- rest_schedule_penalty_early
- rest_schedule_penalty_late
- shifts_penalty_early
- shifts_penalty_late
- shifts_penalty_max_mileage
- shifts_penalty_out_of_time
- shifts_penalty_stop_excess
- shifts_penalty_stop_lack
- shifts_penalty_unique_stop_lack
- shifts_penalty_working_overtime
- rest_schedule_breaks_0
- rest_schedule_breaks_1
- shifts_rest_schedule_penalty
- shifts_run_restrictions_max_mileage_km
- shifts_run_restrictions_maximal_stops
- shifts_run_restrictions_minimal_stops
- trailer_capacity_limits
- trailer_capacity_volume
- walking_courier_restrictions_max_parking_duration_s
- walking_courier_restrictions_max_parking_walking_distance_m
- walking_courier_restrictions_max_walking_edge_distance_m
- time_windows_loading_penalty_early
- time_windows_loading_penalty_late
- time_windows_loading_penalty_out_of_time
- time_windows_refilling_penalty_early
- time_windows_refilling_penalty_late
- time_windows_refilling_penalty_out_of_time
- time_windows_unloading_penalty_early
- time_windows_unloading_penalty_late
- time_windows_unloading_penalty_out_of_time
- initial_route_node_depot_value
- initial_route_node_location_1_value
- initial_route_node_work_break_value
- initial_route_node_courier_position_value
- penalty_early
- penalty_late
- run_restrictions_max_mileage_km_penalty
- run_restrictions_maximal_stops_penalty
- run_restrictions_minimal_stops_penalty
- initial_route_node_depot_value_split_info
- value_unfeasible_reasons_0_1
- value_unfeasible_reasons_1_1
- value_unfeasible_reasons_2_1
- value_unfeasible_reasons_3_1
- value_unfeasible_reasons_4_1
- value_unfeasible_reasons_5_1
- value_unfeasible_reasons_6_1
- value_unfeasible_reasons_7_1
- value_unfeasible_reasons_8_1
- value_unfeasible_reasons_9_1
- value_unfeasible_reasons_10_1
- value_unfeasible_reasons_11_1
- value_unfeasible_reasons_12_1
- value_unfeasible_reasons_13_1
- value_unfeasible_reasons_14_1
- value_unfeasible_reasons_15_1
- value_unfeasible_reasons_16_1
- value_unfeasible_reasons_17_1
- value_unfeasible_reasons_18_1
- value_unfeasible_reasons_19_1
- value_unfeasible_reasons_20_1
- value_unfeasible_reasons_21_1
- value_unfeasible_reasons_22_1
- value_unfeasible_reasons_23_1
- initial_route_node_location_1_value_split_info
- value_unfeasible_reasons_0
- value_unfeasible_reasons_1
- value_unfeasible_reasons_2
- value_unfeasible_reasons_3
- value_unfeasible_reasons_4
- value_unfeasible_reasons_5
- value_unfeasible_reasons_6
- value_unfeasible_reasons_7
- value_unfeasible_reasons_8
- value_unfeasible_reasons_9
- value_unfeasible_reasons_10
- value_unfeasible_reasons_11
- value_unfeasible_reasons_12
- value_unfeasible_reasons_13
- value_unfeasible_reasons_14
- value_unfeasible_reasons_15
- value_unfeasible_reasons_16
- value_unfeasible_reasons_17
- value_unfeasible_reasons_18
- value_unfeasible_reasons_19
- value_unfeasible_reasons_20
- value_unfeasible_reasons_21
- value_unfeasible_reasons_22
- value_unfeasible_reasons_23
- initial_route_node_work_break_value_split_info
- unfeasible_reasons_incompatibilities_item_3
- unfeasible_reasons_incompatibilities_item
- unfeasible_reasons_incompatibilities_item_1
- incompatibilities_types_item
- incompatibilities_zones_item
- Responses
- 202 Accepted
- 400 Bad Request
- 401 Unauthorized
- 429 Too Many Requests
- 500 Internal Server Error
- 503 Service Unavailable
Add task
Enqueue an MVRP task for processing.
Request
POST
https://courier.yandex.ru/vrs/api/v1/add/mvrp
Query parameters
Name |
Description |
apikey* |
Type: string API key. |
parent_task_id |
Type: string Parent task id. |
Body
application/json
{
"depot": {
"address": "string",
"crossdock_safety_waiting_duration_s": 3600,
"description": "string",
"finish_service_duration_s": 0,
"flexible_start_time": false,
"hard_time_window": "string",
"hard_window": false,
"id": 0,
"load_service_duration_s": 0,
"point": {
"lat": 0,
"lon": 0
},
"preliminary_service_duration_s": 0,
"preset_id": "string",
"ref": "string",
"service_duration_s": {
"fixed": 0,
"scaled": 0
},
"time_window": "string",
"time_windows": [
{
"hard_time_window": "string",
"time_window": "string"
}
],
"title": "string",
"type": "depot",
"unload_service_duration_s": 0,
"use_in_proximity": false,
"time_windows_unloading": {
"hard_time_window": "string",
"hard_window": false,
"time_window": "string",
"time_windows": [
{
"hard_time_window": "string",
"time_window": "string"
}
],
"penalty": {
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
"time_windows_refilling": {
"hard_time_window": "string",
"hard_window": false,
"time_window": "string",
"time_windows": [
{
"hard_time_window": "string",
"time_window": "string"
}
],
"penalty": {
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
"time_windows_loading": {
"hard_time_window": "string",
"hard_window": false,
"time_window": "string",
"time_windows": [
{
"hard_time_window": "string",
"time_window": "string"
}
],
"penalty": {
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
"throughput": {
"kg_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"units_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"vehicle_count": [
{
"time_window": "string",
"value": 0
}
]
},
"penalty": {
"throughput": {
"fixed": 1000,
"kg": 50,
"unit": 100,
"vehicle": 100000
},
"package_throughput": {
"fixed": 1000,
"kg": 50,
"unit": 100
},
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
},
"package_throughput": {
"kg_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"units_per_hour": [
{
"time_window": "string",
"value": 0
}
]
}
},
"depots": [
{
"address": "string",
"crossdock_safety_waiting_duration_s": 3600,
"description": "string",
"finish_service_duration_s": 0,
"flexible_start_time": false,
"hard_time_window": "string",
"hard_window": false,
"id": 0,
"load_service_duration_s": 0,
"point": {
"lat": 0,
"lon": 0
},
"preliminary_service_duration_s": 0,
"preset_id": "string",
"ref": "string",
"service_duration_s": {
"fixed": 0,
"scaled": 0
},
"time_window": "string",
"time_windows": [
{
"hard_time_window": "string",
"time_window": "string"
}
],
"title": "string",
"type": "depot",
"unload_service_duration_s": 0,
"use_in_proximity": false,
"time_windows_unloading": {
"hard_time_window": "string",
"hard_window": false,
"time_window": "string",
"time_windows": [
{
"hard_time_window": "string",
"time_window": "string"
}
],
"penalty": {
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
"time_windows_refilling": {
"hard_time_window": "string",
"hard_window": false,
"time_window": "string",
"time_windows": [
{
"hard_time_window": "string",
"time_window": "string"
}
],
"penalty": {
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
"time_windows_loading": {
"hard_time_window": "string",
"hard_window": false,
"time_window": "string",
"time_windows": [
{
"hard_time_window": "string",
"time_window": "string"
}
],
"penalty": {
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
"throughput": {
"kg_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"units_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"vehicle_count": [
{
"time_window": "string",
"value": 0
}
]
},
"penalty": {
"throughput": {
"fixed": 1000,
"kg": 50,
"unit": 100,
"vehicle": 100000
},
"package_throughput": {
"fixed": 1000,
"kg": 50,
"unit": 100
},
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
},
"package_throughput": {
"kg_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"units_per_hour": [
{
"time_window": "string",
"value": 0
}
]
}
}
],
"initial_routes": [
{
"fixed_order": false,
"immutable": false,
"route": [
{
"actual_arrival_time_s": 0,
"actual_departure_time_s": 0,
"actual_service_start_time_s": 0,
"arrival_time_s": 0,
"departure_time_s": 0,
"load_to_head": [
0,
"string"
],
"load_to_trailer": [
0,
"string"
],
"multi_order": false,
"waiting_duration_s": 0,
"node": {
"type": "depot",
"value": {
"added_shared_service_duration_s": 0,
"anchor_mode": "Decoupling",
"delivered_orders": [
0,
"string"
],
"delivery_deadline": "string",
"fixed_position": false,
"fixed_run": false,
"fixed_shift": false,
"fixed_vehicle": false,
"id": 0,
"keep_in_vehicle": false,
"loaded_orders": [
0,
"string"
],
"parking_mode": "ParkingBegin",
"parking_type": "trailer",
"picked_orders": [
0,
"string"
],
"pickup_id": 0,
"pickup_ids": [
0,
"string"
],
"service_waiting_duration_s": 0,
"total_service_duration_s": 0,
"trailer_decoupled": false,
"trailer_used": false,
"undroppable": false,
"unfeasible_reasons": [
{
"custom_type": "string",
"overload": 0,
"text": "string",
"type": "OVERLOAD_WEIGHT"
},
{
"late_duration_s": 0,
"text": "string",
"type": "FAILED_HARD_TIME_WINDOW"
},
{
"tags": [
"string"
],
"text": "string",
"type": "REQUIRED_TAGS_VIOLATION"
},
{
"tags": [
"string"
],
"text": "string",
"type": "EXCLUDED_TAGS_VIOLATION"
},
{
"overrun_s": 0,
"text": "string",
"type": "TRANSIT_TIME_VIOLATION"
},
{
"text": "string",
"type": "INCOMPATIBLE_VEHICLE_VIOLATION"
},
{
"incompatibilities": [
{
"incompatible_order_id": 0,
"types": [
{
"other_type": "string",
"self_type": "string"
}
]
}
],
"incompatible_load_types": [
"string"
],
"incompatible_order_ids": [
0,
"string"
],
"text": "string",
"type": "INCOMPATIBLE_LOAD_TYPES_VIOLATION"
},
{
"incompatibilities": [
{
"incompatible_order_id": 0,
"zones": [
{
"other_zone": "string",
"self_zone": "string"
}
]
}
],
"incompatible_order_ids": [
0,
"string"
],
"incompatible_zones": [
"string"
],
"text": "string",
"type": "INCOMPATIBLE_ZONES_VIOLATION"
},
{
"text": "string",
"type": "VEHICLE_TOO_MANY_RUNS"
},
{
"text": "string",
"type": "SHIFT_TOO_MANY_RUNS"
},
{
"tags": [
"string"
],
"text": "string",
"type": "ALLOWED_ZONES_VIOLATION"
},
{
"tags": [
"string"
],
"text": "string",
"type": "FORBIDDEN_ZONES_VIOLATION"
},
{
"text": "string",
"type": "INCOMPATIBLE_CONTAINER_DIMENSIONS_VIOLATION"
},
{
"text": "string",
"type": "READY_TIMEREADY_TIME_VIOLATION"
},
{
"text": "string",
"type": "EXPIRING_TIME_VIOLATION"
},
{
"text": "string",
"type": "DEPENDENT_GROUP_VIOLATION"
},
{
"text": "string",
"type": "ORDER_NOT_LOADED_VIOLATION"
},
{
"text": "string",
"type": "PICKUP_MISSED_DELIVERY_VIOLATION"
},
{
"text": "string",
"type": "INVALID_PICKUP_DELIVERY_ORDER_VIOLATION"
},
{
"text": "string",
"type": "FAILED_SEQUENCE_ORDER_VIOLATION"
},
{
"text": "string",
"type": "NOT_IN_LIFO_ORDER_VIOLATION"
},
{
"text": "string",
"type": "WALKING_COURIER_OVERLOAD_VIOLATION"
},
{
"text": "string",
"type": "SOLID_GROUP_VIOLATION"
},
{
"text": "string",
"type": "LOCATION_TRAILER_DISALLOWED"
}
],
"split_info": {
"order_ratio": 0,
"part_id": 0,
"parts_count": 0,
"units": 0,
"volume_cbm": 0,
"weight_kg": 0
}
}
}
}
],
"vehicle_id": 0,
"shift": {
"balanced_group_id": "string",
"id": "string",
"start": {
"actual_arrival_time_s": 0,
"actual_departure_time_s": 0,
"actual_service_start_time_s": 0,
"arrival_time_s": 0,
"departure_time_s": 0,
"load_to_head": [
0,
"string"
],
"load_to_trailer": [
0,
"string"
],
"multi_order": false,
"waiting_duration_s": 0,
"node": {
"type": "depot",
"value": {
"added_shared_service_duration_s": 0,
"anchor_mode": "Decoupling",
"delivered_orders": [
0,
"string"
],
"delivery_deadline": "string",
"fixed_position": false,
"fixed_run": false,
"fixed_shift": false,
"fixed_vehicle": false,
"id": 0,
"keep_in_vehicle": false,
"loaded_orders": [
0,
"string"
],
"parking_mode": "ParkingBegin",
"parking_type": "trailer",
"picked_orders": [
0,
"string"
],
"pickup_id": 0,
"pickup_ids": [
0,
"string"
],
"service_waiting_duration_s": 0,
"total_service_duration_s": 0,
"trailer_decoupled": false,
"trailer_used": false,
"undroppable": false,
"unfeasible_reasons": [
{
"custom_type": "string",
"overload": 0,
"text": "string",
"type": "OVERLOAD_WEIGHT"
},
{
"late_duration_s": 0,
"text": "string",
"type": "FAILED_HARD_TIME_WINDOW"
},
{
"tags": [
"string"
],
"text": "string",
"type": "REQUIRED_TAGS_VIOLATION"
},
{
"tags": [
"string"
],
"text": "string",
"type": "EXCLUDED_TAGS_VIOLATION"
},
{
"overrun_s": 0,
"text": "string",
"type": "TRANSIT_TIME_VIOLATION"
},
{
"text": "string",
"type": "INCOMPATIBLE_VEHICLE_VIOLATION"
},
{
"incompatibilities": [
{
"incompatible_order_id": 0,
"types": [
{
"other_type": "string",
"self_type": "string"
}
]
}
],
"incompatible_load_types": [
"string"
],
"incompatible_order_ids": [
0,
"string"
],
"text": "string",
"type": "INCOMPATIBLE_LOAD_TYPES_VIOLATION"
},
{
"incompatibilities": [
{
"incompatible_order_id": 0,
"zones": [
{
"other_zone": "string",
"self_zone": "string"
}
]
}
],
"incompatible_order_ids": [
0,
"string"
],
"incompatible_zones": [
"string"
],
"text": "string",
"type": "INCOMPATIBLE_ZONES_VIOLATION"
},
{
"text": "string",
"type": "VEHICLE_TOO_MANY_RUNS"
},
{
"text": "string",
"type": "SHIFT_TOO_MANY_RUNS"
},
{
"tags": [
"string"
],
"text": "string",
"type": "ALLOWED_ZONES_VIOLATION"
},
{
"tags": [
"string"
],
"text": "string",
"type": "FORBIDDEN_ZONES_VIOLATION"
},
{
"text": "string",
"type": "INCOMPATIBLE_CONTAINER_DIMENSIONS_VIOLATION"
},
{
"text": "string",
"type": "READY_TIMEREADY_TIME_VIOLATION"
},
{
"text": "string",
"type": "EXPIRING_TIME_VIOLATION"
},
{
"text": "string",
"type": "DEPENDENT_GROUP_VIOLATION"
},
{
"text": "string",
"type": "ORDER_NOT_LOADED_VIOLATION"
},
{
"text": "string",
"type": "PICKUP_MISSED_DELIVERY_VIOLATION"
},
{
"text": "string",
"type": "INVALID_PICKUP_DELIVERY_ORDER_VIOLATION"
},
{
"text": "string",
"type": "FAILED_SEQUENCE_ORDER_VIOLATION"
},
{
"text": "string",
"type": "NOT_IN_LIFO_ORDER_VIOLATION"
},
{
"text": "string",
"type": "WALKING_COURIER_OVERLOAD_VIOLATION"
},
{
"text": "string",
"type": "SOLID_GROUP_VIOLATION"
},
{
"text": "string",
"type": "LOCATION_TRAILER_DISALLOWED"
}
],
"split_info": {
"order_ratio": 0,
"part_id": 0,
"parts_count": 0,
"units": 0,
"volume_cbm": 0,
"weight_kg": 0
}
}
}
},
"end": {
"actual_arrival_time_s": 0,
"actual_departure_time_s": 0,
"actual_service_start_time_s": 0,
"arrival_time_s": 0,
"departure_time_s": 0,
"load_to_head": [
0,
"string"
],
"load_to_trailer": [
0,
"string"
],
"multi_order": false,
"waiting_duration_s": 0,
"node": {
"type": "depot",
"value": {
"added_shared_service_duration_s": 0,
"anchor_mode": "Decoupling",
"delivered_orders": [
0,
"string"
],
"delivery_deadline": "string",
"fixed_position": false,
"fixed_run": false,
"fixed_shift": false,
"fixed_vehicle": false,
"id": 0,
"keep_in_vehicle": false,
"loaded_orders": [
0,
"string"
],
"parking_mode": "ParkingBegin",
"parking_type": "trailer",
"picked_orders": [
0,
"string"
],
"pickup_id": 0,
"pickup_ids": [
0,
"string"
],
"service_waiting_duration_s": 0,
"total_service_duration_s": 0,
"trailer_decoupled": false,
"trailer_used": false,
"undroppable": false,
"unfeasible_reasons": [
{
"custom_type": "string",
"overload": 0,
"text": "string",
"type": "OVERLOAD_WEIGHT"
},
{
"late_duration_s": 0,
"text": "string",
"type": "FAILED_HARD_TIME_WINDOW"
},
{
"tags": [
"string"
],
"text": "string",
"type": "REQUIRED_TAGS_VIOLATION"
},
{
"tags": [
"string"
],
"text": "string",
"type": "EXCLUDED_TAGS_VIOLATION"
},
{
"overrun_s": 0,
"text": "string",
"type": "TRANSIT_TIME_VIOLATION"
},
{
"text": "string",
"type": "INCOMPATIBLE_VEHICLE_VIOLATION"
},
{
"incompatibilities": [
{
"incompatible_order_id": 0,
"types": [
{
"other_type": "string",
"self_type": "string"
}
]
}
],
"incompatible_load_types": [
"string"
],
"incompatible_order_ids": [
0,
"string"
],
"text": "string",
"type": "INCOMPATIBLE_LOAD_TYPES_VIOLATION"
},
{
"incompatibilities": [
{
"incompatible_order_id": 0,
"zones": [
{
"other_zone": "string",
"self_zone": "string"
}
]
}
],
"incompatible_order_ids": [
0,
"string"
],
"incompatible_zones": [
"string"
],
"text": "string",
"type": "INCOMPATIBLE_ZONES_VIOLATION"
},
{
"text": "string",
"type": "VEHICLE_TOO_MANY_RUNS"
},
{
"text": "string",
"type": "SHIFT_TOO_MANY_RUNS"
},
{
"tags": [
"string"
],
"text": "string",
"type": "ALLOWED_ZONES_VIOLATION"
},
{
"tags": [
"string"
],
"text": "string",
"type": "FORBIDDEN_ZONES_VIOLATION"
},
{
"text": "string",
"type": "INCOMPATIBLE_CONTAINER_DIMENSIONS_VIOLATION"
},
{
"text": "string",
"type": "READY_TIMEREADY_TIME_VIOLATION"
},
{
"text": "string",
"type": "EXPIRING_TIME_VIOLATION"
},
{
"text": "string",
"type": "DEPENDENT_GROUP_VIOLATION"
},
{
"text": "string",
"type": "ORDER_NOT_LOADED_VIOLATION"
},
{
"text": "string",
"type": "PICKUP_MISSED_DELIVERY_VIOLATION"
},
{
"text": "string",
"type": "INVALID_PICKUP_DELIVERY_ORDER_VIOLATION"
},
{
"text": "string",
"type": "FAILED_SEQUENCE_ORDER_VIOLATION"
},
{
"text": "string",
"type": "NOT_IN_LIFO_ORDER_VIOLATION"
},
{
"text": "string",
"type": "WALKING_COURIER_OVERLOAD_VIOLATION"
},
{
"text": "string",
"type": "SOLID_GROUP_VIOLATION"
},
{
"text": "string",
"type": "LOCATION_TRAILER_DISALLOWED"
}
],
"split_info": {
"order_ratio": 0,
"part_id": 0,
"parts_count": 0,
"units": 0,
"volume_cbm": 0,
"weight_kg": 0
}
}
}
}
}
}
],
"locations": [
{
"address": "string",
"allow_trailers": false,
"can_be_merged": true,
"can_be_split": false,
"can_have_rest_during_service": true,
"client_id": 0,
"client_service_duration_s": {
"fixed": 0,
"scaled": 0
},
"comments": "string",
"crossdock_mode": "deny",
"crossdock_service_duration_s": {
"fixed": 0,
"scaled": 0
},
"custom_value": 0,
"delivery_deadline": "string",
"delivery_to": 0,
"delivery_to_any": [
0,
"string"
],
"depot_duration_s": {
"fixed": 0,
"scaled": 0
},
"depot_expiring_time": "string",
"depot_id": [
0,
"string"
],
"depot_ready_time": "string",
"description": "string",
"dropped_ratio": 0,
"garage_loading_mode": "default",
"hard_time_window": "string",
"hard_window": false,
"id": 0,
"ignore_zones_compatibility": false,
"in_lifo_order": false,
"load_types": [
"string"
],
"max_split_parts": 10,
"max_total_vehicles": 0,
"may_drop_in_crossdock": true,
"optional_tags": [
{
"tag": "string",
"value": 0
}
],
"parking_service_duration_s": 0,
"phone": "string",
"pickup_from_any": false,
"pickup_must_reach_depot": false,
"point": {
"lat": 0,
"lon": 0
},
"preset_id": "string",
"quant": 0,
"ref": "string",
"required_tags": [
"string"
],
"return_to": 0,
"sequence_order": 0,
"service_duration_s": {
"fixed": 0,
"scaled": 0
},
"service_durations": {
"client": {
"fixed": 0,
"scaled": 0
},
"crossdock": {
"fixed": 0,
"scaled": 0
},
"depot": {
"fixed": 0,
"scaled": 0
},
"location": {
"fixed": 0,
"scaled": 0
},
"parking": 0,
"stop": {
"fixed": 0,
"scaled": 0
}
},
"shared_service_duration_s": {
"fixed": 0,
"scaled": 0
},
"shared_with_company_ids": [
0
],
"soft_depot_expiring_time": "string",
"soft_depot_ready_time": "string",
"split_parts_must_fill_whole_vehicle": false,
"time_window": "string",
"time_windows": [
{
"hard_time_window": "string",
"time_window": "string"
}
],
"title": "string",
"type": "depot",
"use_in_proximity": true,
"transit_time": {
"hard_limit_s": 0,
"limit_s": 0
},
"throughput": {
"kg_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"units_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"vehicle_count": [
{
"time_window": "string",
"value": 0
}
]
},
"shipment_size": {
"units": 0,
"volume_cbm": 0,
"weight_kg": 0,
"volume": {
"align": "all_axes",
"depth_m": 0,
"height_m": 0,
"type": "bulk",
"width_m": 0
},
"custom": 0
},
"rolling_throughput": {
"vehicle_count": [
{
"time_window": "string",
"value": 0
}
]
},
"penalty": {
"drop": {
"fixed": 0,
"scaled": 1000000
},
"transit_time": {
"fixed": 0,
"minute": 0
},
"time_between_visits": {
"fixed": 1000,
"minute": 17
},
"throughput": {
"fixed": 1000,
"kg": 50,
"unit": 100,
"vehicle": 100000
},
"rolling_throughput": {
"fixed": 1000,
"vehicle": 100000
},
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
},
"depot_ready_time": {
"fixed": 1000,
"minute": 17
},
"depot_expiring_time": {
"fixed": 1000,
"minute": 17
},
"delivery_deadline": {
"fixed": 1000,
"minute": 17
}
}
}
],
"options": {
"absolute_time": false,
"avoid_tolls": false,
"avoid_unpaved_and_poor": false,
"avoid_zones": [
"string"
],
"balanced_groups": [
{
"id": "string",
"penalty": {
"custom_value": 0,
"hour": 0,
"ignore_unused_vehicles": false,
"km": 0,
"served_order": 0,
"stop": 0,
"unit": 0,
"volume_cbm": 0,
"weight_kg": 0
}
}
],
"close_location_groups_radius_m": 0,
"close_locations_during_post_optimization_only": false,
"critical_lateness_risk_probability": 20,
"date": "string",
"enable_vehicle_classes": true,
"enable_vehicle_optimization": true,
"fix_planned_shifts": false,
"fixed_drops": false,
"force_merge_multiorders": false,
"global_proximity_factor": 0,
"ignore_min_stops_for_unused": false,
"ignore_zones": false,
"immutable": false,
"incompatible_load_types": [
[
"string"
]
],
"incompatible_zones": [
[
"string"
]
],
"load_when_ready": false,
"location_groups": [
{
"dependent": false,
"location_ids": [
0,
"string"
],
"solid": false,
"title": "string"
}
],
"matrix_router": "main",
"max_distance_to_projection_m": 1000000000,
"max_drop_penalty_percentage": 100,
"max_split_orders_percentage": 100,
"merge_multiorders": false,
"merge_multiorders_of_different_clients": true,
"minimize_lateness_risk": false,
"multiorder_radius_m": 1,
"penalize_late_service": false,
"points_throughputs": [
{
"throughput": {
"kg_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"units_per_hour": [
{
"time_window": "string",
"value": 0
}
],
"vehicle_count": [
{
"time_window": "string",
"value": 0
}
]
},
"point": {
"lat": 0,
"lon": 0
},
"penalty": {
"throughput": {
"fixed": 1000,
"kg": 50,
"unit": 100,
"vehicle": 100000
}
}
}
],
"post_optimization": false,
"preset_id": "string",
"proximity_factor": 0,
"quality": "low",
"restart_on_drop": false,
"routing_mode": "driving",
"template_rest_schedules": [
{
"break_type": "from_last",
"breaks": [
{
"can_be_split": false,
"can_rest_during_service": true,
"check_ending_time": false,
"continuous_travel_time_range": "string",
"driving_time_range": "string",
"exact_time_range": "string",
"id": 0,
"max_split_parts": 0,
"min_first_split_part_duration_s": 0,
"min_last_split_part_duration_s": 0,
"min_split_part_duration_s": 600,
"repeatable": false,
"rest_duration_s": 0,
"travel_time_range": "string",
"type": "string",
"work_time_range_from_start": "string",
"work_time_range_till_rest": "string",
"penalty": {
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
{
"break_type": "from_last",
"can_be_split": false,
"can_rest_during_service": true,
"check_ending_time": false,
"desired_work_duration": 0,
"hard_time_range": "string",
"id": 0,
"max_split_parts": 0,
"min_first_split_part_duration_s": 0,
"min_last_split_part_duration_s": 0,
"min_split_part_duration_s": 600,
"repeatable": false,
"rest_duration_s": 0,
"soft_time_range": "string",
"type": "string",
"penalty": {
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
}
],
"id": "string",
"penalty": {
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
}
],
"time_zone": 0,
"wait_in_multiorders": true,
"weighted_drop_penalty": false,
"penalty": {
"unused_depot": {
"ending": 0,
"middle": 10000,
"starting": 0
},
"split_orders_percentage": {
"fixed": 1000,
"per_percent": 50
},
"small_order_part_before_big": {
"scaled": 0
},
"multiorders": {
"per_extra_point": 0,
"per_extra_vehicle": 0,
"per_extra_visit": 0
},
"empty_run_before_full": {
"scaled": 0
},
"drop_penalty_percentage": {
"fixed": 1000,
"per_percent": 50
},
"close_location_groups": {
"per_extra_point": 0,
"per_extra_vehicle": 0,
"per_extra_visit": 0
}
}
},
"vehicles": [
{
"allow_different_depots_in_route": false,
"allowed_zones": [
"string"
],
"can_change_depot_between_runs": false,
"can_rest_between_runs": true,
"can_split_preset_work_breaks": true,
"can_visit_depot_at_start": false,
"close_locations": [
{
"routing_mode": "driving",
"search_radius_m": 0,
"soft_search_radius_m": 0,
"duration_till_service_s": {
"penalty": 0,
"value": 1000000000
},
"distance_till_service_m": {
"penalty": 0,
"value": 1000000000
}
}
],
"cost": {
"fixed": 3000,
"hour": 100,
"km": 8,
"location": 0,
"run": 0,
"tonne_km": 0,
"waiting_hour": 0
},
"crossdock_mode": "deny",
"depot_extra_service_duration_s": 0,
"depot_id": [
0,
"string"
],
"depots_only_at_run_beginning": false,
"ending_depot_id": [
0,
"string"
],
"excluded_tags": [
"string"
],
"finish_at": 0,
"finish_route_in_starting_depot": false,
"finish_run_in_starting_depot": false,
"first_edges_penalty_factor": 0,
"fixed_planned_route": false,
"forbidden_zones": [
"string"
],
"global_proximity_attraction_point": 0,
"id": 0,
"imei": 0,
"immutable": false,
"incompatible_load_types": [
[
"string"
]
],
"incompatible_zones": [
[
"string"
]
],
"last_edges_penalty_factor": 0,
"max_middle_depots": 0,
"max_runs": 1,
"middle_depot_id": [
0,
"string"
],
"min_stop_weight": 0,
"onboard_incompatible_load_types": false,
"optional_zones": [
{
"value": 0,
"zone": "string"
}
],
"payout": "string",
"phone": "string",
"preset_id": "string",
"ref": "string",
"rest_schedule_id": "string",
"rest_schedule_preset": "private_transport",
"return_to_depot": true,
"routing_mode": "driving",
"service_duration_multiplier": 1,
"shared_service_duration_multiplier": 1,
"shifts": [
{
"balanced_group_id": "string",
"hard_max_duration_s": 2592000,
"hard_max_working_duration_s": 0,
"hard_time_window": "string",
"hard_window": false,
"id": "string",
"immutable": false,
"max_duration_s": 172800,
"max_mileage_km": 0,
"max_runs": 1,
"max_working_duration_s": 0,
"maximal_stops": 0,
"minimal_stops": 0,
"minimal_unique_stops": 0,
"preset_id": "string",
"rest_schedule_id": "string",
"service_duration_s": 0,
"start_shift_from_first_order": false,
"time_window": "string",
"run_restrictions": {
"minimal_stops": {
"value": 0,
"penalty": {
"fixed": 1000,
"per_stop": 100
}
},
"maximal_stops": {
"value": 0,
"penalty": {
"fixed": 1000,
"per_stop": 100
}
},
"max_mileage_km": {
"value": 0,
"penalty": {
"fixed": 1000,
"per_km": 100
}
}
},
"rest_schedule": {
"break_type": "from_last",
"breaks": [
{
"can_be_split": false,
"can_rest_during_service": true,
"check_ending_time": false,
"continuous_travel_time_range": "string",
"driving_time_range": "string",
"exact_time_range": "string",
"id": 0,
"max_split_parts": 0,
"min_first_split_part_duration_s": 0,
"min_last_split_part_duration_s": 0,
"min_split_part_duration_s": 600,
"repeatable": false,
"rest_duration_s": 0,
"travel_time_range": "string",
"type": "string",
"work_time_range_from_start": "string",
"work_time_range_till_rest": "string",
"penalty": {
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
{
"break_type": "from_last",
"can_be_split": false,
"can_rest_during_service": true,
"check_ending_time": false,
"desired_work_duration": 0,
"hard_time_range": "string",
"id": 0,
"max_split_parts": 0,
"min_first_split_part_duration_s": 0,
"min_last_split_part_duration_s": 0,
"min_split_part_duration_s": 600,
"repeatable": false,
"rest_duration_s": 0,
"soft_time_range": "string",
"type": "string",
"penalty": {
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
}
],
"penalty": {
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
"penalty": {
"working_overtime": {
"fixed": 1000,
"minute": 17
},
"unique_stop_lack": {
"fixed": 0,
"per_stop": 0
},
"stop_lack": {
"fixed": 0,
"per_stop": 0
},
"stop_excess": {
"fixed": 0,
"per_stop": 0
},
"out_of_time": {
"fixed": 1000,
"minute": 17
},
"max_mileage": {
"fixed": 1000,
"km": 100
},
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
}
],
"start_at": 0,
"starting_depot_id": [
0,
"string"
],
"tags": [
"string"
],
"travel_time_multiplier": 1,
"visit_depot_at_start": true,
"visited_locations": [
{
"delivered_orders": [
0,
"string"
],
"id": 0,
"order_ratio": 0,
"shift_id": "string",
"time": "string",
"wait_if_early": true
}
],
"walking_courier": {
"restrictions": {
"max_walking_edge_distance_m": {
"penalty": 0,
"value": 1000000000
},
"max_parking_walking_distance_m": {
"penalty": 0,
"value": 1000000000
},
"max_parking_duration_s": {
"penalty": 0,
"value": 1000000000
}
},
"cost": {
"hour": 0,
"km": 0
},
"capacity": {
"units": 1000000000
}
},
"trailer": {
"coupling_time_s": 0,
"decoupling_time_s": 0,
"rolling_cost": 0,
"rolling_time": {
"fixed_time_s": 0,
"s_per_kg": 0,
"s_per_m3": 0,
"s_per_unit": 0
},
"max_capacity_difference": {
"units": 0,
"volume_cbm": 0,
"weight_kg": 0,
"custom": 0
},
"cost": {
"fixed": 3000,
"hour": 100,
"km": 8,
"location": 0,
"run": 0,
"tonne_km": 0,
"waiting_hour": 0
},
"capacity": {
"units": 1000000000,
"volume_cbm": 0,
"weight_kg": 1000000000,
"volume": {
"depth_m": 1000,
"height_m": 1000,
"width_m": 1000
},
"limits": {
"units_perc": 100,
"volume_perc": 100,
"weight_perc": 100
},
"custom": 0
}
},
"specs": {
"axle_weight": 0,
"height": 0,
"length": 0,
"max_weight": 0,
"max_weight_kg": 0,
"width": 0
},
"rest_schedule": {
"break_type": "from_last",
"breaks": [
{
"can_be_split": false,
"can_rest_during_service": true,
"check_ending_time": false,
"continuous_travel_time_range": "string",
"driving_time_range": "string",
"exact_time_range": "string",
"id": 0,
"max_split_parts": 0,
"min_first_split_part_duration_s": 0,
"min_last_split_part_duration_s": 0,
"min_split_part_duration_s": 600,
"repeatable": false,
"rest_duration_s": 0,
"travel_time_range": "string",
"type": "string",
"work_time_range_from_start": "string",
"work_time_range_till_rest": "string",
"penalty": {
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
{
"break_type": "from_last",
"can_be_split": false,
"can_rest_during_service": true,
"check_ending_time": false,
"desired_work_duration": 0,
"hard_time_range": "string",
"id": 0,
"max_split_parts": 0,
"min_first_split_part_duration_s": 0,
"min_last_split_part_duration_s": 0,
"min_split_part_duration_s": 600,
"repeatable": false,
"rest_duration_s": 0,
"soft_time_range": "string",
"type": "string",
"penalty": {
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
}
],
"penalty": {
"late": {
"fixed": 1000,
"minute": 17
},
"early": {
"fixed": 1000,
"minute": 17
}
}
},
"proximity_edge_cost": {
"hour": 0,
"km": 0
},
"planned_route": {
"locations": [
{
"anchor_mode": "Decoupling",
"delivered_orders": [
0,
"string"
],
"delivery_in_current_run": false,
"id": 0,
"is_middle_depot": false,
"loaded_orders": [
0,
"string"
],
"order_ratio": 0,
"parking_mode": "ParkingBegin",
"picked_orders": [
0,
"string"
],
"shift_id": "string",
"wait_if_early": true
}
],
"planned_runs_first": false,
"start_time": "string"
},
"penalty": {
"min_stop_weight": {
"fixed": 1000,
"kg": 50
},
"empty_runs": {
"fixed": 0,
"per_run": 0
},
"arrival_after_start": {
"as_soon_as_possible": false,
"average_h": 0
}
},
"capacity": {
"units": 1000000000,
"volume_cbm": 0,
"weight_kg": 1000000000,
"volume": {
"depth_m": 1000,
"height_m": 1000,
"width_m": 1000
},
"limits": {
"units_perc": 100,
"volume_perc": 100,
"weight_perc": 100
},
"custom": 0
}
}
],
"zones": [
{
"id": "string",
"geometry": {
"coordinates": [
[
[
0
]
]
],
"type": "string"
}
}
]
}
Name |
Description |
locations* |
Type: mvrp_request_1_locations_item[] List of locations. Min items: |
options* |
Type: solver_options_mvrp_2 Solver options. It is forbidden to specify options that are not present in the list below. |
vehicles* |
Type: vehicle[] List of couriers, available for route planning. Min items: |
depot |
Type: depot_location_1 A depot, by default start and finish point for a vehicle on route. |
depots |
Type: mvrp_request_1_depots_item[] List of depots. Fields |
initial_routes |
Type: mvrp_request_1_initial_routes_item[] List of routes in old response, which has to be loaded into solver. |
zones |
Type: mvrp_request_1_zones_item[] |
mvrp_request_1_locations_item
Location of order to deliver from depot.
Name |
Description |
id* |
Type: integer or string Location ID. All locations IDs in task must be unique and have the same type: integer or string. More information |
point* |
Type: coordinate_2 WGS84 coordinate of a location. More information |
address |
Type: string Address of the location. |
allow_trailers |
Type: boolean When Default: |
can_be_merged |
Type: boolean An order can be a part of multiorder. More information Default: |
can_be_split |
Type: boolean An order can be split into parts between different couriers. More information Default: |
can_have_rest_during_service |
Type: boolean It is allowed to make breaks during order service time. Default: |
client_id |
Type: integer or string Defines |
client_service_duration_s |
Type: client_service_duration_0 or number Duration of service at a location, which can be shared among the other orders of the same client (same |
comments |
Type: string Comments. |
crossdock_mode |
Type: string Defines whether it is allowed to deliver this order through a cross-dock depot.
Default: Enum: |
crossdock_service_duration_s |
Type: crossdock_service_duration_0 or number Time spent at a cross dock during the unloading of this order. More information |
custom_value |
Type: number A custom numeric value, associated with order. E.g. the reward for the courier for delivering the order. May be used as a component in vehicle cost function. More information |
delivery_deadline |
Type: string Time by which the |
delivery_to |
Type: integer or string Defines |
delivery_to_any |
Type: (integer or string)[] A list of |
depot_duration_s |
Type: depot_duration_0 or number Time spent at a depot during handling of this location (goods loading, document collection, etc.). More information |
depot_expiring_time |
Type: string Time by which the order must be taken from the depot, in |
depot_id |
Type: integer or string or array |
depot_ready_time |
Type: string Time when the order is ready to be taken from any depot, in |
description |
Type: string Location description. |
dropped_ratio |
Type: number Order ratio which have to stay in drop. More information Min value: Max value: |
garage_loading_mode |
Type: string Property to control whether a order can be loaded or unloaded in the garage.* Default: Enum: |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Restricts time window violation during route planning. If order cannot be delivered within a specified time window, it will be excluded from the route and added to Default: |
ignore_zones_compatibility |
Type: boolean Ignore the effects caused by the Default: |
in_lifo_order |
Type: boolean Orders with this field set to Default: |
load_types |
Type: string[] Defines order types.
Must not be defined for |
max_split_parts |
Type: integer Maximal number of parts in which the order can be split. More information Default: Min value: |
max_total_vehicles |
Type: integer Maximal number of vehicles that can be served by an anchor location. Unlimited by default. More information Min value: |
may_drop_in_crossdock |
Type: boolean May drop pickup order in crossdock location. More information Default: |
optional_tags |
Type: mvrp_request_1_locations_optional_tags_item[] List of tags which are not required for a courier to deliver the order, but they can decrease or increase the route cost if matched. More information |
parking_service_duration_s |
Type: number Duration of parking at location. If the order is delivered using Default: Min value: Max value: |
penalty |
Type: mvrp_request_1_locations_penalty Penalty components for non-completion and time window violation. More information |
phone |
Type: string Phone number of the client. |
pickup_from_any |
Type: boolean Delivery-orders that have this field set to Default: |
pickup_must_reach_depot |
Type: boolean The field determines whether the pickup order is considered delivered if it is not delivered to depot. The field can be defined only for pickup orders. The field is mutually exclusive with fields Default: |
preset_id |
Type: string Preset number for location properties. More information |
quant |
Type: number or locations_quant_0 |
ref |
Type: string Location reference. |
required_tags |
Type: string[] List of tags a courier must have to deliver the order. More information |
return_to |
Type: integer or string Defines |
rolling_throughput |
Type: mvrp_request_1_locations_rolling_throughput Rolling throughput limit (supported for anchors). |
sequence_order |
Type: integer All locations in vehicle route with specified |
service_duration_s |
Type: service_duration_2_0 or number Duration of service at location. Service duration can include any operations at location, such as loading or unloading items from a vehicle, or any other time associated with a location (apart from waiting, which is time after arrival and before service).More information |
service_durations |
Type: service_durations Structure storing location service durations. More information |
shared_service_duration_s |
Type: shared_service_duration_0 or number Duration of service at a location, which can be shared among the other orders at exactly the same location. Shared service duration can include such operations as parking of a car, delivering documents, etc. More information |
shared_with_company_ids |
Type: integer[] IDs of the companies that can access the order information. More information Min value: |
shipment_size |
Type: mvrp_request_1_locations_shipment_size Shipment size (dimensions and/or weight). More information |
soft_depot_expiring_time |
Type: string Time by which the order must be taken from the depot, in |
soft_depot_ready_time |
Type: string Time when the order is ready to be taken from any depot, in |
split_parts_must_fill_whole_vehicle |
Type: boolean Parts, split from a splittable order, should fill the whole vehicle. More information Default: |
throughput |
Type: mvrp_request_1_locations_throughput Location throughput limit (supported for the orders which can be split). More information |
time_window |
Type: string Allowed time window to visit location, in |
time_windows |
Type: mvrp_request_1_locations_time_windows_item[] List of allowed time windows. Time windows can not overlap. Fields |
title |
Type: string Location title. |
transit_time |
Type: mvrp_request_1_locations_transit_time Restrictions on the time the order spends inside a vehicle. More information |
type |
Type: string Defines a type of service at the location:
Default: Enum: |
use_in_proximity |
Type: boolean When Default: |
solver_options_mvrp_2
Solver options. It is forbidden to specify options that are not present in the list below.
Name |
Description |
time_zone* |
Type: number or string |
absolute_time |
Type: boolean Use ISO 8601 format (YYYY-MM-DDTHH:MM:SS+HH:MM) for Default: |
avoid_tolls |
Type: boolean Toll roads are not used if possible (only if Default: |
avoid_unpaved_and_poor |
Type: boolean Unpaved and poor roads are not used if possible (only if Default: |
avoid_zones |
Type: string[] List of zones that cannot be entered when performing a route. These zones will be avoided even if the fastest route passes through them. The total number of corners in zone polygons must not exceed 300. More information Min length: Max length: Max items: Min items: |
balanced_groups |
Type: solver_options_mvrp_2_balanced_groups_item[] Each item in this array defines a balanced group of routes. Each route in a group corresponds to a single courier shift. Shifts are linked with groups by |
close_location_groups_radius_m |
Type: number The distance specifying how close the locations must be to belong to the same close location group. More information Default: Min value: Max value: |
close_locations_during_post_optimization_only |
Type: boolean Apply penalties defined in Default: |
critical_lateness_risk_probability |
Type: number If a probability of being late on a location is greater or equal than a specified value, than the location is accounted in Default: Min value: Max value: |
date |
Type: string Starting date for all routes ( Pattern: |
enable_vehicle_classes |
Type: boolean When true, solver will classify vehicles based on given vehicle specs to calculate more accurate distances between locations. Can be set to false to reduce size of the task and avoid "The task is too big" error.More information Default: |
enable_vehicle_optimization |
Type: boolean Allows use more optimization for minimization of courier count. Default: |
fix_planned_shifts |
Type: boolean Fix shifts of locations from planned routes.More information Default: |
fixed_drops |
Type: boolean All locations that are not planned, will remain dropped. Default: |
force_merge_multiorders |
Type: boolean Changes the behavior when the Default: |
global_proximity_factor |
Type: number Level of location proximity influence on courier routes. Recommended values are from Default: Min value: Max value: |
ignore_min_stops_for_unused |
Type: boolean Ignore Default: |
ignore_zones |
Type: boolean Ignore all zone-related options in vehicles and locations. More information Default: |
immutable |
Type: boolean All routes, specified in Default: |
incompatible_load_types |
Type: string[][] Each item in this array defines list of location load types, that should not be handled within the same courier run. More information |
incompatible_zones |
Type: string[][] Each item in this array defines list of location zones, that should not be visited within the same courier run. More information Min length: Max length: |
load_when_ready |
Type: boolean Start load orders in depot when they are ready (in order of Default: |
location_groups |
Type: solver_options_mvrp_2_location_groups_item[] Each item in this array defines a group of locations which should be assigned to the same vehicle shift. Some locations from the group might get dropped. Each location can be referenced by only one location group. More information |
matrix_router |
Type: string Matrix router to be used for route planning
Default: Enum: |
max_distance_to_projection_m |
Type: number Restriction for max distance to projcetion point. Will be ignored if order has not any suitable projection. Default: Min value: Max value: |
max_drop_penalty_percentage |
Type: number Maximal relation of drop penalty to the sum of drop penalties in all orders. More information Default: Min value: Max value: |
max_split_orders_percentage |
Type: number Maximal ratio of orders which can be split into parts. More information Default: Min value: Max value: |
merge_multiorders |
Type: boolean If possible merge those orders which have the same coordinates, i.e. serve them by a single vehicle. More information Default: |
merge_multiorders_of_different_clients |
Type: boolean If Default: |
minimize_lateness_risk |
Type: boolean Compute and minimize the probability of being late to locations. In other words, avoid routes such that the estimated time of arrival is close to the end of a time window. More information Default: |
multiorder_radius_m |
Type: number The distance specifying how close the locations must be to be merged into a multiorder. More information Default: Min value: Max value: |
penalize_late_service |
Type: boolean This option determines whether to penalize for late arrivals or late service.
Default: |
penalty |
Type: solver_options_mvrp_2_penalty Penalties for global solution limitations violation. |
points_throughputs |
Type: solver_options_mvrp_2_points_throughputs_item[] Each item in this array defines point throughput. More information |
post_optimization |
Type: boolean Use post optimization: restart algorithm in the last 10% operations with disabled global proximity and balancing. More information Default: |
preset_id |
Type: string Preset number for task options. More information |
proximity_factor |
Type: number Level of location proximity influence on courier routes. Recommended values are from Default: Min value: Max value: |
quality |
Type: string Solution quality:
Default: Enum: |
restart_on_drop |
Type: boolean Restart to optimize only non-dropped orders, in case we have not found solutions without drops. Enable this option if drops are expected and acceptable for your business scenario. More information Default: |
routing_mode |
Type: string Transportation method. More information
Default: Enum: |
template_rest_schedules |
Type: solver_options_mvrp_2_template_rest_schedules_item[] List of rest schedule templates. More information |
wait_in_multiorders |
Type: boolean Allows to wait in multiorders. More information Default: |
weighted_drop_penalty |
Type: boolean Compute drop penalty according to shipment weight and volume. It helps optimization when couriers are highly loaded. Specified location drop penalties are ignored in this case. More information Default: |
vehicle
Vehicle specification.
Name |
Description |
id* |
Type: integer or string Vehicle ID. All vehicle IDs in task must be unique and have the same type: integer or string. More information |
allow_different_depots_in_route |
Type: boolean Courier is allowed to visit depots with different ids in the same route. More information Default: |
allowed_zones |
Type: string[] List of zones, which can be visited by courier. More information Min length: Max length: |
can_change_depot_between_runs |
Type: boolean Courier is allowed to start the run from different depot than the one where its previous run has ended. More information Default: |
can_rest_between_runs |
Type: boolean Can work breaks be inserted between runs. Default: |
can_split_preset_work_breaks |
Type: boolean Can work breaks defined by the rest_schedule_preset option be split. Default: |
can_visit_depot_at_start |
Type: boolean If this courier has the option |
capacity |
Type: vehicle_capacity Vehicle capacity. More information |
close_locations |
Type: vehicle_close_locations_item[] |
cost |
Type: vehicle_cost_0 or string or vehicle_cost_1 |
crossdock_mode |
Type: string Defines whether the courier is allowed to deliver orders to the cross-dock depot. More information
Default: Enum: |
depot_extra_service_duration_s |
Type: number Additional time required to load this courier in the depot. Default: Min value: Max value: |
depot_id |
Type: integer or string or array |
depots_only_at_run_beginning |
Type: boolean Middle depots are allowed only until first order location. More information Default: |
ending_depot_id |
Type: integer or string or array |
excluded_tags |
Type: string[] List of excluding courier tags, checked for compatibility with location tags (POSIX-extended regular expression are used). More information |
finish_at |
Type: integer or string Defines |
finish_route_in_starting_depot |
Type: boolean Finish route in the same depot where it started. More information Default: |
finish_run_in_starting_depot |
Type: boolean Finish runs in the same depot where it started. More information Default: |
first_edges_penalty_factor |
Type: number A factor that determines extra penalty/bonus for the first edge of each run. If positive, solver tries to serve orders starting from the closest to depot. If negative, solver tries to serve orders starting from the most distant from depot. More information Default: |
fixed_planned_route |
Type: boolean If Default: |
forbidden_zones |
Type: string[] List of zones, which can not be visited by courier. More information Min length: Max length: |
global_proximity_attraction_point |
Type: integer or string Defines |
imei |
Type: integer The number of the GPS tracker. |
immutable |
Type: boolean All routes for this courier, specified in Default: |
incompatible_load_types |
Type: string[][] Each item in this array defines list of location load types, that should not be handled within the same courier run (overrides |
incompatible_zones |
Type: string[][] Each item in this array defines list of location zones, that should not be visited within the same courier run. (overrides Min length: Max length: |
last_edges_penalty_factor |
Type: number A factor that determines extra penalty/bonus for the last edge of each run. If positive, solver tries to end serving orders closer to depot. If negative, solver tries to end serving orders farther from depot. More information Default: |
max_middle_depots |
Type: integer Maximal number of middle depots (i.e. depots which do not break the run) in the route. More information Default: |
max_runs |
Type: integer Maximal number of the courier runs from the depot to locations in all shifts. More information Default: |
middle_depot_id |
Type: integer or string or array |
min_stop_weight |
Type: number Minimal total weight of all orders in one point. More information Default: |
onboard_incompatible_load_types |
Type: boolean Determine load type incompatibility with respect only to orders on vehicle board. Default: |
optional_zones |
Type: vehicle_optional_zones_item[] List of optional zones with bonus. More information |
payout |
Type: string or vehicle_payout_0 |
penalty |
Type: vehicle_penalty Penalties for vehicle limitations violation. |
phone |
Type: string Phone number of the courier. |
planned_route |
Type: vehicle_planned_route A planned courier route, should be used to assign already chosen locations to vehicles. These locations will not be dropped even if some strict constraint(s) is violated and will be served by the courier. The order of locations provided in this option can be changed for optimization of final route. By default shifts assigned to planned locations can be changed as well. They can be fixed with |
preset_id |
Type: string Preset number for courier properties. More information |
proximity_edge_cost |
Type: vehicle_proximity_edge_cost Cost of proximity-edges for the constraints specified by the fields |
ref |
Type: string Courier reference number. More information |
rest_schedule |
Type: vehicle_rest_schedule Schedule of rest breaks. More information |
rest_schedule_id |
Type: string ID of a rest schedule template used in this courier. |
rest_schedule_preset |
Type: string Rest schedule preset from the regulations used in this courier. Enum: |
return_to_depot |
Type: boolean If true, the vehicle returns to its Default: |
routing_mode |
Type: string Transportation method. If present, overrides
Enum: |
service_duration_multiplier |
Type: number Service duration adjustment coefficient for slow or fast couriers. More information Default: Min value: |
shared_service_duration_multiplier |
Type: number Shared service duration adjustment coefficient for slow or fast couriers. More information Default: Min value: |
shifts |
Type: vehicle_shifts_item[] List of courier shifts. More information |
specs |
Type: vehicle_specs Vehicle specification. More information |
start_at |
Type: integer or string Defines |
starting_depot_id |
Type: integer or string or array |
tags |
Type: string[] List of courier tags, checked for compatibility with location tags (POSIX-extended regular expression are used). More information |
trailer |
Type: vehicle_trailer Trailer specification. Usage of trailer with |
travel_time_multiplier |
Type: number Travel duration adjustment coefficient for slow or fast vehicles. More information Default: Min value: |
visit_depot_at_start |
Type: boolean If true, the first route of the courier will go through the
Default: |
visited_locations |
Type: vehicle_visited_locations_item[] List of locations to be visited by a vehicle in exact order as fixed part of the route without optimizations, with optional times of departure from some locations. More information |
walking_courier |
Type: vehicle_walking_courier Description of a pedestrian courier. Usage of |
depot_location_1
A depot, by default start and finish point for a vehicle on route.
Name |
Description |
point* |
Type: coordinate_2 WGS84 coordinate of a location. More information |
address |
Type: string Address of the location. |
crossdock_safety_waiting_duration_s |
Type: number The duration of the minimum time interval between the moment the order arrives at the cross-dock depot and the moment when it can be picked up from there by a vehicle for delivery. This interval is needed so that there is a reserve of time in case the vehicle that brings the orders is late. More information Default: Min value: Max value: |
description |
Type: string Location description. |
finish_service_duration_s |
Type: number Duration of service at a depot in the end of a route. Finish service duration can include any operations at depot, e.g. unloading items, documents collection etc. More information Default: Min value: Max value: |
flexible_start_time |
Type: boolean By default courier start time is equal to either depot, or garage, or shift start time. When this option is set to true, courier can start earlier or later than the default start time. In this case the optimal start time will be computed according to cost minimization. More information.
Also when Default: |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Restricts time window relaxation during route planning. When true, vehicles are allowed to return to depot only within the specified time window. More information Default: |
id |
Type: integer or string Location ID. All locations IDs in task must be unique and have the same type: integer or string. More information |
load_service_duration_s |
Type: number Additional duration for loading delivery orders into a vehicle, added only if there is at least one delivery order,loaded in this depot. More information Default: Min value: |
package_throughput |
Type: depot_location_1_package_throughput Restriction on packaging speed in depot. More information |
penalty |
Type: depot_location_1_penalty Penalties for depot time window or throughput violation. More information |
preliminary_service_duration_s |
Type: number Duration of preliminary service at depot. This duration can include any operations that can be done before loading the vehicle. These operations will be done before Default: Min value: Max value: |
preset_id |
Type: string Preset number for depot properties. More information |
ref |
Type: string Location reference. |
service_duration_s |
Type: service_duration_2_0 or number Duration of service at location. Service duration can include any operations at location, such as loading or unloading items from a vehicle, or any other time associated with a location (apart from waiting, which is time after arrival and before service).More information |
throughput |
Type: depot_location_1_throughput Depot throughput limit. More information |
time_window |
Type: string Allowed time window to visit location, in |
time_windows |
Type: depot_location_1_time_windows_item[] List of allowed time windows. Time windows can not overlap. Fields |
time_windows_loading |
Type: depot_location_1_time_windows_loading Time windows when the courier is allowed to leave the depot on the first run. More information |
time_windows_refilling |
Type: depot_location_1_time_windows_refilling Time windows when the courier is allowed to visit a depot (or middle depot) for additional loading. More information |
time_windows_unloading |
Type: depot_location_1_time_windows_unloading Time windows when the courier is allowed to return to the depot on the last run. More information |
title |
Type: string Location title. |
type |
Type: string Defines a type of depot:
Default: Enum: |
unload_service_duration_s |
Type: number Additional duration for unloading pickup orders from a vehicle, added only if there is at least one pickup order,delivered in this depot. More information Default: Min value: |
use_in_proximity |
Type: boolean When |
mvrp_request_1_depots_item
A depot, by default start and finish point for a vehicle on route.
Name |
Description |
point* |
Type: coordinate_2 WGS84 coordinate of a location. More information |
address |
Type: string Address of the location. |
crossdock_safety_waiting_duration_s |
Type: number The duration of the minimum time interval between the moment the order arrives at the cross-dock depot and the moment when it can be picked up from there by a vehicle for delivery. This interval is needed so that there is a reserve of time in case the vehicle that brings the orders is late. More information Default: Min value: Max value: |
description |
Type: string Location description. |
finish_service_duration_s |
Type: number Duration of service at a depot in the end of a route. Finish service duration can include any operations at depot, e.g. unloading items, documents collection etc. More information Default: Min value: Max value: |
flexible_start_time |
Type: boolean By default courier start time is equal to either depot, or garage, or shift start time. When this option is set to true, courier can start earlier or later than the default start time. In this case the optimal start time will be computed according to cost minimization. More information.
Also when Default: |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Restricts time window relaxation during route planning. When true, vehicles are allowed to return to depot only within the specified time window. More information Default: |
id |
Type: integer or string Location ID. All locations IDs in task must be unique and have the same type: integer or string. More information |
load_service_duration_s |
Type: number Additional duration for loading delivery orders into a vehicle, added only if there is at least one delivery order,loaded in this depot. More information Default: Min value: |
package_throughput |
Type: mvrp_request_1_depots_package_throughput Restriction on packaging speed in depot. More information |
penalty |
Type: mvrp_request_1_depots_penalty Penalties for depot time window or throughput violation. More information |
preliminary_service_duration_s |
Type: number Duration of preliminary service at depot. This duration can include any operations that can be done before loading the vehicle. These operations will be done before Default: Min value: Max value: |
preset_id |
Type: string Preset number for depot properties. More information |
ref |
Type: string Location reference. |
service_duration_s |
Type: service_duration_2_0 or number Duration of service at location. Service duration can include any operations at location, such as loading or unloading items from a vehicle, or any other time associated with a location (apart from waiting, which is time after arrival and before service).More information |
throughput |
Type: mvrp_request_1_depots_throughput Depot throughput limit. More information |
time_window |
Type: string Allowed time window to visit location, in |
time_windows |
Type: mvrp_request_1_depots_time_windows_item[] List of allowed time windows. Time windows can not overlap. Fields |
time_windows_loading |
Type: mvrp_request_1_depots_time_windows_loading Time windows when the courier is allowed to leave the depot on the first run. More information |
time_windows_refilling |
Type: mvrp_request_1_depots_time_windows_refilling Time windows when the courier is allowed to visit a depot (or middle depot) for additional loading. More information |
time_windows_unloading |
Type: mvrp_request_1_depots_time_windows_unloading Time windows when the courier is allowed to return to the depot on the last run. More information |
title |
Type: string Location title. |
type |
Type: string Defines a type of depot:
Default: Enum: |
unload_service_duration_s |
Type: number Additional duration for unloading pickup orders from a vehicle, added only if there is at least one pickup order,delivered in this depot. More information Default: Min value: |
use_in_proximity |
Type: boolean When |
mvrp_request_1_initial_routes_item
Name |
Description |
route* |
Type: initial_routes_route_element_1[] Sequence of route nodes, comprising a route. |
vehicle_id* |
Type: integer or string Vehicle ID. All vehicle IDs in task must be unique and have the same type: integer or string. More information |
fixed_order |
Type: boolean Locations, specified in Default: |
immutable |
Type: boolean A route, specified in Default: |
shift |
mvrp_request_1_zones_item
Name |
Description |
geometry* |
|
id* |
Type: string Zone number. |
coordinate_2
WGS84 coordinate of a location. More information
Name |
Description |
lat* |
Type: number Min value: Max value: |
lon* |
Type: number Min value: Max value: |
client_service_duration_0
Name |
Description |
fixed |
Type: number Fixed service duration for any part of the order. Default: Min value: Max value: |
scaled |
Type: number Service time for a part of an order, which is multiplied by order ratio. Default: Min value: Max value: |
crossdock_service_duration_0
Name |
Description |
fixed |
Type: number Fixed service duration for any part of the order. Default: Min value: Max value: |
scaled |
Type: number Service time for a part of an order, which is multiplied by order ratio. Default: Min value: Max value: |
depot_duration_0
Name |
Description |
fixed |
Type: number Fixed service duration for any part of the order. Default: Min value: Max value: |
scaled |
Type: number Service time for a part of an order, which is multiplied by order ratio. Default: Min value: Max value: |
mvrp_request_1_locations_optional_tags_item
An optional tag with bonus or penalty.
Name |
Description |
tag* |
Type: string An arbitrary tag. More information |
value* |
Type: number Value of the tag. When location is served by a vehicle with a matching tag in |
mvrp_request_1_locations_penalty
Penalty components for non-completion and time window violation. More information
Name |
Description |
delivery_deadline |
Type: locations_penalty_delivery_deadline Penalty components for late deliveries from |
depot_expiring_time |
Type: locations_penalty_depot_expiring_time Penalty components for violation |
depot_ready_time |
Type: locations_penalty_depot_ready_time Penalty components for violation |
drop |
Type: penalty_drop_0 or number Penalty for not delivering an order. More information |
early |
Type: locations_penalty_early Penalty components for early service (used instead of |
late |
Type: locations_penalty_late Penalty components for late visits (used instead of |
out_of_time |
Type: locations_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
rolling_throughput |
Type: locations_penalty_rolling_throughput Penalty components for throughput exceeding. More information |
throughput |
Type: locations_penalty_throughput Penalty components for throughput exceeding. More information |
time_between_visits |
Type: locations_penalty_time_between_visits Penalty components for exceeding |
transit_time |
Type: locations_penalty_transit_time Penalty components for exceeding transit time. More information |
locations_quant_0
Minimal part which can be split from the order measured in one of the units. More information
Name |
Description |
units |
Type: number Size of shipment in custom units. Min value: |
volume_cbm |
Type: number Volume of minimal part, cubic meters. Min value: |
weight_kg |
Type: number Weight of minimal part, kilograms. Min value: |
mvrp_request_1_locations_rolling_throughput
Rolling throughput limit (supported for anchors).
Name |
Description |
vehicle_count |
Type: array or number |
service_duration_2_0
Name |
Description |
fixed |
Type: number Fixed service duration for any part of the order. Default: Min value: Max value: |
scaled |
Type: number Service time for a part of an order, which is multiplied by order ratio. Default: Min value: Max value: |
service_durations
Structure storing location service durations. More information
Name |
Description |
client |
Type: client_service_duration_0 or number Duration of service at a location, which can be shared among the other orders of the same client (same |
crossdock |
Type: crossdock_service_duration_0 or number Time spent at a cross dock during the unloading of this order. More information |
depot |
Type: depot_duration_0 or number Time spent at a depot during handling of this location (goods loading, document collection, etc.). More information |
location |
Type: service_duration_2_0 or number Duration of service at location. Service duration can include any operations at location, such as loading or unloading items from a vehicle, or any other time associated with a location (apart from waiting, which is time after arrival and before service).More information |
parking |
Type: number Duration of parking at location. If the order is delivered using Default: Min value: Max value: |
stop |
Type: shared_service_duration_0 or number Duration of service at a location, which can be shared among the other orders at exactly the same location. Shared service duration can include such operations as parking of a car, delivering documents, etc. More information |
shared_service_duration_0
Name |
Description |
fixed |
Type: number Fixed service duration for any part of the order. Default: Min value: Max value: |
scaled |
Type: number Service time for a part of an order, which is multiplied by order ratio. Default: Min value: Max value: |
mvrp_request_1_locations_shipment_size
Shipment size (dimensions and/or weight). More information
Name |
Description |
custom |
Type: number Size of shipment in custom units. Sizes in custom units are defined in format Default: Min value: |
units |
Type: number Size of shipment in custom units. More information Default: Min value: Max value: |
volume |
Type: locations_shipment_size_volume Shipment dimensions and type. |
volume_cbm |
Type: number Explicit volume, cubic meters. By default, the value is taken from Min value: |
weight_kg |
Type: number Weight of shipment, kilograms. Default: Min value: Max value: |
mvrp_request_1_locations_throughput
Location throughput limit (supported for the orders which can be split). More information
Name |
Description |
kg_per_hour |
Type: array or number |
units_per_hour |
Type: array or number |
vehicle_count |
Type: array or number |
mvrp_request_1_locations_time_windows_item
Name |
Description |
time_window* |
Type: string Allowed time window to visit location, in |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
mvrp_request_1_locations_transit_time
Restrictions on the time the order spends inside a vehicle. More information
Name |
Description |
hard_limit_s |
Type: number Hard time limit, values above it are unacceptable. Min value: Max value: |
limit_s |
Type: number Soft time limit, values above it are acceptable but they will be penalized. Min value: Max value: |
solver_options_mvrp_2_balanced_groups_item
A group of balanced routes. If the penalty
field is not set, the penalty {stop
: 100, hour
: 200} is used for backward compatibility. More information
Name |
Description |
id* |
Type: string A unique ID of a balanced group of routes. |
penalty |
Type: solver_options_mvrp_2_balanced_groups_penalty Penalties for imbalanced routes. More information |
solver_options_mvrp_2_location_groups_item
A group of locations which should be assigned to the same vehicle shift. More information
Name |
Description |
location_ids* |
Type: (integer or string)[] Reference to a location specified in |
dependent |
Type: boolean When true, either all or none of the locations in group will be served. Default: |
solid |
Type: boolean When Default: |
title |
Type: string |
solver_options_mvrp_2_penalty
Penalties for global solution limitations violation.
Name |
Description |
close_location_groups |
Type: solver_options_mvrp_2_penalty_close_location_groups Penalty components for extra visits to close location group poins. More information |
drop_penalty_percentage |
Type: solver_options_mvrp_2_penalty_drop_penalty_percentage Penalty components for |
empty_run_before_full |
Type: solver_options_mvrp_2_penalty_empty_run_before_full Penalty components for underfilled runs before more filled ones. |
multiorders |
Type: solver_options_mvrp_2_penalty_multiorders Penalty components for extra visits to multiorder poins. More information |
small_order_part_before_big |
Type: solver_options_mvrp_2_penalty_small_order_part_before_big Penalty components for smaller parts of split orders delivered before larger parts. |
split_orders_percentage |
Type: solver_options_mvrp_2_penalty_split_orders_percentage Penalty components for |
unused_depot |
Type: solver_options_mvrp_2_penalty_unused_depot Penalty for a depot that has no loaded/unloaded orders. More information |
solver_options_mvrp_2_points_throughputs_item
Point's throughput. More information
Name |
Description |
penalty |
|
point |
Type: solver_options_mvrp_2_points_throughputs_point WGS84 coordinate of a location. More information |
throughput |
Type: solver_options_mvrp_2_points_throughputs_throughput Point throughput limit. |
solver_options_mvrp_2_template_rest_schedules_item
Template schedule of rest breaks. More information
Name |
Description |
breaks* |
Type: (template_rest_schedules_breaks_0_1 or template_rest_schedules_breaks_1_1)[] List of consequent rest breaks. More information |
id* |
Type: string A unique ID of a template. |
break_type |
Type: string Type of the work break, specifying how the duration before work break start is computed, when
Enum: |
penalty |
Type: solver_options_mvrp_2_template_rest_schedules_penalty Penalties applied for violations of work break conditions. More information |
vehicle_capacity
Vehicle capacity. More information
Name |
Description |
custom |
Type: number Amount of custom units a vehicle is able to carry. Capacities in custom units are defined in format Min value: |
limits |
Type: vehicle_capacity_limits Vehicle load limits. |
units |
Type: number Amount of custom units a vehicle is able to carry. Default: Min value: |
volume |
Type: vehicle_capacity_volume Vehicle dimensions. |
volume_cbm |
Type: number Volume a vehicle is able to fit, cubic meters. Min value: |
weight_kg |
Type: number Weight a vehicle is able to carry, kilograms. Default: Min value: |
vehicle_close_locations_item
Name |
Description |
distance_till_service_m |
|
duration_till_service_s |
|
routing_mode |
Type: string Transportation method is used to determine close locations. This parameter can be used only if the Enum: |
search_radius_m |
Type: number Maximum distance between two locations in meters at which locations on which the restriction is applied. More information Default: Min value: Max value: |
soft_search_radius_m |
Type: number If value is greater than the value of the Default: Min value: Max value: |
vehicle_cost_0
Courier cost. More information
Name |
Description |
fixed |
Type: number Cost per fact of courier use (cost occurred if courier is included in route). Default: Min value: |
hour |
Type: number Cost of using courier per hour. It should not be zero or very small, otherwise you may get routes which are not optimal in terms of time. Default: Min value: |
km |
Type: number Cost of using courier per kilometer. It should not be zero or very small, otherwise you may get routes which are not optimal in terms of distance. Default: Min value: |
location |
Type: number Cost of using courier per location (default 0). Default: Min value: |
run |
Type: number Cost per single courier run from depot to locations. Default: Min value: |
tonne_km |
Type: number Cost of carrying one tonne for one kilometer (default 0). Default: Min value: |
waiting_hour |
Type: number Cost of waiting per hour. If not defined, the value specified in the Min value: |
vehicle_cost_1
Description of the cost of using the courier with the possibility of specifying arithmetic expressions for individual parts of the route. The total cost will be obtained as the sum of all the specified expressions for all parts included in the route. More information
Name |
Description |
route |
Type: string Arithmetic expression representing route cost |
run |
Type: string Arithmetic expression representing run cost |
shift |
Type: string Arithmetic expression representing shift cost |
vehicle_optional_zones_item
An optional tag with bonus.
Name |
Description |
value* |
Type: number Value of the zone. This value is subtracted from the route cost for any served location with a matching zone.For location with multiple matching zones will be chosen the maximum bonus. More information |
zone* |
Type: string Zone number. More information Min length: Max length: |
vehicle_payout_0
Description of the payout to the courier for completing the route with the possibility of specifying arithmetic expressions for individual parts of the route. The total payout will be obtained as the sum of all the specified expressions for all parts included in the route. More information
Name |
Description |
route |
Type: string Arithmetic expression representing route cost |
run |
Type: string Arithmetic expression representing run cost |
shift |
Type: string Arithmetic expression representing shift cost |
vehicle_penalty
Penalties for vehicle limitations violation.
Name |
Description |
arrival_after_start |
Type: vehicle_penalty_arrival_after_start Penalty components for arrived after beginning of time window. More information |
empty_runs |
Type: vehicle_penalty_empty_runs Penalty components for empty runs, which cannot be skipped because of actual visit times. |
min_stop_weight |
Type: vehicle_penalty_min_stop_weight Penalty components for insufficient total orders weight in point. More information |
vehicle_planned_route
A planned courier route, should be used to assign already chosen locations to vehicles. These locations will not be dropped even if some strict constraint(s) is violated and will be served by the courier. The order of locations provided in this option can be changed for optimization of final route. By default shifts assigned to planned locations can be changed as well. They can be fixed with fix_planned_shifts
solver option. More information
Name |
Description |
locations* |
Type: vehicle_planned_route_locations_item[] A planned order of locations in a courier route including all shifts and multiple runs. If the list of shifts (see |
planned_runs_first |
Type: boolean It is necessary to visit all depots, listed in Default: |
start_time |
Type: string or array |
vehicle_proximity_edge_cost
Cost of proximity-edges for the constraints specified by the fields proximity_facto
rand
global_proximity_factor. If not specified, then the edge cost values specified in the
cost` field of the vehicle are used.
Name |
Description |
hour* |
Type: number The cost of one hour of proximity-edge. Min value: |
km* |
Type: number The cost of one kilometer of proximity-edge Min value: |
vehicle_rest_schedule
Schedule of rest breaks. More information
Name |
Description |
breaks* |
Type: (rest_schedule_breaks_0_1 or rest_schedule_breaks_1_1)[] List of consequent rest breaks. More information |
break_type |
Type: string Type of the work break, specifying how the duration before work break start is computed, when
Enum: |
penalty |
Type: vehicle_rest_schedule_penalty Penalties applied for violations of work break conditions. More information |
vehicle_shifts_item
Courier shift. More information
Name |
Description |
id* |
Type: string Unique identifier of a shift. |
time_window* |
Type: string Allowed time window to visit location, in |
balanced_group_id |
Type: string ID of a corresponding balanced group of routes (see the option |
hard_max_duration_s |
Type: number Hard limit on the maximum shift duration in seconds. If both Default: Min value: Max value: |
hard_max_working_duration_s |
Type: number Hard limit on the maximum shift working duration (i.e. duration excluding work breaks) in seconds. If both Min value: Max value: |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Restricts time window relaxation during route planning. When Default: |
immutable |
Type: boolean All routes for this shift, specified in Default: |
max_duration_s |
Type: number Maximal duration of a shift in seconds. If a planned shift duration is greater than specified, the shift out of time penalties are applied. More information Default: Min value: Max value: |
max_mileage_km |
Type: number Maximal mileage of the vehicle during the shift in kilometers. If a planned mileage is greater than this value, the penalties from a shift parameter Min value: |
max_runs |
Type: integer Maximal number of the courier runs from the depot to locations in shift. More information Default: |
max_working_duration_s |
Type: number Maximal working duration of a shift (i.e. duration excluding work breaks) in seconds. Min value: Max value: |
maximal_stops |
Type: integer Maximal number of shift stops, if the final stop count is greater than this value, Default: Min value: |
minimal_stops |
Type: integer Minimal number of shift stops, if the final stop count is less than this value, Default: Min value: |
minimal_unique_stops |
Type: integer Minimal number of shift stops with unique coordinates, if the final stop count is less than this value, Default: Min value: |
penalty |
Type: vehicle_shifts_penalty Penalties for shift constraints violation. More information |
preset_id |
Type: string Preset number for vehicle shift. More information |
rest_schedule |
Type: vehicle_shifts_rest_schedule Schedule of rest breaks. More information |
rest_schedule_id |
Type: string ID of a rest schedule template used in this courier. |
run_restrictions |
Type: vehicle_shifts_run_restrictions Restrictions for on each run in shift. |
service_duration_s |
Type: number Duration of service in between shifts (in seconds). It can include any operations needed to finish the shift, such as time to change a driver, exchange papers etc. (default: 0). More information Default: Min value: Max value: |
start_shift_from_first_order |
Type: boolean or string |
vehicle_specs
Vehicle specification. More information
Name |
Description |
axle_weight |
Type: number Maximum axle weight of the vehicle, tons. Min value: |
height |
Type: number Height of the vehicle, meters. Min value: |
length |
Type: number Length of the vehicle, meters. Min value: |
max_weight |
Type: number Maximum weight of the vehicle, tons. Min value: |
max_weight_kg |
Type: number Maximum weight of the vehicle, kilograms. When solving the problem, the characteristic will be rounded up to tons.If both characteristics are set Min value: |
width |
Type: number Width of the vehicle, meters. Min value: |
vehicle_trailer
Trailer specification. Usage of trailer with walking_courier
is forbidden.More information
Name |
Description |
capacity |
Type: vehicle_trailer_capacity Trailer capacity. |
cost |
Type: vehicle_trailer_cost Trailer cost. |
coupling_time_s |
Type: number Extra time to couple the trailer, seconds. Default: Min value: Max value: |
decoupling_time_s |
Type: number Extra time to decouple the trailer, seconds. Default: Min value: Max value: |
max_capacity_difference |
Type: vehicle_trailer_max_capacity_difference The maximum difference between the loading of the trailer and the head. More information |
rolling_cost |
Type: number Penalty for each rolling of goods from the trailer to the head. Default: Min value: |
rolling_time |
Type: vehicle_trailer_rolling_time Time for loading shipments from trailer to head. In case multiple types of time are specified, the one that takes the most time is chosen. In case none of them is specified, only fixed loading time is used. |
vehicle_visited_locations_item
Name |
Description |
id* |
Type: integer or string Reference to a location specified in |
delivered_orders |
Type: (integer or string)[] List of IDs of orders delivered to the drop_off, depot or cross dock for delivery to the destination. More information |
order_ratio |
Type: number Split ratio of an order or a work break, included in this part. |
shift_id |
Type: string Unique identifier of a shift. |
time |
Type: string Time of departure from a location, in |
wait_if_early |
Type: boolean This option determines what happens if a courier arrives to the planned location early. When Default: |
vehicle_walking_courier
Description of a pedestrian courier. Usage of walking_courier
in vehicle with trailer is forbidden.
Name |
Description |
capacity |
Type: vehicle_walking_courier_capacity Capacity of a courier |
cost |
Type: vehicle_walking_courier_cost Courier work cost. |
restrictions |
depot_location_1_package_throughput
Restriction on packaging speed in depot. More information
Name |
Description |
kg_per_hour |
Type: array or number |
units_per_hour |
Type: array or number |
depot_location_1_penalty
Penalties for depot time window or throughput violation. More information
Name |
Description |
early |
Type: depot_location_1_penalty_early Penalty components for early service (used instead of |
late |
Type: depot_location_1_penalty_late Penalty components for late visits (used instead of |
out_of_time |
Type: depot_location_1_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
package_throughput |
Type: depot_location_1_penalty_package_throughput Penalty components for package throughput exceeding. More information |
throughput |
Type: depot_location_1_penalty_throughput Penalty components for throughput exceeding. More information |
depot_location_1_throughput
Depot throughput limit. More information
Name |
Description |
kg_per_hour |
Type: array or number |
units_per_hour |
Type: array or number |
vehicle_count |
Type: array or number |
depot_location_1_time_windows_item
Name |
Description |
time_window* |
Type: string Allowed time window to visit location, in |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
depot_location_1_time_windows_loading
Time windows when the courier is allowed to leave the depot on the first run. More information
Name |
Description |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Time window, specified in the Default: |
penalty |
|
time_window |
Type: string Allowed time window to visit location, in |
time_windows |
Type: depot_location_1_time_windows_loading_time_windows_item[] List of allowed time windows. Time windows can not overlap. Fields |
depot_location_1_time_windows_refilling
Time windows when the courier is allowed to visit a depot (or middle depot) for additional loading. More information
Name |
Description |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Time window, specified in the Default: |
penalty |
|
time_window |
Type: string Allowed time window to visit location, in |
time_windows |
Type: depot_location_1_time_windows_refilling_time_windows_item[] List of allowed time windows. Time windows can not overlap. Fields |
depot_location_1_time_windows_unloading
Time windows when the courier is allowed to return to the depot on the last run. More information
Name |
Description |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Time window, specified in the Default: |
penalty |
|
time_window |
Type: string Allowed time window to visit location, in |
time_windows |
Type: depot_location_1_time_windows_unloading_time_windows_item[] List of allowed time windows. Time windows can not overlap. Fields |
mvrp_request_1_depots_package_throughput
Restriction on packaging speed in depot. More information
Name |
Description |
kg_per_hour |
Type: array or number |
units_per_hour |
Type: array or number |
mvrp_request_1_depots_penalty
Penalties for depot time window or throughput violation. More information
Name |
Description |
early |
Type: depots_penalty_early Penalty components for early service (used instead of |
late |
Type: depots_penalty_late Penalty components for late visits (used instead of |
out_of_time |
Type: depots_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
package_throughput |
Type: depots_penalty_package_throughput Penalty components for package throughput exceeding. More information |
throughput |
Type: depots_penalty_throughput Penalty components for throughput exceeding. More information |
mvrp_request_1_depots_throughput
Depot throughput limit. More information
Name |
Description |
kg_per_hour |
Type: array or number |
units_per_hour |
Type: array or number |
vehicle_count |
Type: array or number |
mvrp_request_1_depots_time_windows_item
Name |
Description |
time_window* |
Type: string Allowed time window to visit location, in |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
mvrp_request_1_depots_time_windows_loading
Time windows when the courier is allowed to leave the depot on the first run. More information
Name |
Description |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Time window, specified in the Default: |
penalty |
|
time_window |
Type: string Allowed time window to visit location, in |
time_windows |
Type: depots_time_windows_loading_time_windows_item[] List of allowed time windows. Time windows can not overlap. Fields |
mvrp_request_1_depots_time_windows_refilling
Time windows when the courier is allowed to visit a depot (or middle depot) for additional loading. More information
Name |
Description |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Time window, specified in the Default: |
penalty |
|
time_window |
Type: string Allowed time window to visit location, in |
time_windows |
Type: depots_time_windows_refilling_time_windows_item[] List of allowed time windows. Time windows can not overlap. Fields |
mvrp_request_1_depots_time_windows_unloading
Time windows when the courier is allowed to return to the depot on the last run. More information
Name |
Description |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
hard_window |
Type: boolean Time window, specified in the Default: |
penalty |
|
time_window |
Type: string Allowed time window to visit location, in |
time_windows |
Type: depots_time_windows_unloading_time_windows_item[] List of allowed time windows. Time windows can not overlap. Fields |
initial_routes_route_element_1
Route node, contains information about a visited location or a work break, transit information and arrival time.
Name |
Description |
node* |
Type: initial_route_node_depot or initial_route_node_location_1 or initial_route_node_work_break or initial_route_node_courier_position Route component. |
actual_arrival_time_s |
Type: number or string Actual arrival time at the location. |
actual_departure_time_s |
Type: number or string Actual time of departure from the location. |
actual_service_start_time_s |
Type: number or string Actual time of service start in the location. |
arrival_time_s |
Type: number or string Arrival time at the location. Arrival happened before the start of the time window, will incur waiting time. |
departure_time_s |
Type: number or string Time of departure from the location. |
load_to_head |
Type: (integer or string)[] List of orders that should be loaded to the head of the vehicle at depot or anchor location, in case trailers are used. Orders are listed in the order of serving. |
load_to_trailer |
Type: (integer or string)[] List of orders that should be loaded to the trailer of the vehicle at depot, in case trailers are used. Orders are listed in the order of serving. |
multi_order |
Type: boolean An order is one of several orders at exactly the same location which are served together. Arrival time is the same for all orders in the group, also the orders share Default: |
waiting_duration_s |
Type: number Waiting duration, time spent at location after arrival and before the start of the time window, seconds. |
mvrp_request_1_initial_routes_shift
Name |
Description |
id* |
Type: string Unique identifier of a shift. |
balanced_group_id |
Type: string ID of a corresponding balanced group of routes (see the option |
end |
Type: initial_routes_shift_end Route node, contains information about a visited location or a work break, transit information and arrival time. |
start |
Type: initial_routes_shift_start Route node, contains information about a visited location or a work break, transit information and arrival time. |
mvrp_request_1_zones_geometry
Name |
Description |
coordinates |
Type: number[][][] Always consists of two elements: longitude and lattitude. |
type |
Type: string Always equals |
locations_penalty_delivery_deadline
Penalty components for late deliveries from pickup
locations to depots. Whether the start or the end of service during the visit is used to penalize for lateness is determined by the penalize_late_service
option. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the depot is visited after the deadline. Default: |
minute |
Type: number Penalty for each minute of lateness, when the depot is visited after the deadline. Default: |
locations_penalty_depot_expiring_time
Penalty components for violation soft_depot_expiring_time
restriction. More information
Name |
Description |
fixed |
Type: number Penalty for violation, regardless of the size of the violation. Default: Min value: |
minute |
Type: number Penalty for every minute of violation. Default: Min value: |
locations_penalty_depot_ready_time
Penalty components for violation soft_depot_ready_time
restriction. More information
Name |
Description |
fixed |
Type: number Penalty for violation, regardless of the size of the violation. Default: Min value: |
minute |
Type: number Penalty for every minute of violation. Default: Min value: |
penalty_drop_0
Name |
Description |
fixed |
Type: number Fixed penalty for not delivering any part of the order. More information Default: |
scaled |
Type: number Penalty for not delivering order ratio. More information Default: |
locations_penalty_early
Penalty components for early service (used instead of out_of_time
penalty). More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location starts being served before the start of the time window. Default: |
minute |
Type: number Penalty for each minute of early arrival when the location starts being served before the start of the time window. Default: |
locations_penalty_late
Penalty components for late visits (used instead of out_of_time
penalty). Whether the start or the end of service during the visit is used to penalize for lateness is determined by the penalize_late_service
option. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location is visited after the end of the time window. Default: |
minute |
Type: number Penalty for each minute of lateness, when the location is visited after the end of the time window. Default: |
locations_penalty_out_of_time
Penalty components for time window failure. Can be used to set the values of early
and late
options simultaneously, and each value is overridden if the respective option is also defined. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location is visited outside of the time window. See the specifications of Default: |
minute |
Type: number Penalty for each minute of lateness or early arrival when the location is visited outside of the time window. See the specifications of Default: |
locations_penalty_rolling_throughput
Penalty components for throughput exceeding. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if throughput is exceeded. Default: |
vehicle |
Type: number Penalty for each extra vehicle per hour of throughput exceeding. Default: |
locations_penalty_throughput
Penalty components for throughput exceeding. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if throughput is exceeded. Default: |
kg |
Type: number Penalty for each extra kg of throughput exceeding. Default: |
unit |
Type: number Penalty for each extra custom unit of throughput exceeding ( Default: |
vehicle |
Type: number Penalty for each extra vehicle per hour of throughput exceeding. Default: |
locations_penalty_time_between_visits
Penalty components for exceeding max_time_between_visits_s
restriction. More information
Name |
Description |
fixed |
Type: number Penalty for each case of violation, regardless of the size of the violation. Default: Min value: |
minute |
Type: number Penalty for every minute of violation. Default: Min value: |
locations_penalty_transit_time
Penalty components for exceeding transit time. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the order was delivered with a violation of the soft transit time limit. |
minute |
Type: number Penalty for each minute transit time violation. |
rolling_throughput_vehicle_count_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Throughput, simultaneously vehicles. More information Min value: Max value: |
locations_shipment_size_volume
Shipment dimensions and type.
Name |
Description |
depth_m* |
Type: number Depth, meters. Default: Min value: Max value: |
height_m* |
Type: number Height, meters. Default: Min value: Max value: |
width_m* |
Type: number Width, meters. Default: Min value: Max value: |
align |
Type: string Defines allowed container alignment for
Default: Enum: |
type |
Type: string Container type:
Default: Enum: |
throughput_kg_per_hour_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Throughput, kilograms per hour. More information Min value: |
throughput_units_per_hour_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Throughput, custom units per hour. More information Min value: |
throughput_vehicle_count_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Throughput, simultaneously vehicles. More information Min value: Max value: |
solver_options_mvrp_2_balanced_groups_penalty
Penalties for imbalanced routes. More information
Name |
Description |
custom_value |
Type: number Penalty per each Min value: |
hour |
Type: number Penalty per hour of root-sum-square deviation of a route duration from an average duration of a balanced group of routes. Min value: |
ignore_unused_vehicles |
Type: boolean Ignore unused vehicles for the penalty calculation. More information Default: |
km |
Type: number Penalty per km of root-sum-square deviation of a route distance from an average distance of a balanced group of routes. Min value: |
served_order |
Type: number Penalty per each missing or extra served order of root-sum-square deviation of a route served order count from an average number of served order in a balanced group of routes. Min value: |
stop |
Type: number Penalty per each missing or extra stop of root-sum-square deviation of a route stop count from an average number of stops in a balanced group of routes. Min value: |
unit |
Type: number Penalty per each unit of orders weight of root-sum-square deviation of a route unit of orders weight from an average number of unit of orders weight in a balanced group of routes. Min value: |
volume_cbm |
Type: number Penalty per each cubic meter of orders volume of root-sum-square deviation of a route cubic meters of orders volume from an average number of cubic meters of orders volume in a balanced group of routes. Min value: |
weight_kg |
Type: number Penalty per each kg of orders weight of root-sum-square deviation of a route kg of orders weight from an average number of kg of orders weight in a balanced group of routes. Min value: |
solver_options_mvrp_2_penalty_close_location_groups
Penalty components for extra visits to close location group poins. More information
Name |
Description |
per_extra_point |
Type: number Penalty for every point where vehicles/couriers arrive more than once. Default: Min value: |
per_extra_vehicle |
Type: number Penalty for every extra vehicle/courier that arrives at close location group points. Default: Min value: |
per_extra_visit |
Type: number Penalty for each extra visit to close location group points. Default: Min value: |
solver_options_mvrp_2_penalty_drop_penalty_percentage
Penalty components for max_drop_penalty_percentage violation
. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if drop penalty ratio is too high. Default: |
per_percent |
Type: number Penalty for each exceeding percent of drop penalty percentage. Default: |
solver_options_mvrp_2_penalty_empty_run_before_full
Penalty components for underfilled runs before more filled ones.
Name |
Description |
scaled |
Type: number Penalty for each run after which there is a run with greater utilization. Multiplied by the difference between the utilization of a more filled entry and a less filled one. Default: Min value: |
solver_options_mvrp_2_penalty_multiorders
Penalty components for extra visits to multiorder poins. More information
Name |
Description |
per_extra_point |
Type: number Penalty for every point where couriers arrive more than once. Default: Min value: |
per_extra_vehicle |
Type: number Penalty for every extra vehicle/courier that arrives at multi-order points. Default: Min value: |
per_extra_visit |
Type: number Penalty for each extra visit to multi-order points. Default: Min value: |
solver_options_mvrp_2_penalty_small_order_part_before_big
Penalty components for smaller parts of split orders delivered before larger parts.
Name |
Description |
scaled |
Type: number Penalty for each pair of parts of the same order where the smaller part is delivered before the larger one. Multiplied by the difference between the share of the larger part of the entire order and the share of the smaller part. Default: Min value: |
solver_options_mvrp_2_penalty_split_orders_percentage
Penalty components for max_split_orders_percentage violation
. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if split orders ratio is too high. Default: |
per_percent |
Type: number Penalty for each exceeding percent of split orders percentage. Default: |
solver_options_mvrp_2_penalty_unused_depot
Penalty for a depot that has no loaded/unloaded orders. More information
Name |
Description |
ending |
Type: number Component for each unused ending depot Default: |
middle |
Type: number Component for each unused middle depot. Default: |
starting |
Type: number Component for each unused starting depot. Default: |
solver_options_mvrp_2_points_throughputs_penalty
Name |
Description |
throughput |
Type: points_throughputs_penalty_throughput Penalty components for throughput exceeding. More information |
solver_options_mvrp_2_points_throughputs_point
WGS84 coordinate of a location. More information
Name |
Description |
lat* |
Type: number Min value: Max value: |
lon* |
Type: number Min value: Max value: |
solver_options_mvrp_2_points_throughputs_throughput
Point throughput limit.
Name |
Description |
kg_per_hour |
Type: array or number |
units_per_hour |
Type: array or number |
vehicle_count |
Type: array or number |
template_rest_schedules_breaks_0_1
Work break (old format). More information
Name |
Description |
rest_duration_s* |
Type: number Duration of rest, seconds. More information Min value: Max value: |
can_be_split |
Type: boolean Work break can be split into parts (within the same shift and without work break order vilation). More information Default: |
can_rest_during_service |
Type: boolean It is allowed to this break during locations service duration. More information Default: |
check_ending_time |
Type: boolean For this work break fields, used to specify its starting time (time_range, desired_work_duration), specify its ending time instead. Default: |
continuous_travel_time_range |
Type: string Minimal and maximal duration of continuous travel time before rest, format: |
driving_time_range |
Type: string Minimal and maximal duration of driving before rest, format: |
exact_time_range |
Type: string The exact time range when the rest should start, format: |
id |
Type: integer or string Work break ID. All work breaks IDs in vehicle |
max_split_parts |
Type: integer Maximal number of parts in which the work break can be split. More information Min value: |
min_first_split_part_duration_s |
Type: number Minimal duration of the first part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_last_split_part_duration_s |
Type: number Minimal duration of the last part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_split_part_duration_s |
Type: number Minimal duration of one part of a split order. More information Default: Min value: |
penalty |
Type: breaks_penalty Penalties applied for violations of work break conditions. More information |
repeatable |
Type: boolean When true, this work break will be repeated until the end of route. Can only be true for the last break in the chain. More information Default: |
travel_time_range |
Type: string Minimal and maximal duration of driving and waiting before rest, format: |
type |
Type: string Type of work break. |
work_time_range_from_start |
Type: string Minimal and maximal duration of time from start of route until rest, format: |
work_time_range_till_rest |
Type: string Minimal and maximal duration of work before rest, format: |
template_rest_schedules_breaks_1_1
Work break (new format).
Name |
Description |
rest_duration_s* |
Type: number Duration of rest, seconds. More information Min value: Max value: |
break_type |
Type: string Type of the work break, specifying how the duration before work break start is computed, when
Enum: |
can_be_split |
Type: boolean Work break can be split into parts (within the same shift and without work break order vilation). More information Default: |
can_rest_during_service |
Type: boolean It is allowed to this break during locations service duration. More information Default: |
check_ending_time |
Type: boolean For this work break fields, used to specify its starting time (time_range, desired_work_duration), specify its ending time instead. Default: |
desired_work_duration |
Type: number or string Desired duration before work break start. Type of the break, stated in |
hard_time_range |
Type: string Hard limitation on minimal and maximal duration before work break start. Type of the break, stated in |
id |
Type: integer or string Work break ID. All work breaks IDs in vehicle |
max_split_parts |
Type: integer Maximal number of parts in which the work break can be split. More information Min value: |
min_first_split_part_duration_s |
Type: number Minimal duration of the first part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_last_split_part_duration_s |
Type: number Minimal duration of the last part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_split_part_duration_s |
Type: number Minimal duration of one part of a split order. More information Default: Min value: |
penalty |
Type: breaks_penalty Penalties applied for violations of work break conditions. More information |
repeatable |
Type: boolean When true, this work break will be repeated until the end of route. Can only be true for the last break in the chain. More information Default: |
soft_time_range |
Type: string Soft limitation on minimal and maximal duration before work break start. Type of the break, stated in |
type |
Type: string Type of work break. |
solver_options_mvrp_2_template_rest_schedules_penalty
Penalties applied for violations of work break conditions. More information
Name |
Description |
early |
Type: template_rest_schedules_penalty_early Penalty components for early work break. |
late |
Type: template_rest_schedules_penalty_late Penalty components for late work break. |
vehicle_capacity_limits
Vehicle load limits.
Name |
Description |
units_perc |
Type: number Upper limit of total shipments size in custom units as a percentage of a vehicle capacity. Default: Min value: |
volume_perc |
Type: number Upper limit of total shipments volume as a percentage of vehicle load bay volume. For container fitting purposes it is assumed that each dimension is multiplied by the cubic root of Default: Min value: |
weight_perc |
Type: number Upper limit of total shipments weight as a percentage of total weight the vehicle is allowed to carry. Default: Min value: |
vehicle_capacity_volume
Vehicle dimensions.
Name |
Description |
depth_m* |
Type: number Depth, meters. Default: Min value: Max value: |
height_m* |
Type: number Height, meters. Default: Min value: Max value: |
width_m* |
Type: number Width, meters. Default: Min value: Max value: |
vehicle_close_locations_distance_till_service_m
Name |
Description |
penalty |
Type: number Penalty per km exceeding the maximum distance between servicing close locations. More information Default: Min value: Max value: |
value |
Type: number The maximum distance traveled between servicing two close locations. More information Default: Min value: Max value: |
vehicle_close_locations_duration_till_service_s
Name |
Description |
penalty |
Type: number Penalty per second exceeding the maximum time between servicing close locations. More information Default: Min value: Max value: |
value |
Type: number The maximum time between servicing two close locations. More information Default: Min value: Max value: |
vehicle_penalty_arrival_after_start
Penalty components for arrived after beginning of time window. More information
Name |
Description |
as_soon_as_possible |
Type: boolean Option for arrive as soon as possible even it includes added wait in route. When using the parameter, it is also recommended to specify a non-zero value of the Default: |
average_h |
Type: number Penalty for average arrived after beginning of time window. Default: |
vehicle_penalty_empty_runs
Penalty components for empty runs, which cannot be skipped because of actual visit times.
Name |
Description |
fixed |
Type: number Fixed penalty applied if there are empty runs left in the route. Default: |
per_run |
Type: number Penalty for every empty run in the route. Default: |
vehicle_penalty_min_stop_weight
Penalty components for insufficient total orders weight in point. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if total orders weight is too low. Default: |
kg |
Type: number Penalty for each lacking kg of total orders weight. Default: |
vehicle_planned_route_locations_item
Name |
Description |
id* |
Type: integer or string Reference to a location specified in |
anchor_mode |
Type: string Default: Enum: |
delivered_orders |
Type: (integer or string)[] List of IDs of orders delivered to the drop_off, depot or cross dock for delivery to the destination. More information |
delivery_in_current_run |
Type: boolean All orders, loaded in this location, have to be delivered in current run. More information Default: |
is_middle_depot |
Type: boolean Location is a middle depot. More information Default: |
loaded_orders |
Type: (integer or string)[] Ids of |
order_ratio |
Type: number Split ratio of an order or a work break, included in this part. |
parking_mode |
Type: string Default: Enum: |
picked_orders |
Type: (integer or string)[] A list of IDs of orders picked up in the cross dock or depot. More information |
shift_id |
Type: string Unique identifier of a shift. |
wait_if_early |
Type: boolean This option determines what happens if a courier arrives to the planned location early. When Default: |
vehicle_planned_route_start_time_0_item
Name |
Description |
shift_id* |
Type: string Unique identifier of a shift. |
start_time* |
Type: string Shift start time, in |
rest_schedule_breaks_0_1
Work break (old format). More information
Name |
Description |
rest_duration_s* |
Type: number Duration of rest, seconds. More information Min value: Max value: |
can_be_split |
Type: boolean Work break can be split into parts (within the same shift and without work break order vilation). More information Default: |
can_rest_during_service |
Type: boolean It is allowed to this break during locations service duration. More information Default: |
check_ending_time |
Type: boolean For this work break fields, used to specify its starting time (time_range, desired_work_duration), specify its ending time instead. Default: |
continuous_travel_time_range |
Type: string Minimal and maximal duration of continuous travel time before rest, format: |
driving_time_range |
Type: string Minimal and maximal duration of driving before rest, format: |
exact_time_range |
Type: string The exact time range when the rest should start, format: |
id |
Type: integer or string Work break ID. All work breaks IDs in vehicle |
max_split_parts |
Type: integer Maximal number of parts in which the work break can be split. More information Min value: |
min_first_split_part_duration_s |
Type: number Minimal duration of the first part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_last_split_part_duration_s |
Type: number Minimal duration of the last part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_split_part_duration_s |
Type: number Minimal duration of one part of a split order. More information Default: Min value: |
penalty |
Type: breaks_penalty Penalties applied for violations of work break conditions. More information |
repeatable |
Type: boolean When true, this work break will be repeated until the end of route. Can only be true for the last break in the chain. More information Default: |
travel_time_range |
Type: string Minimal and maximal duration of driving and waiting before rest, format: |
type |
Type: string Type of work break. |
work_time_range_from_start |
Type: string Minimal and maximal duration of time from start of route until rest, format: |
work_time_range_till_rest |
Type: string Minimal and maximal duration of work before rest, format: |
rest_schedule_breaks_1_1
Work break (new format).
Name |
Description |
rest_duration_s* |
Type: number Duration of rest, seconds. More information Min value: Max value: |
break_type |
Type: string Type of the work break, specifying how the duration before work break start is computed, when
Enum: |
can_be_split |
Type: boolean Work break can be split into parts (within the same shift and without work break order vilation). More information Default: |
can_rest_during_service |
Type: boolean It is allowed to this break during locations service duration. More information Default: |
check_ending_time |
Type: boolean For this work break fields, used to specify its starting time (time_range, desired_work_duration), specify its ending time instead. Default: |
desired_work_duration |
Type: number or string Desired duration before work break start. Type of the break, stated in |
hard_time_range |
Type: string Hard limitation on minimal and maximal duration before work break start. Type of the break, stated in |
id |
Type: integer or string Work break ID. All work breaks IDs in vehicle |
max_split_parts |
Type: integer Maximal number of parts in which the work break can be split. More information Min value: |
min_first_split_part_duration_s |
Type: number Minimal duration of the first part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_last_split_part_duration_s |
Type: number Minimal duration of the last part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_split_part_duration_s |
Type: number Minimal duration of one part of a split order. More information Default: Min value: |
penalty |
Type: breaks_penalty Penalties applied for violations of work break conditions. More information |
repeatable |
Type: boolean When true, this work break will be repeated until the end of route. Can only be true for the last break in the chain. More information Default: |
soft_time_range |
Type: string Soft limitation on minimal and maximal duration before work break start. Type of the break, stated in |
type |
Type: string Type of work break. |
vehicle_rest_schedule_penalty
Penalties applied for violations of work break conditions. More information
Name |
Description |
early |
Type: rest_schedule_penalty_early Penalty components for early work break. |
late |
Type: rest_schedule_penalty_late Penalty components for late work break. |
vehicle_shifts_penalty
Penalties for shift constraints violation. More information
Name |
Description |
early |
Type: shifts_penalty_early Penalty components for shifts started too early (used instead of |
late |
Type: shifts_penalty_late Penalty components for shifts finished too late (used instead of |
max_mileage |
Type: shifts_penalty_max_mileage Penalties applied for violating shift's |
out_of_time |
Type: shifts_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
stop_excess |
Type: shifts_penalty_stop_excess Penalties applied for violating shift's |
stop_lack |
Type: shifts_penalty_stop_lack Penalties applied for violating shift's |
unique_stop_lack |
Type: shifts_penalty_unique_stop_lack Penalties applied for violating shift's |
working_overtime |
Type: shifts_penalty_working_overtime Penalty components for violating of maximal working duration in shift. More information |
vehicle_shifts_rest_schedule
Schedule of rest breaks. More information
Name |
Description |
breaks* |
Type: (rest_schedule_breaks_0 or rest_schedule_breaks_1)[] List of consequent rest breaks. More information |
break_type |
Type: string Type of the work break, specifying how the duration before work break start is computed, when
Enum: |
penalty |
Type: shifts_rest_schedule_penalty Penalties applied for violations of work break conditions. More information |
vehicle_shifts_run_restrictions
Restrictions for on each run in shift.
Name |
Description |
max_mileage_km |
|
maximal_stops |
|
minimal_stops |
vehicle_trailer_capacity
Trailer capacity.
Name |
Description |
custom |
Type: number Amount of custom units a trailer is able to carry. Capacities in custom units are defined in format Min value: |
limits |
Type: trailer_capacity_limits Trailer load limits. |
units |
Type: number Amount of custom units a trailer is able to carry. Default: Min value: |
volume |
Type: trailer_capacity_volume Trailer dimensions. |
volume_cbm |
Type: number Volume a trailer is able to fit, cubic meters. Min value: |
weight_kg |
Type: number Weight a trailer is able to carry, kilograms. Default: Min value: |
vehicle_trailer_cost
Trailer cost.
Name |
Description |
fixed |
Type: number Cost per fact of trailer use (cost occurred if trailer is used in route). Default: Min value: |
hour |
Type: number Cost of using trailer per hour. Default: Min value: |
km |
Type: number Cost of using trailer per kilometer. Default: Min value: |
location |
Type: number Cost of using trailer per location (default 0). Default: Min value: |
run |
Type: number Cost per single courier run from depot to locations. Default: Min value: |
tonne_km |
Type: number Cost of carrying one tonne for one kilometer (default 0). Default: Min value: |
waiting_hour |
Type: number Cost of waiting per hour. If not defined, the value specified in the Min value: |
vehicle_trailer_max_capacity_difference
The maximum difference between the loading of the trailer and the head. More information
Name |
Description |
custom |
Type: number A maximum allowable difference in the loaded amount of custom units between the trailer and the head. The difference in custom units are defined in format |
units |
Type: number The maximum allowable difference in the loaded amount of custom units between the trailer and the head. |
volume_cbm |
Type: number The maximum allowable difference in the loaded volume between the trailer and the head, cubic meters. |
weight_kg |
Type: number The maximum allowable difference in the loaded weight between the trailer and the head, kilograms. |
vehicle_trailer_rolling_time
Time for loading shipments from trailer to head. In case multiple types of time are specified, the one that takes the most time is chosen. In case none of them is specified, only fixed loading time is used.
Name |
Description |
fixed_time_s |
Type: number Fixed time spent each time a trailer is loaded or unloaded, seconds. Default: Min value: Max value: |
s_per_kg |
Type: number Loading time per kg, seconds. Default: Min value: Max value: |
s_per_m3 |
Type: number Loading time per cubic meter, seconds. Default: Min value: Max value: |
s_per_unit |
Type: number Loading time per unit, seconds. Default: Min value: Max value: |
vehicle_walking_courier_capacity
Capacity of a courier
Name |
Description |
units |
Type: number Amount of custom units a courier is able to carry. Default: Min value: |
vehicle_walking_courier_cost
Courier work cost.
Name |
Description |
hour |
Type: number Cost per hour of courier walking routes. Default: Min value: |
km |
Type: number Cost per kilometer walked by courier. Default: Min value: |
vehicle_walking_courier_restrictions
Name |
Description |
max_parking_duration_s |
|
max_parking_walking_distance_m |
Type: walking_courier_restrictions_max_parking_walking_distance_m |
max_walking_edge_distance_m |
Type: walking_courier_restrictions_max_walking_edge_distance_m |
depot_location_1_package_throughput_kg_per_hour_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Depot package throughput, kilograms per hour. More information Min value: |
depot_location_1_package_throughput_units_per_hour_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Depot package throughput, units per hour. More information Min value: |
depot_location_1_penalty_early
Penalty components for early service (used instead of out_of_time
penalty). More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if a courier starts beeing served at the depot before the beginning of the time window. The penalty is applied for any early service, including opening the depot, unloading or uploading the courier at the depot or closing the depot. It is applied once for each visit of a depot during which the courier was served early. More information Default: |
minute |
Type: number Penalty for each minute of early service of the depot. Applied in the same cases as the Default: |
depot_location_1_penalty_late
Penalty components for late visits (used instead of out_of_time
penalty). Whether the start or the end of service during the visit is used to penalize for lateness is determined by the penalize_late_service
option. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied for each visit of the depot after the end of the time window. Starting from a depot is counted for a visit. More information Default: |
minute |
Type: number Penalty for each minute of lateness for every visit of the depot after the end of the time window. More information Default: |
depot_location_1_penalty_out_of_time
Penalty components for time window failure. Can be used to set the values of early
and late
options simultaneously, and each value is overridden if the respective option is also defined. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the depot is visited outside of the time window. See the specifications of Default: |
minute |
Type: number Penalty for each minute of being outside of the time window of the depot. See the specifications of Default: |
depot_location_1_penalty_package_throughput
Penalty components for package throughput exceeding. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if throughput is exceeded. Default: |
kg |
Type: number Penalty for each extra kg of throughput exceeding. Default: |
unit |
Type: number Penalty for each extra custom unit of throughput exceeding ( Default: |
depot_location_1_penalty_throughput
Penalty components for throughput exceeding. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if throughput is exceeded. Default: |
kg |
Type: number Penalty for each extra kg of throughput exceeding. Default: |
unit |
Type: number Penalty for each extra custom unit of throughput exceeding ( Default: |
vehicle |
Type: number Penalty for each extra vehicle per hour of throughput exceeding. Default: |
depot_location_1_throughput_kg_per_hour_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Throughput, kilograms per hour. More information Min value: |
depot_location_1_throughput_units_per_hour_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Throughput, custom units per hour. More information Min value: |
depot_location_1_throughput_vehicle_count_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Throughput, simultaneously vehicles. More information Min value: Max value: |
depot_location_1_time_windows_loading_penalty
Name |
Description |
early |
Type: time_windows_loading_penalty_early Penalty components for early service (used instead of |
late |
Type: time_windows_loading_penalty_late Penalty components for late visits (used instead of |
out_of_time |
Type: time_windows_loading_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
depot_location_1_time_windows_loading_time_windows_item
Name |
Description |
time_window* |
Type: string Allowed time window to visit location, in |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
depot_location_1_time_windows_refilling_penalty
Name |
Description |
early |
Type: time_windows_refilling_penalty_early Penalty components for early service (used instead of |
late |
Type: time_windows_refilling_penalty_late Penalty components for late visits (used instead of |
out_of_time |
Type: time_windows_refilling_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
depot_location_1_time_windows_refilling_time_windows_item
Name |
Description |
time_window* |
Type: string Allowed time window to visit location, in |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
depot_location_1_time_windows_unloading_penalty
Name |
Description |
early |
Type: time_windows_unloading_penalty_early Penalty components for early service (used instead of |
late |
Type: time_windows_unloading_penalty_late Penalty components for late visits (used instead of |
out_of_time |
Type: time_windows_unloading_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
depot_location_1_time_windows_unloading_time_windows_item
Name |
Description |
time_window* |
Type: string Allowed time window to visit location, in |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
package_throughput_kg_per_hour_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Depot package throughput, kilograms per hour. More information Min value: |
package_throughput_units_per_hour_0_item
Name |
Description |
time_window |
Type: string The time window during which the specified restriction applies. The windows must not intersect with each other, and their union must contain the defined working hours of the corresponding depot. If the restriction is not defined on any time interval outside depot working hours, then it is considered equal to zero. More information |
value |
Type: number Depot package throughput, units per hour. More information Min value: |
depots_penalty_early
Penalty components for early service (used instead of out_of_time
penalty). More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if a courier starts beeing served at the depot before the beginning of the time window. The penalty is applied for any early service, including opening the depot, unloading or uploading the courier at the depot or closing the depot. It is applied once for each visit of a depot during which the courier was served early. More information Default: |
minute |
Type: number Penalty for each minute of early service of the depot. Applied in the same cases as the Default: |
depots_penalty_late
Penalty components for late visits (used instead of out_of_time
penalty). Whether the start or the end of service during the visit is used to penalize for lateness is determined by the penalize_late_service
option. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied for each visit of the depot after the end of the time window. Starting from a depot is counted for a visit. More information Default: |
minute |
Type: number Penalty for each minute of lateness for every visit of the depot after the end of the time window. More information Default: |
depots_penalty_out_of_time
Penalty components for time window failure. Can be used to set the values of early
and late
options simultaneously, and each value is overridden if the respective option is also defined. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the depot is visited outside of the time window. See the specifications of Default: |
minute |
Type: number Penalty for each minute of being outside of the time window of the depot. See the specifications of Default: |
depots_penalty_package_throughput
Penalty components for package throughput exceeding. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if throughput is exceeded. Default: |
kg |
Type: number Penalty for each extra kg of throughput exceeding. Default: |
unit |
Type: number Penalty for each extra custom unit of throughput exceeding ( Default: |
depots_penalty_throughput
Penalty components for throughput exceeding. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if throughput is exceeded. Default: |
kg |
Type: number Penalty for each extra kg of throughput exceeding. Default: |
unit |
Type: number Penalty for each extra custom unit of throughput exceeding ( Default: |
vehicle |
Type: number Penalty for each extra vehicle per hour of throughput exceeding. Default: |
depots_time_windows_loading_penalty
Name |
Description |
early |
Type: time_windows_loading_penalty_early Penalty components for early service (used instead of |
late |
Type: time_windows_loading_penalty_late Penalty components for late visits (used instead of |
out_of_time |
Type: time_windows_loading_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
depots_time_windows_loading_time_windows_item
Name |
Description |
time_window* |
Type: string Allowed time window to visit location, in |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
depots_time_windows_refilling_penalty
Name |
Description |
early |
Type: time_windows_refilling_penalty_early Penalty components for early service (used instead of |
late |
Type: time_windows_refilling_penalty_late Penalty components for late visits (used instead of |
out_of_time |
Type: time_windows_refilling_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
depots_time_windows_refilling_time_windows_item
Name |
Description |
time_window* |
Type: string Allowed time window to visit location, in |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
depots_time_windows_unloading_penalty
Name |
Description |
early |
Type: time_windows_unloading_penalty_early Penalty components for early service (used instead of |
late |
Type: time_windows_unloading_penalty_late Penalty components for late visits (used instead of |
out_of_time |
Type: time_windows_unloading_penalty_out_of_time Penalty components for time window failure. Can be used to set the values of |
depots_time_windows_unloading_time_windows_item
Name |
Description |
time_window* |
Type: string Allowed time window to visit location, in |
hard_time_window |
Type: string Allowed hard time window to visit location, in |
initial_route_node_depot
A representation of a depot in initial_routes
.
Name |
Description |
value* |
Type: initial_route_node_depot_value A representation of a location in initial routes. |
type |
Type: string Type of a route component. Enum: |
initial_route_node_location_1
A representation of a location in initial_routes
.
Name |
Description |
value* |
Type: initial_route_node_location_1_value A representation of a location in initial routes. |
type |
Type: string Type of a route component. Enum: |
initial_route_node_work_break
A representation of a work break in initial_routes
.
Name |
Description |
value* |
Type: initial_route_node_work_break_value A representation of a work break in |
type |
Type: string Type of a route component. Enum: |
initial_route_node_courier_position
A representation of a couerier position in initial_routes
.
Name |
Description |
value* |
|
type |
Type: string Type of a route component. Enum: |
initial_routes_shift_end
Route node, contains information about a visited location or a work break, transit information and arrival time.
Name |
Description |
node* |
Type: initial_route_node_depot or initial_route_node_location_1 or initial_route_node_work_break or initial_route_node_courier_position Route component. |
actual_arrival_time_s |
Type: number or string Actual arrival time at the location. |
actual_departure_time_s |
Type: number or string Actual time of departure from the location. |
actual_service_start_time_s |
Type: number or string Actual time of service start in the location. |
arrival_time_s |
Type: number or string Arrival time at the location. Arrival happened before the start of the time window, will incur waiting time. |
departure_time_s |
Type: number or string Time of departure from the location. |
load_to_head |
Type: (integer or string)[] List of orders that should be loaded to the head of the vehicle at depot or anchor location, in case trailers are used. Orders are listed in the order of serving. |
load_to_trailer |
Type: (integer or string)[] List of orders that should be loaded to the trailer of the vehicle at depot, in case trailers are used. Orders are listed in the order of serving. |
multi_order |
Type: boolean An order is one of several orders at exactly the same location which are served together. Arrival time is the same for all orders in the group, also the orders share Default: |
waiting_duration_s |
Type: number Waiting duration, time spent at location after arrival and before the start of the time window, seconds. |
initial_routes_shift_start
Route node, contains information about a visited location or a work break, transit information and arrival time.
Name |
Description |
node* |
Type: initial_route_node_depot or initial_route_node_location_1 or initial_route_node_work_break or initial_route_node_courier_position Route component. |
actual_arrival_time_s |
Type: number or string Actual arrival time at the location. |
actual_departure_time_s |
Type: number or string Actual time of departure from the location. |
actual_service_start_time_s |
Type: number or string Actual time of service start in the location. |
arrival_time_s |
Type: number or string Arrival time at the location. Arrival happened before the start of the time window, will incur waiting time. |
departure_time_s |
Type: number or string Time of departure from the location. |
load_to_head |
Type: (integer or string)[] List of orders that should be loaded to the head of the vehicle at depot or anchor location, in case trailers are used. Orders are listed in the order of serving. |
load_to_trailer |
Type: (integer or string)[] List of orders that should be loaded to the trailer of the vehicle at depot, in case trailers are used. Orders are listed in the order of serving. |
multi_order |
Type: boolean An order is one of several orders at exactly the same location which are served together. Arrival time is the same for all orders in the group, also the orders share Default: |
waiting_duration_s |
Type: number Waiting duration, time spent at location after arrival and before the start of the time window, seconds. |
points_throughputs_penalty_throughput
Penalty components for throughput exceeding. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if throughput is exceeded. Default: |
kg |
Type: number Penalty for each extra kg of throughput exceeding. Default: |
unit |
Type: number Penalty for each extra custom unit of throughput exceeding ( Default: |
vehicle |
Type: number Penalty for each extra vehicle per hour of throughput exceeding. Default: |
breaks_penalty
Penalties applied for violations of work break conditions. More information
Name |
Description |
early |
Type: penalty_early Penalty components for early work break. |
late |
Type: penalty_late Penalty components for late work break. |
template_rest_schedules_penalty_early
Penalty components for early work break.
Name |
Description |
fixed |
Type: number Fixed penalty applied if a courier starts a work break while they worked for a less than the specified minimal work duration since the start of work or the previous work break ending.More information Default: |
minute |
Type: number Penalty for each minute of an early start of work break if a courier starts a work break while they worked for a less than the specified minimal work duration since the start of work or the previous work break ending.More information Default: |
template_rest_schedules_penalty_late
Penalty components for late work break.
Name |
Description |
fixed |
Type: number Fixed penalty applied if a worker starts a work break while they worked for a more than the specified maximal work duration since the start of work or the previous work break ending.More information Default: |
minute |
Type: number Penalty for each minute of a late start of work break if a worker starts a work break while they worked for a more than the specified maximal work duration since the start of work or the previous work break ending.More information Default: |
rest_schedule_penalty_early
Penalty components for early work break.
Name |
Description |
fixed |
Type: number Fixed penalty applied if a courier starts a work break while they worked for a less than the specified minimal work duration since the start of work or the previous work break ending.More information Default: |
minute |
Type: number Penalty for each minute of an early start of work break if a courier starts a work break while they worked for a less than the specified minimal work duration since the start of work or the previous work break ending.More information Default: |
rest_schedule_penalty_late
Penalty components for late work break.
Name |
Description |
fixed |
Type: number Fixed penalty applied if a worker starts a work break while they worked for a more than the specified maximal work duration since the start of work or the previous work break ending.More information Default: |
minute |
Type: number Penalty for each minute of a late start of work break if a worker starts a work break while they worked for a more than the specified maximal work duration since the start of work or the previous work break ending.More information Default: |
shifts_penalty_early
Penalty components for shifts started too early (used instead of out_of_time
penalty). If the shift was also finished too early, it is applied to the shift finish too. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the vehicle starts or finishes the shift before the start of the time window. Default: |
minute |
Type: number Penalty for each minute of earliness if the vehicle starts or finishes the shift before the start of the time window. Default: |
shifts_penalty_late
Penalty components for shifts finished too late (used instead of out_of_time
penalty). This penalty is applied for being late to the end of the shift's time window or violating the max_duration_s
bound. If both are violated simultaneously, the penalty is applied twice and summed. If the shift was started after the end of the time window, this penalty for the start time point is also added separately. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the vehicle starts or finishes the shift after the end of the time window or shift duration exceeds the Default: |
minute |
Type: number Penalty for each minute of lateness if the vehicle starts or finishes the shift after the end of the time window or if the vehicle spends more than Default: |
shifts_penalty_max_mileage
Penalties applied for violating shift's max_mileage_km
limit. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if a vehicle shift has mileage greater than Default: Min value: |
km |
Type: number Penalty applied per each extra kilometer when shift mileage is greater than Default: Min value: |
shifts_penalty_out_of_time
Penalty components for time window failure. Can be used to set the values of early
and late
options simultaneously, and each value is overridden if the respective option is also defined. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the vehicle starts or finishes the shift outside of the time window. See the specifications of Default: |
minute |
Type: number Penalty for each minute of being outside of the time window of the shift. See the specifications of Default: |
shifts_penalty_stop_excess
Penalties applied for violating shift's maximal_stops
limit. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if a vehicle shift has greater than Default: Min value: |
per_stop |
Type: number Penalty applied per each extra stop when shift stop count is greater than Default: Min value: |
shifts_penalty_stop_lack
Penalties applied for violating shift's minimal_stops
limit. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if a vehicle shift has less than Default: Min value: |
per_stop |
Type: number Penalty applied per each missing stop when shift stop count is less than Default: Min value: |
shifts_penalty_unique_stop_lack
Penalties applied for violating shift's minimal_stops
limit. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if a vehicle shift has less than Default: Min value: |
per_stop |
Type: number Penalty applied per each missing stop when shift stop count is less than Default: Min value: |
shifts_penalty_working_overtime
Penalty components for violating of maximal working duration in shift. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied for violating of maximal working duration in shift. Default: |
minute |
Type: number Penalty for each minute of maximal working duration violation in shift. Default: |
rest_schedule_breaks_0
Work break (old format). More information
Name |
Description |
rest_duration_s* |
Type: number Duration of rest, seconds. More information Min value: Max value: |
can_be_split |
Type: boolean Work break can be split into parts (within the same shift and without work break order vilation). More information Default: |
can_rest_during_service |
Type: boolean It is allowed to this break during locations service duration. More information Default: |
check_ending_time |
Type: boolean For this work break fields, used to specify its starting time (time_range, desired_work_duration), specify its ending time instead. Default: |
continuous_travel_time_range |
Type: string Minimal and maximal duration of continuous travel time before rest, format: |
driving_time_range |
Type: string Minimal and maximal duration of driving before rest, format: |
exact_time_range |
Type: string The exact time range when the rest should start, format: |
id |
Type: integer or string Work break ID. All work breaks IDs in vehicle |
max_split_parts |
Type: integer Maximal number of parts in which the work break can be split. More information Min value: |
min_first_split_part_duration_s |
Type: number Minimal duration of the first part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_last_split_part_duration_s |
Type: number Minimal duration of the last part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_split_part_duration_s |
Type: number Minimal duration of one part of a split order. More information Default: Min value: |
penalty |
Type: breaks_penalty Penalties applied for violations of work break conditions. More information |
repeatable |
Type: boolean When true, this work break will be repeated until the end of route. Can only be true for the last break in the chain. More information Default: |
travel_time_range |
Type: string Minimal and maximal duration of driving and waiting before rest, format: |
type |
Type: string Type of work break. |
work_time_range_from_start |
Type: string Minimal and maximal duration of time from start of route until rest, format: |
work_time_range_till_rest |
Type: string Minimal and maximal duration of work before rest, format: |
rest_schedule_breaks_1
Work break (new format).
Name |
Description |
rest_duration_s* |
Type: number Duration of rest, seconds. More information Min value: Max value: |
break_type |
Type: string Type of the work break, specifying how the duration before work break start is computed, when
Enum: |
can_be_split |
Type: boolean Work break can be split into parts (within the same shift and without work break order vilation). More information Default: |
can_rest_during_service |
Type: boolean It is allowed to this break during locations service duration. More information Default: |
check_ending_time |
Type: boolean For this work break fields, used to specify its starting time (time_range, desired_work_duration), specify its ending time instead. Default: |
desired_work_duration |
Type: number or string Desired duration before work break start. Type of the break, stated in |
hard_time_range |
Type: string Hard limitation on minimal and maximal duration before work break start. Type of the break, stated in |
id |
Type: integer or string Work break ID. All work breaks IDs in vehicle |
max_split_parts |
Type: integer Maximal number of parts in which the work break can be split. More information Min value: |
min_first_split_part_duration_s |
Type: number Minimal duration of the first part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_last_split_part_duration_s |
Type: number Minimal duration of the last part of a split order. Default value equals one third of rest_duration_s value.More information Min value: |
min_split_part_duration_s |
Type: number Minimal duration of one part of a split order. More information Default: Min value: |
penalty |
Type: breaks_penalty Penalties applied for violations of work break conditions. More information |
repeatable |
Type: boolean When true, this work break will be repeated until the end of route. Can only be true for the last break in the chain. More information Default: |
soft_time_range |
Type: string Soft limitation on minimal and maximal duration before work break start. Type of the break, stated in |
type |
Type: string Type of work break. |
shifts_rest_schedule_penalty
Penalties applied for violations of work break conditions. More information
Name |
Description |
early |
Type: rest_schedule_penalty_early Penalty components for early work break. |
late |
Type: rest_schedule_penalty_late Penalty components for late work break. |
shifts_run_restrictions_max_mileage_km
Name |
Description |
value* |
Type: number Restriction on the mileage of the run. Min value: |
penalty |
shifts_run_restrictions_maximal_stops
Name |
Description |
value* |
Type: integer Restriction on the maximal number of stops in a run. Min value: |
penalty |
shifts_run_restrictions_minimal_stops
Name |
Description |
value* |
Type: integer Restriction on the minimum number of stops in a run. Min value: |
penalty |
trailer_capacity_limits
Trailer load limits.
Name |
Description |
units_perc |
Type: number Upper limit of total shipments size in custom units as a percentage of a trailer capacity Default: Min value: |
volume_perc |
Type: number Upper limit of total shipments volume as a percentage of trailer volume. For container fitting purposes it is assumed that each dimension is multiplied by the cubic root of Default: Min value: |
weight_perc |
Type: number Upper limit of total shipments weight as a percentage of total weight the trailer is allowed to carry. Default: Min value: |
trailer_capacity_volume
Trailer dimensions.
Name |
Description |
depth_m* |
Type: number Depth, meters. Default: Min value: Max value: |
height_m* |
Type: number Height, meters. Default: Min value: Max value: |
width_m* |
Type: number Width, meters. Default: Min value: Max value: |
walking_courier_restrictions_max_parking_duration_s
Name |
Description |
penalty |
Type: number Penalty per second exceeding the maximum parking time. Default: Min value: Max value: |
value |
Type: number The maximum duration of the walking part allowed within one parking, seconds. Default: Min value: Max value: |
walking_courier_restrictions_max_parking_walking_distance_m
Name |
Description |
penalty |
Type: number Penalty per m exceeding the maximum distance traveled within one parking. Default: Min value: Max value: |
value |
Type: number The maximum walking distance allowed within one parking. Default: Min value: Max value: |
walking_courier_restrictions_max_walking_edge_distance_m
Name |
Description |
penalty |
Type: number Penalty for exceeding the walking edge limit per meter. Default: Min value: Max value: |
value |
Type: number Max walking distance between two locations in route, meters. Default: Min value: Max value: |
time_windows_loading_penalty_early
Penalty components for early service (used instead of out_of_time
penalty). More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location starts being served before the start of the time window. Default: |
minute |
Type: number Penalty for each minute of early arrival when the location starts being served before the start of the time window. Default: |
time_windows_loading_penalty_late
Penalty components for late visits (used instead of out_of_time
penalty). Whether the start or the end of service during the visit is used to penalize for lateness is determined by the penalize_late_service
option. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location is visited after the end of the time window. Default: |
minute |
Type: number Penalty for each minute of lateness, when the location is visited after the end of the time window. Default: |
time_windows_loading_penalty_out_of_time
Penalty components for time window failure. Can be used to set the values of early
and late
options simultaneously, and each value is overridden if the respective option is also defined. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location is visited outside of the time window. See the specifications of Default: |
minute |
Type: number Penalty for each minute of lateness or early arrival when the location is visited outside of the time window. See the specifications of Default: |
time_windows_refilling_penalty_early
Penalty components for early service (used instead of out_of_time
penalty). More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location starts being served before the start of the time window. Default: |
minute |
Type: number Penalty for each minute of early arrival when the location starts being served before the start of the time window. Default: |
time_windows_refilling_penalty_late
Penalty components for late visits (used instead of out_of_time
penalty). Whether the start or the end of service during the visit is used to penalize for lateness is determined by the penalize_late_service
option. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location is visited after the end of the time window. Default: |
minute |
Type: number Penalty for each minute of lateness, when the location is visited after the end of the time window. Default: |
time_windows_refilling_penalty_out_of_time
Penalty components for time window failure. Can be used to set the values of early
and late
options simultaneously, and each value is overridden if the respective option is also defined. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location is visited outside of the time window. See the specifications of Default: |
minute |
Type: number Penalty for each minute of lateness or early arrival when the location is visited outside of the time window. See the specifications of Default: |
time_windows_unloading_penalty_early
Penalty components for early service (used instead of out_of_time
penalty). More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location starts being served before the start of the time window. Default: |
minute |
Type: number Penalty for each minute of early arrival when the location starts being served before the start of the time window. Default: |
time_windows_unloading_penalty_late
Penalty components for late visits (used instead of out_of_time
penalty). Whether the start or the end of service during the visit is used to penalize for lateness is determined by the penalize_late_service
option. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location is visited after the end of the time window. Default: |
minute |
Type: number Penalty for each minute of lateness, when the location is visited after the end of the time window. Default: |
time_windows_unloading_penalty_out_of_time
Penalty components for time window failure. Can be used to set the values of early
and late
options simultaneously, and each value is overridden if the respective option is also defined. More information
Name |
Description |
fixed |
Type: number Fixed penalty applied if the location is visited outside of the time window. See the specifications of Default: |
minute |
Type: number Penalty for each minute of lateness or early arrival when the location is visited outside of the time window. See the specifications of Default: |
initial_route_node_depot_value
A representation of a location in initial routes.
Name |
Description |
id* |
Type: integer or string Reference to a location specified in |
added_shared_service_duration_s |
Type: number Added duration of shared service, for first order in multi-order equals to Default: Min value: Max value: |
anchor_mode |
Type: string Default: Enum: |
delivered_orders |
Type: (integer or string)[] List of IDs of orders delivered to the drop_off, depot or cross dock for delivery to the destination. More information |
delivery_deadline |
Type: string Time by which the |
fixed_position |
Type: boolean It is not allowed to move location or insert other locations before it. More information Default: |
fixed_run |
Type: boolean Order can only be added in the run in which it was planned. Default: |
fixed_shift |
Type: boolean Order can only be added in the shift in which it was planned. Default: |
fixed_vehicle |
Type: boolean Order can only be taken by the vehicle in which it was planned. Default: |
keep_in_vehicle |
Type: boolean When order is dropped it still takes space in the vehicle. Default: |
loaded_orders |
Type: (integer or string)[] Ids of |
parking_mode |
Type: string Default: Enum: |
parking_type |
Type: string Enum: |
picked_orders |
Type: (integer or string)[] A list of IDs of orders picked up in the cross dock or depot. More information |
pickup_id |
Type: integer or string ID of a |
pickup_ids |
Type: (integer or string)[] List of IDs of pickups corresponding to this delivery. |
service_waiting_duration_s |
Type: number Duration of waiting for service at a location. It can be non-zero when an order is a part of a multi-order. In this case waiting duration includes duration of service of the other orders from the multi-order. More information Default: Min value: Max value: |
split_info |
Type: initial_route_node_depot_value_split_info Information about split part of the order (in case if the order was split). |
total_service_duration_s |
Type: number Planned total duration of service at a location, it includes Default: Min value: Max value: |
trailer_decoupled |
Type: boolean Default: |
trailer_used |
Type: boolean Default: |
undroppable |
Type: boolean Location cannot be dropped Default: |
unfeasible_reasons |
Type: (value_unfeasible_reasons_0_1 or value_unfeasible_reasons_1_1 or value_unfeasible_reasons_2_1 or value_unfeasible_reasons_3_1 or value_unfeasible_reasons_4_1 or value_unfeasible_reasons_5_1 or value_unfeasible_reasons_6_1 or value_unfeasible_reasons_7_1 or value_unfeasible_reasons_8_1 or value_unfeasible_reasons_9_1 or value_unfeasible_reasons_10_1 or value_unfeasible_reasons_11_1 or value_unfeasible_reasons_12_1 or value_unfeasible_reasons_13_1 or value_unfeasible_reasons_14_1 or value_unfeasible_reasons_15_1 or value_unfeasible_reasons_16_1 or value_unfeasible_reasons_17_1 or value_unfeasible_reasons_18_1 or value_unfeasible_reasons_19_1 or value_unfeasible_reasons_20_1 or value_unfeasible_reasons_21_1 or value_unfeasible_reasons_22_1 or value_unfeasible_reasons_23_1)[] List of unfeasible reasons. |
initial_route_node_location_1_value
A representation of a location in initial routes.
Name |
Description |
id* |
Type: integer or string Reference to a location specified in |
added_shared_service_duration_s |
Type: number Added duration of shared service, for first order in multi-order equals to Default: Min value: Max value: |
anchor_mode |
Type: string Default: Enum: |
delivered_orders |
Type: (integer or string)[] List of IDs of orders delivered to the drop_off, depot or cross dock for delivery to the destination. More information |
delivery_deadline |
Type: string Time by which the |
fixed_position |
Type: boolean It is not allowed to move location or insert other locations before it. More information Default: |
fixed_run |
Type: boolean Order can only be added in the run in which it was planned. Default: |
fixed_shift |
Type: boolean Order can only be added in the shift in which it was planned. Default: |
fixed_vehicle |
Type: boolean Order can only be taken by the vehicle in which it was planned. Default: |
keep_in_vehicle |
Type: boolean When order is dropped it still takes space in the vehicle. Default: |
loaded_orders |
Type: (integer or string)[] Ids of |
parking_mode |
Type: string Default: Enum: |
parking_type |
Type: string Enum: |
picked_orders |
Type: (integer or string)[] A list of IDs of orders picked up in the cross dock or depot. More information |
pickup_id |
Type: integer or string ID of a |
pickup_ids |
Type: (integer or string)[] List of IDs of pickups corresponding to this delivery. |
service_waiting_duration_s |
Type: number Duration of waiting for service at a location. It can be non-zero when an order is a part of a multi-order. In this case waiting duration includes duration of service of the other orders from the multi-order. More information Default: Min value: Max value: |
split_info |
Type: initial_route_node_location_1_value_split_info Information about split part of the order (in case if the order was split). |
total_service_duration_s |
Type: number Planned total duration of service at a location, it includes Default: Min value: Max value: |
trailer_decoupled |
Type: boolean Default: |
trailer_used |
Type: boolean Default: |
undroppable |
Type: boolean Location cannot be dropped Default: |
unfeasible_reasons |
Type: (value_unfeasible_reasons_0 or value_unfeasible_reasons_1 or value_unfeasible_reasons_2 or value_unfeasible_reasons_3 or value_unfeasible_reasons_4 or value_unfeasible_reasons_5 or value_unfeasible_reasons_6 or value_unfeasible_reasons_7 or value_unfeasible_reasons_8 or value_unfeasible_reasons_9 or value_unfeasible_reasons_10 or value_unfeasible_reasons_11 or value_unfeasible_reasons_12 or value_unfeasible_reasons_13 or value_unfeasible_reasons_14 or value_unfeasible_reasons_15 or value_unfeasible_reasons_16 or value_unfeasible_reasons_17 or value_unfeasible_reasons_18 or value_unfeasible_reasons_19 or value_unfeasible_reasons_20 or value_unfeasible_reasons_21 or value_unfeasible_reasons_22 or value_unfeasible_reasons_23)[] List of unfeasible reasons. |
initial_route_node_work_break_value
A representation of a work break in initial_routes
.
Name |
Description |
id |
Type: integer or string Work break ID. All work breaks IDs in vehicle |
is_during_service |
Type: boolean Work break is made during the next location service time. |
rest_duration_s |
Type: number Duration of rest, seconds. More information Min value: Max value: |
split_info |
Type: initial_route_node_work_break_value_split_info Information about split part of the work break (in case if the work break was split). |
initial_route_node_courier_position_value
Name |
Description |
location_id* |
Type: string Id of current location. |
passed_time_s |
Type: number Time passed after courier leave current location. Consider that courier has not yet arrived to the next location. |
penalty_early
Penalty components for early work break.
Name |
Description |
fixed |
Type: number Fixed penalty applied if a courier starts a work break while they worked for a less than the specified minimal work duration since the start of work or the previous work break ending.More information Default: |
minute |
Type: number Penalty for each minute of an early start of work break if a courier starts a work break while they worked for a less than the specified minimal work duration since the start of work or the previous work break ending.More information Default: |
penalty_late
Penalty components for late work break.
Name |
Description |
fixed |
Type: number Fixed penalty applied if a worker starts a work break while they worked for a more than the specified maximal work duration since the start of work or the previous work break ending.More information Default: |
minute |
Type: number Penalty for each minute of a late start of work break if a worker starts a work break while they worked for a more than the specified maximal work duration since the start of work or the previous work break ending.More information Default: |
run_restrictions_max_mileage_km_penalty
Name |
Description |
fixed |
Type: number Fixed penalty for violation of the restriction. Default: |
per_km |
Type: number A penalty for each kilometer of violation of the restriction. Default: |
run_restrictions_maximal_stops_penalty
Name |
Description |
fixed |
Type: number Fixed penalty for violation of the restriction. Default: |
per_stop |
Type: number A penalty for each stop exceeding the restriction. Default: |
run_restrictions_minimal_stops_penalty
Name |
Description |
fixed |
Type: number Fixed penalty for violation of the restriction. Default: |
per_stop |
Type: number A penalty for each lacking stop. Default: |
initial_route_node_depot_value_split_info
Information about split part of the order (in case if the order was split).
Name |
Description |
order_ratio |
Type: number Split ratio of an order or a work break, included in this part. |
part_id |
Type: integer Number of this part of the order. |
parts_count |
Type: integer Number of parts, in which the order was split. |
units |
Type: number Size of this part in custom units (in case there was corresponding quant specified for this order). |
volume_cbm |
Type: number Volume of this part, cubic meters (in case there was corresponding quant specified for this order). |
weight_kg |
Type: number Weight of this part, kilograms (in case there was corresponding quant specified for this order). |
value_unfeasible_reasons_0_1
The reason why the location is not feasible.
Name |
Description |
overload* |
Type: number The overload value. The unit used depends on the overload type:
|
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
custom_type |
Type: string Type of custom units that caused overload in case of OVERLOAD_CUSTOM. |
value_unfeasible_reasons_1_1
The reason why the location is not feasible.
Name |
Description |
late_duration_s* |
Type: number The duration of late arrival, (arrival time) - (end of time window), seconds. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_2_1
The reason why the location is not feasible.
Name |
Description |
tags* |
Type: string[] List of missing required tags. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_3_1
The reason why the location is not feasible.
Name |
Description |
tags* |
Type: string[] List of present excluded tags. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_4_1
The reason why the location is not feasible.
Name |
Description |
overrun_s* |
Type: number The amount of time by which the hard transit time restriction was exceeded, in seconds. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_5_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_6_1
The reason why the location is not feasible.
Name |
Description |
incompatibilities* |
Type: unfeasible_reasons_incompatibilities_item_3[] List of all incompatibile load type pairs. |
incompatible_load_types* |
Type: string[] List of all incompatible load types. |
incompatible_order_ids* |
Type: (integer or string)[] List of all incompatible order ids. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_7_1
The reason why the location is not feasible.
Name |
Description |
incompatibilities* |
Type: unfeasible_reasons_incompatibilities_item[] List of all incompatibile zone pairs. |
incompatible_order_ids* |
Type: (integer or string)[] List of all incompatible order ids. |
incompatible_zones* |
Type: string[] List of all incompatible zones. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_8_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_9_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_10_1
The reason why the location is not feasible.
Name |
Description |
tags* |
Type: string[] List of vehicle's allowed zones. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_11_1
The reason why the location is not feasible.
Name |
Description |
tags* |
Type: string[] List of present forbidden zones. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_12_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_13_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_14_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_15_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_16_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_17_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_18_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_19_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_20_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_21_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_22_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_23_1
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
initial_route_node_location_1_value_split_info
Information about split part of the order (in case if the order was split).
Name |
Description |
order_ratio |
Type: number Split ratio of an order or a work break, included in this part. |
part_id |
Type: integer Number of this part of the order. |
parts_count |
Type: integer Number of parts, in which the order was split. |
units |
Type: number Size of this part in custom units (in case there was corresponding quant specified for this order). |
volume_cbm |
Type: number Volume of this part, cubic meters (in case there was corresponding quant specified for this order). |
weight_kg |
Type: number Weight of this part, kilograms (in case there was corresponding quant specified for this order). |
value_unfeasible_reasons_0
The reason why the location is not feasible.
Name |
Description |
overload* |
Type: number The overload value. The unit used depends on the overload type:
|
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
custom_type |
Type: string Type of custom units that caused overload in case of OVERLOAD_CUSTOM. |
value_unfeasible_reasons_1
The reason why the location is not feasible.
Name |
Description |
late_duration_s* |
Type: number The duration of late arrival, (arrival time) - (end of time window), seconds. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_2
The reason why the location is not feasible.
Name |
Description |
tags* |
Type: string[] List of missing required tags. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_3
The reason why the location is not feasible.
Name |
Description |
tags* |
Type: string[] List of present excluded tags. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_4
The reason why the location is not feasible.
Name |
Description |
overrun_s* |
Type: number The amount of time by which the hard transit time restriction was exceeded, in seconds. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_5
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_6
The reason why the location is not feasible.
Name |
Description |
incompatibilities* |
Type: unfeasible_reasons_incompatibilities_item_1[] List of all incompatibile load type pairs. |
incompatible_load_types* |
Type: string[] List of all incompatible load types. |
incompatible_order_ids* |
Type: (integer or string)[] List of all incompatible order ids. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_7
The reason why the location is not feasible.
Name |
Description |
incompatibilities* |
Type: unfeasible_reasons_incompatibilities_item[] List of all incompatibile zone pairs. |
incompatible_order_ids* |
Type: (integer or string)[] List of all incompatible order ids. |
incompatible_zones* |
Type: string[] List of all incompatible zones. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_8
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_9
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_10
The reason why the location is not feasible.
Name |
Description |
tags* |
Type: string[] List of vehicle's allowed zones. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_11
The reason why the location is not feasible.
Name |
Description |
tags* |
Type: string[] List of present forbidden zones. |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_12
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_13
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_14
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_15
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_16
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_17
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_18
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_19
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_20
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_21
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_22
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
value_unfeasible_reasons_23
The reason why the location is not feasible.
Name |
Description |
text* |
Type: string Explanation for the reason the location was not feasible. |
type* |
Type: string Possible reasons:
Enum: |
initial_route_node_work_break_value_split_info
Information about split part of the work break (in case if the work break was split).
Name |
Description |
part_id |
Type: integer Number of this part of the work break. |
parts_count |
Type: integer Number of parts, in which the work break was split. |
unfeasible_reasons_incompatibilities_item_3
A list of all pairs of load types that are not compatible with an order.
Name |
Description |
incompatible_order_id* |
Type: integer or string Reference to a location specified in |
types* |
Type: incompatibilities_types_item[] |
unfeasible_reasons_incompatibilities_item
A list of all pairs of zones that are not compatible with an order.
Name |
Description |
incompatible_order_id* |
Type: integer or string Reference to a location specified in |
zones* |
Type: incompatibilities_zones_item[] |
unfeasible_reasons_incompatibilities_item_1
A list of all pairs of load types that are not compatible with an order.
Name |
Description |
incompatible_order_id* |
Type: integer or string Reference to a location specified in |
types* |
Type: incompatibilities_types_item[] |
incompatibilities_types_item
Name |
Description |
other_type* |
Type: string Load type of the incompatible order. |
self_type* |
Type: string Load type of the current order. |
incompatibilities_zones_item
Name |
Description |
other_zone* |
Type: string Load type of the incompatible order. |
self_zone* |
Type: string Load type of the current order. |
Responses
202 Accepted
Task has been queued for execution.
Body
application/json
{
"id": "string",
"message": "string",
"status": {
"cancelled": 0,
"completed": 0,
"estimate": 0,
"queued": 0,
"started": 0
}
}
Name |
Description |
id* |
Type: string Task unique id. |
status* |
Type: task_info_1_status Task statuses object. Keys are task statuses, values are UNIX timestamps for corresponding status. Possible status transits:
|
message |
Type: string Human-readable description of task state. |
task_info_1_status
Task statuses object. Keys are task statuses, values are UNIX timestamps for corresponding status.
Possible status transits:
queued
-> started
-> (completed
or cancelled
)
Name |
Description |
queued* |
Type: number Task has been queued for execution. |
cancelled |
Type: number Task execution has been cancelled by user or system due to timeout or error. |
completed |
Type: number Task execution completed with result or error. |
estimate |
Type: number Estimated time when task expected to be completed. The time estimation may change during solving process. The estimate is valid for approximately 75% of tasks (they may be ready 5-15 seconds before "estimate")Some tasks may require more time for calculation, typically this extra time is not more than 1 minute. |
started |
Type: number Task execution has been started. |
400 Bad Request
Invalid or empty JSON in POST request body.
Body
application/json
{
"error": {
"incident_id": "string",
"message": "string"
}
}
Name |
Description |
error* |
Type: error_2_error Error description. |
error_2_error
Error description.
Name |
Description |
message* |
Type: string Human-readable error description. |
incident_id |
Type: string Unique identifier of error incident. In case of API error, this identifier can be provided to support for investigation. |
401 Unauthorized
Missing apikey.
Body
application/json
{
"error": {
"incident_id": "string",
"message": "string"
}
}
Name |
Description |
error* |
Type: error_2_error Error description. |
429 Too Many Requests
Too many requests.
Body
application/json
{
"error": {
"incident_id": "string",
"message": "string"
}
}
Name |
Description |
error* |
Type: error_2_error Error description. |
500 Internal Server Error
Server error during request processing.
Body
application/json
{
"error": {
"incident_id": "string",
"message": "string"
}
}
Name |
Description |
error* |
Type: error_2_error Error description. |
503 Service Unavailable
Not enough resources available to run the task.
Body
application/json
{
"error": {
"incident_id": "string",
"message": "string"
}
}
Name |
Description |
error* |
Type: error_2_error Error description. |
No longer supported, please use an alternative and newer version.