Get contract details

Down­load details of select­ed con­tract.

The contract-id iden­ti­fi­ca­tion num­ber in request can be tak­en by down­load­ing the con­tract list.

GET
/ext/contracts-api/v2/contracts/{contractd-id}
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
GET /ext/contracts-api/v2/contracts/{contract-id} 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}
Response Fields
AttributeTypeExam­pleDescrip­tion
base_contract_idString“23ba734b-5b1f-4be1-9b82-a91e4df­f6551”Base con­tract id.
If does not exists, con­tract id.
car­ri­erObjectCar­ri­er assigned to the con­tract
carrier.companyObjectCar­ri­er com­pa­ny details
carrier.company.idInt567321Car­ri­er com­pa­ny Id
carrier.company.nameString“Eko­Trans­porter”Car­ri­er com­pa­ny name
carrier.contact_personsArray of ObjectsCar­ri­er con­tact per­sons
carrier.contact_persons.channelsArray of StringsChan­nels to con­tact
carrier.contact_persons.employeeObjectCon­tact per­son details
carrier.contact_persons.employee.account_idInt771476Con­tact per­son inter­nal Id
carrier.contact_persons.employee.emailString“mmiller@ekotranporter.comCon­tact per­son email
carrier.contact_persons.employee.family_nameStringMillerCon­tact per­son fam­i­ly name
carrier.contact_persons.employee.given_nameStringMichaelCon­tact per­son giv­en name
carrier.contact_persons.employee.idInt999446Con­tact per­son Id
carrier.contact_persons.employee.telephoneString“(0049) 456453234”Con­tact per­son tele­phone
carrier.contact_persons.employee.trans_idString“1012334–1”Con­tact per­son Tran­sId
carrier.contact_persons.idString“11e9a0dc-1782–4ce1-8baa-1cf353a2073e”Con­tact per­son UUID
carrier.contact_persons.reported_byObject
carrier.contact_persons.reported_by.companyObject
carrier.contact_persons.reported_by.company.idInt
carrier.cooperation_statusString
deac­ti­va­tionsArray
idString“23ba734b-5b1f-4be1-9b82-a91e4df­f6551”Con­tract id
last_modification_dateString“2026–04-07T13:10:55+00:00”Con­tract mod­i­fi­ca­tion date
order_termsObjectOrder terms
order_terms.additional_termsString“addi­tion­al terms text”Addi­tion­al terms for con­tract
order_terms.automatic_order_sendingBooleanTrueAuto­mat­ic cre­ation of a con­firmed order when the car­ri­er accepts the freight
order_terms.autoresponderObject
order_terms.autoresponder.enabledBoolean
order_terms.autoresponder.timeObject
order_terms.autoresponder.time.unit_codeString
order_terms.autoresponder.time.user_unit_codeString
order_terms.autoresponder.time.valueInt
order_terms.insuranceObjectInsur­ance require­ments
order_terms.insurance.loadObjectVal­ue of loads
order_terms.insurance.load.currencyString“eur”Loads val­ue cur­ren­cy
order_terms.insurance.load.valueInt12000Val­ue of loads
order_terms.insurance.third_partyObjectRequired insur­ance val­ue
order_terms.insurance.third_party.currencyString“eur”Insur­ance val­ue cur­ren­cy
order_terms.insurance.third_party.valueInt6000Insur­ance val­ue
order_terms.monitoringObjectGPS mon­i­tor­ing
order_terms.monitoring.requiredBooleanTrueIf True, required GPS mon­i­tor­ing if tech­ni­cal­ly pos­si­ble
order_terms.payment_periodObjectPay­ment peri­od
order_terms.payment_period.valueInt12Num­ber of days
order_terms.silent_confirmationObject
order_terms.silent_confirmation.enabledBoolean
order_terms.silent_confirmation.timeObject
order_terms.silent_confirmation.time.unit_codeString
order_terms.silent_confirmation.time.user_unit_codeString
order_terms.silent_confirmation.time.valueInt
percentage_shareInt
peri­odObjectCoop­er­a­tion peri­od
period.fromString“2026–04-07T15:30:00+02:00”Start of coop­er­a­tion
period.toStringnullEnd of coop­er­a­tion. Pos­si­ble val­ue null for indef­i­nite­ly.
planned_shipmentsObjectPlanned ship­ments in the con­tract
planned_shipments.periodsArray of ObjectsPeri­ods list
planned_shipments.periods.fromString“2027–01-01T00:00:00.000Z”Start of peri­od
planned_shipments.periods.toString“2027–12-31T23:59:59.000Z”End of peri­od
planned_shipments.periods.valueInt50Num­ber of ship­ments in peri­od
planned_shipments.typeString“expect­ed”Type of ship­ments. Avail­able val­ues: required, expected, no_more_than.
planned_shipments.unitString“km”Unit of ship­ments. Avail­able val­ues: shipment, ton, km.
planned_shipments.valueInt500Total num­ber of ship­ments in the con­tract
posi­tionInt1Con­tract posi­tion in the route
pric­ingObjectPric­ing for con­tract
pricing.fuel_base_priceObjectFuel base price. Object occurs in all pric­ing types except pallets.
pricing.fuel_base_price.currencyString“eur”Fuel base price cur­ren­cy
pricing.fuel_base_price.valueFloatnullFuel base price val­ue
pricing.negotiableBooleanTrueEnabling price nego­ti­a­tion with car­ri­er
pricing.priceObjectPrice. Object occurs in all pric­ing types except pallets.
pricing.price.currencyString“eur”Price cur­ren­cy for nego­ta­tion
pricing.price.valueFloat2344Price val­ue.
pricing.price_listArray of ObjectsPrice list. Object occurs only for pric­ing type pallets
pricing.price_list.fuel_base_priceObject
Fuel base price.
pricing.price_list.fuel_base_price.currencyString“eur”Fuel base price cur­ren­cy
pricing.price_list.fuel_base_price.valueFloatnullFuel base price val­ue
pricing.price_list.rangeObjectRange of pal­lets for nego­ti­a­tion
pricing.price_list.range.fromInt1Min val­ue of pal­lets
pricing.price_list.range.toInt6Max val­ue of pal­lets
pricing.price_list.priceObjectPrice
pricing.price_list.price.currencyString“eur”Price cur­ren­cy
pricing.price_list.price.valueFloat2300Price val­ue
pricing.settlement_basisString“distance_declared_in_order_terms”Sur­charge basis. Required in pric­ing types: “km”, “ton”.
Avail­able val­ues for “km”: distance_declared_in_order_terms, distance_declared_by_carrier, distance_from_gps
Avail­able val­ues for “ton”: loading, unloading
pricing.typeString“no_rate”Type of pric­ing. Avail­able val­ues: route, km, ton, pallets, linear, no_rate.
The no_rate val­ue appears in flex­i­ble con­tracts, the remain­ing val­ues ​​appear in fixed con­tracts.
reference_numberString“Kon­trakt 23/2”Exter­nal ref­er­ence num­ber
routeObjectDef­i­n­i­tion of the route to which the con­tract is assigned.
Def­i­n­i­tion of route object is described in Get route details
ship­perObjectShip­per assigned to the con­tract
shipper.companyObjectShip­per com­pa­ny details
shipper.company.idInt9345454Ship­per com­pa­ny Id
shipper.company.nameString“Man­u­fac­ture SA”Ship­per com­pa­ny name
shipper.contact_personsArray of ObjectsShip­per con­tact per­sons
shipper.contact_persons.channelsArray of StringsCon­tact chan­nels
shipper.contact_persons.employeeObjectCon­tact per­son details
shipper.contact_persons.employee.account_idIntCon­tact per­son inter­nal Id
shipper.contact_persons.employee.emailStringCon­tact per­son email
shipper.contact_persons.employee.family_nameStringCon­tact per­son fam­i­ly name
shipper.contact_persons.employee.given_nameStringCon­tact per­son giv­en name
shipper.contact_persons.employee.idIntCon­tact per­son Id
shipper.contact_persons.employee.telephoneStringCon­tact per­son tele­phone
shipper.contact_persons.employee.trans_idStringCon­tact per­son Tran­sId
shipper.contact_persons.reported_byObjectCon­tact per­son UUID
shipper.contact_persons.reported_by.companyObject
shipper.contact_persons.reported_by.company.idInt
sta­tusString“accept­ed”Con­tract sta­tus.
Avail­able val­ues: accept­ed, waiting_for_acceptance, reg­is­tered
sur­chargesArray of ObjectsSur­charges
surcharges.currencyString“eur”Sur­charges cur­ren­cy
surcharges.data
surcharges.descriptionString“addi­tion­al text”Sur­charge descrip­tion
surcharges.idString“a1eb­b289-e665-4b30-a580-d263552e­f88c”Sur­charge Id
surcharges.is_activeBooleanTrueSur­charge acti­va­tion sta­tus
surcharges.is_globalBooleanFalseIf True, sur­charge is from tem­plate
surcharges.kindString“grid”Kind of sur­charge.
Avail­able val­ues: grid, linear, value
surcharges.schedulesArray of ObjectsSur­charge sched­ules
surcharges.schedules.dataObjectSur­charge data
surcharges.schedules.data.matrixArray of ObjectsData object for additional_stop, baf, pallets_exchange sur­charge types.
surcharges.schedules.data.matrix.unitString“per­cent­age”Unit of data. Avail­able val­ues: percentage, value.
surcharges.schedules.data.matrix.valueInt5Data val­ue
surcharges.schedules.data.currencyString“eur”Cur­ren­cy for data
surcharges.schedules.data.unitString“per­cent­age”Unit of data for week_days sur­charge type. Avail­able val­ues: percentage, value.
surcharges.schedules.data.week_daysArray of ObjectsData object for week_days sur­charge types.
surcharges.schedules.data.week_days.idString“1_monday”Week day Id
surcharges.schedules.data.week_days.operationsArray of ObjectsList of oper­a­tions
surcharges.schedules.data.week_days.operations.typeString“load­ing”Oper­a­tion type. Avail­able val­ues: loading, unloading
surcharges.schedules.data.week_days.operations.valueInt5Data Val­ue
surcharges.schedules.timespanObjectSur­charge sched­ule peri­od
surcharges.schedules.timespan.fromString“2026–04-30T15:30:00+02:00”Start of sched­ule
surcharges.schedules.timespan.toString“2026–05-28T02:00:00+02:00”End of sched­ule
surcharges.typeString“baf”Sur­charge type.
Avail­able val­ues: additional_stop, baf, pallets_exchange, week_day
typeString“fixed”Con­tract type. Avail­able val­ues: fixed, flexible.
updated_atString“2026–04-07T13:10:55+00:00”Con­tract mod­i­fi­ca­tion date
_metaObject
_meta.has_been_sent_to_carrierBooleanFalse
_meta.is_copyBooleanTrue
_meta.is_parentBooleanFalse
_statsObject
_stats.base_contractObject
_stats.base_contract.acceptedInt
_stats.base_contract.activeInt
_stats.base_contract.finishedInt
_stats.base_contract.refusedInt
_stats.base_contract.registeredInt
_stats.base_contract.waiting_for_acceptanceint
_stats.base_contract.waiting_for_carrier_offerInt
_stats.base_contract.waiting_for_initial_carrier_offerInt
_stats.base_contract.waiting_for_shipper_offerInt
_stats.offersObject
_stats.offers.acceptance_rate
_stats.offers.accepted
_stats.offers.total
_stats.transportsObject
_stats.transports.average_per_month
_stats.transports.awaiting
_stats.transports.realized
Response Body
{
    "id": "967dac7c-8812-41d9-8082-60ef1736d06c",
    "base_contract_id": "967dac7c-8812-41d9-8082-60ef1736d06c",
    "type": "fixed",
    "position": null,
    "carrier": {
        "company": {
            "id": 568099,
            "name": "Cruise TEST"
        },
        "contact_persons": [
            {
                "id": "3cf5c7f3-2cf8-4731-a358-9969c9acd218",
                "employee": {
                    "id": 950380,
                    "account_id": 719545,
                    "given_name": "Mateusz",
                    "family_name": "Tambur",
                    "trans_id": "568099-1",
                    "email": "mtambur@mail.com",
                    "telephone": null
                },
                "channels": [
                    "email",
                    "push",
                    "web-push",
                    "messenger"
                ],
                "reported_by": {
                    "company": {
                        "id": 1007374
                    }
                }
            }
        ],
        "cooperation_status": "active"
    },
    "deactivations": [],
    "order_terms": {
        "monitoring": {
            "required": false
        },
        "additional_terms": null,
        "insurance": {
            "load": null,
            "third_party": null
        },
        "automatic_order_sending": false,
        "payment_period": {
            "value": 13
        },
        "silent_confirmation": {
            "enabled": false,
            "time": null
        },
        "autoresponder": {
            "enabled": false,
            "time": null
        }
    },
    "period": {
        "from": "2021-07-22T00:00:00+00:00",
        "to": "2021-07-31T23:59:59+00:00"
    },
    "percentage_share": 0,
    "planned_shipments": {
        "periods": [],
        "type": null,
        "unit": null,
        "value": null
    },
    "pricing": {
        "negotiable": false,
        "type": "pallets",
        "price_list": [
            {
                "range": {
                    "from": 1,
                    "to": 5
                },
                "price": {
                    "value": 13,
                    "currency": "pln"
                },
                "fuel_base_price": {
                    "value": null,
                    "currency": "pln"
                }
            },
            {
                "range": {
                    "from": 6,
                    "to": 6
                },
                "price": {
                    "value": 14,
                    "currency": "pln"
                },
                "fuel_base_price": {
                    "value": null,
                    "currency": "pln"
                }
            }
        ]
    },
    "reference_number": "cennik palet",
    "refusal_reason": "",
    "route": {
        "id": "3b695c9e-2431-446a-8643-406d668afc06",
        "unique_key": null,
        "name": "cennik-paletowy",
        "publication_scenario": null,
        "spots": [
            {
                "id": "0ac060b1-e651-40c2-a6d9-3990bcab2583",
                "name": null,
                "type": "loading",
                "place": {
                    "address": {
                        "locality": "Warszawa",
                        "postal_code": "00-002",
                        "country": "pl",
                        "street": null,
                        "number": null,
                        "location_id": 1958900,
                        "detailed_location_id": null,
                        "foreign_id": null,
                        "radius": 200
                    },
                    "coordinates": {
                        "latitude": 52.235735239,
                        "longitude": 21.010148013
                    }
                }
            },
            {
                "id": "d46311a2-53c8-4dbd-823a-f9ffdf813193",
                "name": null,
                "type": "unloading",
                "place": {
                    "address": {
                        "locality": "Warszawa",
                        "postal_code": "00-005",
                        "country": "pl",
                        "street": null,
                        "number": null,
                        "location_id": 1958904,
                        "detailed_location_id": null,
                        "foreign_id": null,
                        "radius": 200
                    },
                    "coordinates": {
                        "latitude": 52.236256414,
                        "longitude": 21.008277704
                    }
                }
            }
        ],
        "distance": {
            "declared": null,
            "calculated": {
                "value": 0,
                "unit_code": "km"
            }
        },
        "suggested_calculated_route_id": null,
        "distance_match": {
            "min": null,
            "max": null
        },
        "is_roundtrip": false,
        "requirements": {
            "required_truck_bodies": [],
            "required_adr_classes": [],
            "required_ways_of_loading": [],
            "additional_requirements": [],
            "shipping_remarks": null,
            "freight_type": null,
            "vehicle_size": "any_size",
            "width": null,
            "height": null,
            "length": null,
            "volume": null,
            "capacity": {
                "min": null,
                "max": {
                    "value": 24,
                    "unit_code": "t"
                }
            },
            "exemption_from_adr": false
        },
        "loads": [
            {
                "name": null,
                "type_of_load": "palette",
                "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": 180,
        "_stats": {
            "contracts": {
                "fixed": 0,
                "flexible": 0
            },
            "transports": {
                "realized": {
                    "average_price": null,
                    "count": 0
                },
                "awaiting": {
                    "median_price": null,
                    "count": null
                },
                "cheapest_carrier_offer": null
            }
        }
    },
    "shipper": {
        "company": {
            "id": 1007374,
            "name": "Spedycja IIT"
        },
        "contact_persons": [
            {
                "id": "a5f87239-e405-46ef-8521-a8517d708521",
                "employee": {
                    "id": 993850,
                    "account_id": 765363,
                    "given_name": "Jan",
                    "family_name": "Nowak",
                    "trans_id": "1007374-6",
                    "email": "jnowak@mail.com",
                    "telephone": null
                },
                "channels": [
                    "email",
                    "push",
                    "web-push",
                    "messenger"
                ],
                "reported_by": {
                    "company": {
                        "id": 1007374
                    }
                }
            }
        ]
    },
    "status": "finished",
    "_stats": {
        "transports": {
            "realized": null,
            "average_per_month": null,
            "awaiting": null
        },
        "offers": {
            "accepted": null,
            "total": null,
            "acceptance_rate": null
        },
        "base_contract": {
            "registered": 0,
            "waiting_for_acceptance": 0,
            "waiting_for_initial_carrier_offer": 0,
            "waiting_for_shipper_offer": 0,
            "waiting_for_carrier_offer": 0,
            "refused": 0,
            "accepted": 0,
            "active": 0,
            "finished": 1
        }
    },
    "_meta": {
        "is_copy": false,
        "is_parent": false,
        "has_been_sent_to_carrier": true
    },
    "updated_at": "2026-03-23T15:45:16+00:00",
    "last_modification_date": "2026-03-23T15:45:16+00:00",
    "surcharges": []
}

Client 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

Route does not exists or no access

{
    "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html",
    "title": "Not Found",
    "status": 404,
    "detail": "Contract with ID: a67dac7c-8812-41d9-8082-60ef1736d06c not found!"
}