Create a route

Cre­at­ing a new route.

After suc­cess­ful­ly exe­cut­ing the method, you receive in response the route details with the unique route iden­ti­fi­ca­tion num­ber id assigned when cre­at­ing the new route.

POST
/ext/contracts-api/v2/routes
Request Authorization

Every request MUST include a valid access token obtained dur­ing the user autho­riza­tion process, pro­vid­ed using the Bear­er token scheme in the Autho­riza­tion head­er.

Successful Response
Request Header
POST  /ext/contracts-api/v2/routes HTTP/1.1 
Host: api.platform.trans.eu 
Content-Type: application/json
Accept: application/json
Authorization: Bearer {access_token) 
Api-key: {unique_app_api-key}
Request Parameters
AttributeTypeExam­pleManda­to­ryDescrip­tion
dis­tanceObjectNoRoute dis­tance
distance.declaredObjectNoRoute dis­tance declared by user dur­ing con­fig­u­ra­tion the route
distance.declared.unit_codeString“km”NoUnit code fo declared dis­tance. Default is km (kilo­me­ters)
distance.declared.valueInt150NoVal­ue of declared dis­tance
is_roundtripBooleanFalseNoRound trip route
loadsArray of ObjectsNoSpec­i­fi­ca­tion of loads para­me­ters required on the route
loads.amountInt1NoAmount of load types with­in giv­en load
loads.heightObjectNoLoad height
loads.height.unit_codeString“m”NoUnit of load height. Always is “m” (meters).
loads.height.valueFloat2.3NoVal­ue of load height (range 0.01–10)
loads.lengthObjectNoLoad length
loads.length.unit_codeString“m”NoUnit of load length. Always is “m” (meters)
loads.length.valueFloat1.2NoVal­ue of load length (range 0.01–100)
loads.nameString“Glass load”NoName of a load
loads.palletesObjectNoAddi­tion­al rules for pal­lets
loads.palletes.is_exchangeableBooleanFalseNoDeter­mines if type of load is avail­able for exchange at unload­ing place
loads.palletes.is_stackableBooleanFalseNoSpec­i­fies whether the type of load allows stack­ing
loads.type_of_loadString“europal­lete”NoSup­port­ed load type (see dic­tio­nary)
loads.volumeObjectNoLoad vol­ume
loads.volume.unit_codeString“m3”NoUnit of load vol­ume. Always is “m3”
loads.volume.valueFloat1.92NoVal­ue of load vol­ume (range 0.01–10000)
loads.weightObjectNoLoad weight
loads.weight.maxObjectNoMin load weight
loads.weight.max.unit_codeString“t”NoUnit of load weight. Always is “t” (tonnes)
loads.weight.max.valueFloat2NoVal­ue of load weight (range 0.001 – 100000)
loads.weight.minObjectNoMax load weight
loads.weight.min.unit_codeString“t”NoUnit of load weight. Always is “t” (tonnes)
loads.weight.min.valueFloat2.4NoVal­ue of load weight (range 0.001 – 100000)
loads.widthObjectNoLoad width
loads.width.unit_codeString“m”NoUnit of load width. Always is “m” (meters)
loads.width.valueFloat2.1NoVal­ue of load width (range 0.01–10)
nameString“Route Warsza­wa-Berlin 1”YesName of the route
publication_scenarioObjectNoDef­i­n­i­tion of pub­li­ca­tion sce­nario for route
publication_scenario.dataObjectNo/YesManda­to­ry object for in_order sce­nario type
publication_scenario.data.orderString“grad­u­al­ly”YesOrder of pub­li­ca­tion to car­ri­er list. Avail­able val­ues:
gradually - after the spec­i­fied pub­li­ca­tion time has elapsed, grad­u­al­ly add next recip­i­ent
next_recipient - after the spec­i­fied pub­li­ca­tion time has elapsed, for­ward­ing to the next recip­i­ent
publication_scenario.data.publication_timeObjectYesPub­li­ca­tion peri­od for one recip­i­ent
publication_scenario.data.publication_time.unit_codeString“s”YesUnit time for time val­ue. Always is “s” (sec­onds)
publication_scenario.data.publication_time.user_unit_codeString“min”YesUnit time indi­cat­ed by user. Avail­able val­ues are “min” (min­utes) or “h” (hours)
publication_scenario.data.publication_time.valueInt300YesPeri­od of pub­li­ca­tion time in sec­onds. Range (300 — 432000).
publication_scenario.typeString“in_order”NoPub­li­ca­tion sce­nario type. Avail­able val­ues:
parallel - pub­li­ca­tion to all in par­al­lel (default)
in_order - pub­li­ca­tion in order of the car­ri­er list
require­mentsObjectNoVehi­cle require­ments
requirements.additional_requirementsArray of StringsNoAddi­tion­al vehi­cle require­ments (see dic­tio­nary)
requirements.capacityObjectNoVehi­cle capac­i­ty
requirements.capacity.maxObjectNoVehi­cle max capac­i­ty
requirements.capacity.max.unit_codeString“t”NoUnit of max capac­i­ty. Always is “t” (tonnes)
requirements.capacity.max.valueFloat24NoVal­ue of vehi­cle max capac­i­ty
requirements.capacity.minObjectNoVehi­cle min capac­i­ty
requirements.capacity.min.unit_codeString“t”NoUnit of min capac­i­ty. Always is “t” (tonnes)
requirements.capacity.min.valueFloat20NoVal­ue of vehi­cle min capac­i­ty
requirements.exemption_from_adrBooleanFalseNoThe load can be trans­port­ed by car­ri­er with­out ADR autho­riza­tion. It occurs only for additional_requirements adr.
requirements.freight_typeString“FTL”NoType of freight. Avail­able val­ues: FTL, LTL, MULTI_FTL, null
requirements.heightObjectNoVehi­cle height
requirements.height.unit_codeString“m”NoUnit of vehi­cle height. Always is “m” (meters)
requirements.height.valueFloat2.1NoVal­ue of vehi­cle height
requirements.lengthObjectNoVehi­cle length
requirements.length.unit_codeString“m”NoUnit of vehi­cle length. Always is “m” (meters)
requirements.length.valueFloat3.4NoVal­ue of vehi­cle length
requirements.required_adr_classesArray of StringsNoADR freight class­es (see dic­tio­nary)
requirements.required_truck_bodiesArray of StringsNoExpect­ed vehi­cle body types matched to select­ed vehicle_size (see dic­tio­nary). Array can con­tains max 5 val­ues.
requirements.required_ways_of_loadingArray of StringsNoThe way of loading/unloading vehi­cle. Accept­able val­ues: backsidetop.
requirements.shipping_remarksString“descrip­tion”NoAddi­tion­al ship­ping remarks
requirements.vehicle_sizeString“any_size”NoExpect­ed vehi­cle size (see dic­tio­nary). Default val­ue is any_size. If you select any_size all 4 basic types of vehi­cle size are auto­mat­i­cal­ly select­ed.
requirements.volumeObjectNoVehi­cle vol­ume
requirements.volume.unit_codeString“m3”NoUnit of vehi­cle vol­ume. Always is “m3” (cubic meters)
requirements.volume.valueFloat12.1NoVal­ue of vehi­cle vol­ume
requirements.widthObjectNoVehi­cle width
requirements.width.unit_codeString“m”NoUnit of vehi­cle width. Always is “m” (meters)
requirements.width.valueFloat2.3NoVal­ue of vehi­cle width
spotsArray of ObjectsYesCol­lec­tion of routes’ spots. One load­ing and one unload­ing will occur.
spots.idString“21b4c767-8119–4938-8957-aeef320c4b2e”NoSpot id
spots.nameString“Wrocław home point”NoName of spot
spots.placeObjectYesInfor­ma­tion relat­ed to sin­gle place on route
spots.place.addressObjectYesAddress of the select­ed point
spots.place.address.countryString“pl”YesCoun­try using ISO val­ues (see dic­tio­nary)
spots.place.address.detailed_location_idInt123456NoDetailed loca­tion id
spots.place.address.foreign_idIntnullNoFor­eign address id
spots.place.address.localityStringWrocławNoCity name
spots.place.address.location_idInt234567NoLoca­tion id
spots.place.address.numberString“2–4”NoProp­er­ty num­ber
spots.place.address.postal_codeString“51–546”NoPostal code
spots.place.address.radiusFloatnullNoRadius
spots.place.address.streetString“Racław­ic­ka”NoStreet name
spots.place.coordinatesObjectNoLon­gi­tude and lat­i­tude for select­ed point
spots.place.coordinates.latitudeFloat53.35801NoLat­i­tude of the point along the route
spots.place.coordinates.longitudeFloat-2.16539NoLon­gi­tude of the point along the route
spots.typeString“load­ing”YesAvail­able val­ues: loading, unloading
unique_keyString“Route-PL-DE‑1”NoRoute unique name
Example Request Body
{
  "unique_key": "route-123C",
  "name": "PL - FR route",
  "is_roundtrip": false,
  "distance": {
    "declared": {
      "value": 1200,
      "unit_code": "km"
    }
  },
 "publication_scenario": {
   "type": "in_order",
   "data": {
     "publication_time": {
       "value": 11000,
       "unit_code": "s",
       "user_unit_code": "min"
     },
     "order": "next_recipient"
   }
 },
  "requirements": {
        "capacity": {
            "min": {
                "value": 12,
                "unit_code": "t"
            },
            "max": {
                "value": 23,
                "unit_code": "t"
            }
        },
        "required_truck_bodies": [
            "cooler",
            "curtainsider"
        ],
        "required_ways_of_loading": [
            "Side",
            "Back"
        ],
        "vehicle_size": "bus",
        "freight_type": "FTL"
  },
"spots": [
    {
      "type": "loading",
      "place": {
          "address": {
               "locality": "Suwałki",
               "postal_code": "52-234",
               "country": "pl"
          }
      }
    },
    {
      "type": "unloading",
      "place": {
          "address": {
               "locality": "MARSYLIA",
               "postal_code": "13014",
               "country": "fr",
               "street": "Boulevard Danielle Casanova",
               "number": "151",
               "location_id": 1436808
          },
          "coordinates": {
                "latitude": 43.323447,
                "longitude": 5.3740827
          }
      }
    }
]
}
Response Fields
AttributeTypeExam­pleDescrip­tion
bal­anc­ingObjectRules of choice next recip­i­ents for pub­li­ca­tion
balancing.allowed_typesArray of StringsAvail­able types of bal­anc­ing: contract_condition, freight_limit, manual, percentage_share, price_ascending
balancing.dataObjectAddi­tion­al infor­ma­tion about bal­anc­ing
balancing.data.freight_limitObjectCon­fig­u­ra­tion of trans­port lim­its for freight_limit type of bal­anc­ing.
When pub­lish­ing a freight, the order of car­ri­ers will be auto­mat­i­cal­ly deter­mined so that no car­ri­er receives more or less orders than the lim­it.
balancing.data.freight_limit.maxInt10Max lim­it in %
balancing.data.freight_limit.minInt60Min lim­it in %
balancing.typeString“man­u­al”Bal­anc­ing type select­ed for route
dis­tanceObjectRoute dis­tance
distance.declaredObjectRoute dis­tance declared by user dur­ing con­fig­u­ra­tion of the route
distance.declared.unit_codeString“km”Unit code fo declared dis­tance. Default is km (kilo­me­ters)
distance.declared.valueInt150Val­ue of declared dis­tance
distance.calculatedObjectRoute dis­tance auto­mat­i­cal­ly cal­cu­lat­ed dur­ing con­fig­u­ra­tion of the route. Always is null in the request.
distance.calculated.unit_codeString“km”Unit code fo cal­cu­lat­ed dis­tance. Default is km (kilo­me­ters)
distance.calculated.valueInt161Val­ue of cal­cu­lat­ed dis­tance
distance_matchObjectKilo­me­ter range for route match­ing. Always is null in the request.
distance_match.maxObjectMax range
distance_match.max.unit_codeString“km”Unit code for max range. Default is km.
distance_match.max.valueInt140Val­ue of max range.
distance_match.minObjectMin range
distance_match.min.unit_codeString“km”Unit code for min range. Default is km.
distance_match.min.valueInt170Val­ue of min range.
idString“b998d30b-502d-4a50-a423-aca69aa7a756”Route id
is_roundtripBooleanFalseRound trip route
loadsArray of ObjectsSpec­i­fi­ca­tion of loads para­me­ters required on the route
loads.amountInt1Amount of load types with­in giv­en load
loads.heightObjectLoad height
loads.height.unit_codeString“m”Unit of load height. Always is “m” (meters).
loads.height.valueFloat2.3Val­ue of load height (range 0.01–10)
loads.lengthObjectLoad length
loads.length.unit_codeString“m”Unit of load length. Always is “m” (meters)
loads.length.valueFloat1.2Val­ue of load length (range 0.01–100)
loads.nameString“Glass load”Name of a load
loads.palletesObjectAddi­tion­al rules for pal­lets
loads.palletes.is_exchangeableBooleanFalseDeter­mines if type of load is avail­able for exchange at unload­ing place
loads.palletes.is_stackableBooleanFalseSpec­i­fies whether the type of load allows stack­ing
loads.type_of_loadString“europal­lete”Sup­port­ed load type (see dic­tio­nary)
loads.volumeObjectLoad vol­ume
loads.volume.unit_codeString“m3”Unit of load vol­ume. Always is “m3”
loads.volume.valueFloat1.92Val­ue of load vol­ume (range 0.01–10000)
loads.weightObjectLoad weight
loads.weight.maxObjectMin load weight
loads.weight.max.unit_codeString“t”Unit of load weight. Always is “t” (tonnes)
loads.weight.max.valueFloat2Val­ue of load weight (range 0.001 – 100000)
loads.weight.minObjectMax load weight
loads.weight.min.unit_codeString“t”Unit of load weight. Always is “t” (tonnes)
loads.weight.min.valueFloat2.4Val­ue of load weight (range 0.001 – 100000)
loads.widthObjectLoad width
loads.width.unit_codeString“m”Unit of load width. Always is “m” (meters)
loads.width.valueFloat2.1Val­ue of load width (range 0.01–10)
nameString“Route Warsza­wa-Berlin 1”Route name
posi­tionInt1Route posi­tion in the list of routes
publication_scenarioObjectDef­i­n­i­tion of pub­li­ca­tion sce­nario for route
publication_scenario.dataObjectObject avail­able only for in_order sce­nario type
publication_scenario.data.orderString“grad­u­al­ly”Order of pub­li­ca­tion to car­ri­er list. Avail­able val­ues:
gradually - after the spec­i­fied pub­li­ca­tion time has elapsed, grad­u­al­ly add next recip­i­ent
next_recipient - after the spec­i­fied pub­li­ca­tion time has elapsed, for­ward­ing to the next recip­i­ent
publication_scenario.data.publication_timeObjectPub­li­ca­tion peri­od for one recip­i­ent
publication_scenario.data.publication_time.unit_codeString“s”Unit time for time val­ue. Always is “s” (sec­onds)
publication_scenario.data.publication_time.user_unit_codeString“min”Unit time indi­cat­ed by user. Avail­able val­ues are “min” (min­utes) or “h” (hours)
publication_scenario.data.publication_time.valueInt300Peri­od of pub­li­ca­tion time in sec­onds.
publication_scenario.typeString“in_order”Pub­li­ca­tion sce­nario type. Avail­able val­ues:
parallel - pub­li­ca­tion to all in par­al­lel
in_order - pub­li­ca­tion in order of the car­ri­er list
require­mentsObjectVehi­cle require­ments
requirements.additional_requirementsArray of StringsAddi­tion­al vehi­cle require­ments (see dic­tio­nary)
requirements.capacityObjectVehi­cle capac­i­ty
requirements.capacity.maxObjectVehi­cle max capac­i­ty
requirements.capacity.max.unit_codeString“t”Unit of max capac­i­ty. Always is “t” (tonnes)
requirements.capacity.max.valueFloat24Val­ue of vehi­cle max capac­i­ty
requirements.capacity.minObjectVehi­cle min capac­i­ty
requirements.capacity.min.unit_codeString“t”Unit of min capac­i­ty. Always is “t” (tonnes)
requirements.capacity.min.valueFloat20Val­ue of vehi­cle min capac­i­ty
requirements.exemption_from_adrBooleanFalseThe load can be trans­port­ed by car­ri­er with­out ADR autho­riza­tion. It occurs only for additional_requirements adr.
requirements.freight_typeString“FTL”Type of freight. Avail­able val­ues: FTL, LTL, MULTI_FTL, null
requirements.heightObjectVehi­cle height
requirements.height.unit_codeString“m”Unit of vehi­cle height. Always is “m” (meters)
requirements.height.valueFloat2.1Val­ue of vehi­cle height
requirements.lengthObjectVehi­cle length
requirements.length.unit_codeString“m”Unit of vehi­cle length. Always is “m” (meters)
requirements.length.valueFloat3.4Val­ue of vehi­cle length
requirements.required_adr_classesArray of StringsADR freight class­es (see dic­tio­nary)
requirements.required_truck_bodiesArray of StringsExpect­ed vehi­cle body types matched to select­ed vehicle_size (see dic­tio­nary). Array can con­tains max 5 val­ues.
requirements.required_ways_of_loadingArray of StringsThe way of loading/unloading vehi­cle. Accept­able val­ues: backsidetop.
requirements.shipping_remarksString“descrip­tion”Addi­tion­al ship­ping remarks
requirements.vehicle_sizeString“any_size”Expect­ed vehi­cle size (see dic­tio­nary). Default val­ue is any_size. If you select any_size all 4 basic types of vehi­cle size are auto­mat­i­cal­ly select­ed.
requirements.volumeObjectVehi­cle vol­ume
requirements.volume.unit_codeString“m3”Unit of vehi­cle vol­ume. Always is “m3” (cubic meters)
requirements.volume.valueFloat12.1Val­ue of vehi­cle vol­ume
requirements.widthObjectVehi­cle width
requirements.width.unit_codeString“m”Unit of vehi­cle width. Always is “m” (meters)
requirements.width.valueFloat2.3Val­ue of vehi­cle width
shipment_summaryObject
shipment_summary.amountInt
shipment_summary.distanceObject
shipment_summary.distance.unit_codeString“km”
shipment_summary.distance.valueInt
shipment_summary.priceArray of Object
shipment_summary.price.amountInt
shipment_summary.price.currencyString
shipment_summary.weightObject
shipment_summary.weight.unit_codeString“t”
shipment_summary.weight.valueFloat
spotsArray of ObjectsCol­lec­tion of routes’ spots. One load­ing and one unload­ing will occur.
spots.idString“21b4c767-8119–4938-8957-aeef320c4b2e”Spot id
spots.nameString“Wrocław home point”Name of spot
spots.placeObjectInfor­ma­tion relat­ed to sin­gle place on route
spots.place.addressObjectAddress of the select­ed point
spots.place.address.countryString“pl”Coun­try using ISO val­ues (see dic­tio­nary)
spots.place.address.detailed_location_idInt123456Detailed loca­tion id
spots.place.address.foreign_idIntnullFor­eign address id
spots.place.address.localityStringWrocławCity name
spots.place.address.location_idInt234567Loca­tion id
spots.place.address.numberString“2–4”Prop­er­ty num­ber
spots.place.address.postal_codeString“51–546”Postal code
spots.place.address.radiusFloatnullRadius
spots.place.address.streetString“Racław­ic­ka”Street name
spots.place.coordinatesObjectLon­gi­tude and lat­i­tude for select­ed point
spots.place.coordinates.latitudeFloat53.35801Lat­i­tude of the point along the route
spots.place.coordinates.longitudeFloat-2.16539Lon­gi­tude of the point along the route
spots.typeString“load­ing”Avail­able val­ues: loading, unloading
sta­tusString“active”Route sta­tus. Always is active in the request.
suggested_calculated_route_idString“46575331–7f0a-4f31-acaf-abc8eb08e72d”
unique_keyString“Route-PL-DE‑1”Route unique name
_statsObjectRoute sta­tis­tics
_stats.contractsObjectRoute con­tract sta­tis­tics
_stats.contracts.acceptedInt1Num­ber of accept­ed con­tracts
_stats.contracts.activeInt1Num­ber of active con­tracts
_stats.contracts.finishedInt1Num­ber of fin­ished con­tracts
_stats.contracts.finished_previously_acceptedInt0Num­ber of fin­ished con­tracts pre­vi­ous­ly accept­ed
_stats.contracts.fixedInt0Num­ber of con­tracts with fixed price
_stats.contracts.flexibleInt0Num­ber of con­tracts with flex­i­ble price
_stats.contracts.refusedInt1Num­ber of refused con­tracts
_stats.contracts.registeredInt0Num­ber of reg­is­tered con­tracts
_stats.contracts.waiting_for_acceptanceInt2Num­ber of con­tracts wait­ing for accep­tance
_stats.contracts.waiting_for_carrier_offerInt1Num­ber of con­tracts wait­ing for car­ri­er offer
_stats.contracts.waiting_for_initial_carrier_offerInt0Num­ber of con­tracts wait­ing for first car­ri­er offer
_stats.contracts.waiting_for_shipper_offerInt1Num­ber of con­tracts wait­ing for ship­per offer
_stats.transportsObjectRoute trans­ports sta­tis­tics
_stats.transports.awaitingObjectRoute trans­ports await­ing for real­iza­tion
_stats.transports.awaiting.countIntNum­ber of await­ing trans­ports
_stats.transports.awaiting.median_priceFloatMedi­an price for trans­ports await­ing for real­iza­tion
_stats.transports.cheapest_carrier_offer
_stats.transports.realizedObjectRoute trans­ports real­ized
_stats.transports.realized.average_priceFloatAver­age price for real­ized trans­ports
_stats.transports.realized.countIntNum­ber of real­ized trans­ports
Response Body
{
    "id": "4cdd0500-d930-4c9c-b290-70636f9f4b1e",
    "unique_key": "route-123C",
    "name": "PL - FR route",
    "publication_scenario": {
        "type": "in_order",
        "data": {
            "publication_time": {
                "value": 11000,
                "unit_code": "s",
                "user_unit_code": "min"
            },
            "order": "next_recipient"
        }
    },
    "spots": [
        {
            "id": "ee71a76b-dff3-4ec7-bf41-74769f75c418",
            "name": null,
            "type": "loading",
            "place": {
                "address": {
                    "locality": "Suwałki",
                    "postal_code": "52-234",
                    "country": "pl",
                    "street": null,
                    "number": null,
                    "location_id": null,
                    "detailed_location_id": null,
                    "foreign_id": null,
                    "radius": null
                },
                "coordinates": {
                    "latitude": null,
                    "longitude": null
                }
            }
        },
        {
            "id": "a3febb33-a682-4ce5-a290-08af9af9b00d",
            "name": null,
            "type": "unloading",
            "place": {
                "address": {
                    "locality": "MARSYLIA",
                    "postal_code": "13014",
                    "country": "fr",
                    "street": "Boulevard Danielle Casanova",
                    "number": "151",
                    "location_id": 1436808,
                    "detailed_location_id": null,
                    "foreign_id": null,
                    "radius": null
                },
                "coordinates": {
                    "latitude": 43.323447,
                    "longitude": 5.3740827
                }
            }
        }
    ],
    "distance": {
        "declared": {
            "value": 1200,
            "unit_code": "km"
        },
        "calculated": null
    },
    "suggested_calculated_route_id": null,
    "distance_match": {
        "min": null,
        "max": null
    },
    "is_roundtrip": false,
    "requirements": {
        "required_truck_bodies": [
            "cooler",
            "curtainsider"
        ],
        "required_adr_classes": [],
        "required_ways_of_loading": [
            "side",
            "back"
        ],
        "additional_requirements": [],
        "shipping_remarks": null,
        "freight_type": "FTL",
        "vehicle_size": "bus",
        "width": null,
        "height": null,
        "length": null,
        "volume": null,
        "capacity": {
            "min": {
                "value": 12,
                "unit_code": "t"
            },
            "max": {
                "value": 23,
                "unit_code": "t"
            }
        },
        "exemption_from_adr": false
    },
    "loads": [
        {
            "name": null,
            "type_of_load": null,
            "amount": null,
            "width": null,
            "height": null,
            "length": null,
            "volume": null,
            "weight": {
                "min": null,
                "max": null
            },
            "pallets": {
                "is_stackable": false,
                "is_exchangeable": false
            }
        }
    ],
    "balancing": {
        "type": "manual",
        "allowed_types": [
            "manual",
            "contract_condition",
            "freight_limit",
            "percentage_share",
            "price_ascending"
        ],
        "data": {
            "freight_limit": {
                "min": null,
                "max": null
            }
        }
    },
    "status": "active",
    "shipments_summary": {
        "amount": 0,
        "weight": {
            "value": 0,
            "unit_code": "t"
        },
        "distance": {
            "value": 0,
            "unit_code": "km"
        },
        "price": [
            {
                "amount": null,
                "currency": null
            }
        ]
    },
    "position": 245,
    "_stats": {
        "contracts": {
            "fixed": 0,
            "flexible": 0
        },
        "transports": {
            "realized": {
                "average_price": null,
                "count": 0
            },
            "awaiting": {
                "median_price": null,
                "count": null
            },
            "cheapest_carrier_offer": null
        }
    }
}

Clients errors (code 400)

HTTP 4xx sta­tus codes indi­cate client errors, mean­ing that the request could not be processed due to an issue on the client side. Below is a list of request-spe­cif­ic errors.

Example error 1

No required ‘name’ field

{
    "message": [
        "name must be a string"
    ],
    "error": "Bad Request",
    "statusCode": 400,
    "service_code": 5404
}
Example error 2

No required ‘order’ field in pub­li­ca­tion sce­nario case

{
    "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html",
    "title": "Unprocessable Entity",
    "status": 422,
    "detail": "Failed Validation",
    "validation_messages": {
        "publication_scenario": {
            "data": {
                "order": {
                    "isEnum": "order must be one of the following values: next_recipient, gradually"
                }
            }
        }
    }
}
Example error 3

No required ‘spots.type’ field

{
    "message": [
        "spots.0.type must be a string"
    ],
    "error": "Bad Request",
    "statusCode": 400,
    "service_code": 5404
}