Receiving data from e4Cars
Receiving Trip from e4Cars
As a carrier, you have the ability to receive the trips assigned to you directly from e4Cars.
This subscription is a real-time feed that pushes trips after they are assigned to you.
With this subscription mode you will receive a message containing a trip with all it's transport operations.
General
Description
Subscribing to the logistic event "Assignment of a trip to a carrier" will trigger an API call to your domain.
How can I receive transport orders?
Via API call: Trips are sent to the REST API using /POST or /PUT methods. You need to provide the API endpoint to e4Cars.
AUTHENTICATION: e4Cars supports 2 types of authentication methods:
- API KEY:
- Authentication in the header parameter using a static API key: you need to provide e4Cars with the parameter name and its value.
- Authentication using a static API key in QUERY Params: you need to provide e4Cars with the parameter name and its value.
- Basic authentication: you need to provide e4Cars with the username and password:
Authorization: Basic <Base64(username:password)>
METHOD: e4Cars supports the following HTTP methods for pushing orders:
- /POST
- /PUT
PARAMS: e4Cars will be able to handle the following parameters during the call if needed:
- PATH Params
- QUERY Params
REQUEST parameters
- body (JSON Object, required): It contains by default the standard E4Cars JSON object: OutgoingTrip.
OutgoingTrip schema
export interface OutgoingTrip {
"header": {
"message_date": string,
"message_no": string,
"app": string
},
"outgoing_event": {
"kind": "trip",
"movement_type": string,
"issuer": {
"origin_software": string,
},
"receiver": {
"provider": {
"code": string,
"account_code": string,
"name": string,
"logistics_company": {
"code": string,
"name": string,
}
}
},
"event": {
"event_no": string,
"family": string,
"type": string,
"origin_software": string,
"real_date": {
"date": string,
"utc_date": string,
},
"creation_datetime_utc": string,
"comments": string[],
"site": MemberRole,
},
"trip": {
"trip_no": string,
"customer_trip_no": string,
"status": string,
"vehicles_number": number,
"sales": {
"currency": string,
"amount": string
},
"means": {
"assignment_status": string,
"mode": string,
"kind": string,
},
"pickup": {
"target_date": {
"date": string,
"utc_date": string
},
member_role : MemberRole
},
"delivery": {
"target_date": {
"date": string,
"utc_date": string
},
member_role : MemberRole
},
"operations": [
{
"operation_no": string,
"status": string,
"transport": {
"nature": string,
"manifest_no": string,
"pickup": {
"target_date": {
"date": string,
"utc_date": string
},
member_role : MemberRole
},
"delivery": {
"target_date": {
"date": string,
"utc_date": string
},
member_role : MemberRole
},
},
"vehicle_logistics_company": {
"vehicle_logistics_company_no": string,
"vin": string,
"license_plate": string,
"simplified_license_plate": string,
"vehicle": {
"make": string,
"model": string,
"shape": string,
"color": string,
"engine": string,
"gearbox": string,
"energy_type": string,
"features": string,
"seats": string,
"description": string,
"vehicle_attributes": {
"mileage": {
"value": number,
"date": {
"date": string,
"utc_date": string
}
},
"first_registration": string,
}
}
},
"order": {
"order_no": string,
},
"order_task": {
"order_task_no": string,
},
"executor_url": string,
"manager_url": string
}
],
"executor_url": string,
"manager_url": string
}
}
}
export interface MemberRole {
name: string,
check_private: string,
place_name: string,
zip: string,
city: string,
country_code: string,
platform: {
code: string
},
contact: {
name: string,
phone: string,
email: string
},
instructions: string
}
Example of OutgoingTrip Body
{
"header": {
"message_date": "2025-03-13T15:20:50.845Z",
"message_no": "TO-CEV-20250313-16161",
"app": "3pl"
},
"outgoing_event": {
"kind": "trip",
"movement_type": "create",
"issuer": {
"origin_software": "E4_3PL"
},
"receiver": {
"provider": {
"code": "CEVA",
"account_code": "CEVA",
"name": "CEVA",
"logistics_company": {
"code": "CEV",
"name": "CEVA"
}
}
},
"event": {
"event_no": "E-CEV-20250313-79034",
"family": "operation_planification",
"type": "add_to_trip",
"origin_software": "E4_4PL",
"real_date": {
"date": "2025-03-13T16:20:50",
"utc_date": "2025-03-13T15:20:50.718Z"
},
"creation_datetime_utc": "2025-03-13T15:20:50.724Z",
"comments": [],
"site": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"check_private": false,
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
}
}
},
"trip": {
"trip_no": "TP-CEV-20250313-00674",
"customer_trip_no": "VOY016",
"status": "forecast",
"vehicles_number": 3,
"means": {
"assignment_status": "no_resource",
"mode": "road",
"kind": "truck"
},
"pickup": {
"member_role": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"check_private": false,
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
}
},
"target_date": {
"date": "2025-03-05",
"utc_date": "2025-03-04T23:00:00.000Z"
},
"real_date": null,
"planned_date": {
"date": "2025-03-11T19:06:00",
"utc_date": "2025-03-11T18:06:00.000Z"
}
},
"delivery": {
"member_role": {
"zip": "75003",
"city": "Paris",
"country_code": "FR",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.355765,
48.868276
]
},
"check_private": true,
"name": "Sonalie Taconet",
"place_name": "3 Impasse De La Planchette, 75003 Paris, France",
"display_place_name": "Chez e4Cars - Cylao - LevelSys",
"contact": {
"name": "Sonalie Taconet",
"email": "sonalie.taconet@e4cars.com",
"phone": "+33 7 61 26 79 89",
"language": "fr"
},
"platform": {
"code": null,
"name": null
}
},
"target_date": {
"date": "2025-03-12T00:00:00",
"utc_date": "2025-03-11T23:00:00.000Z"
}
},
"operations": [
{
"operation_no": "OP-CEV-20250313-71498",
"status": "forecast",
"transport": {
"nature": "delivery_to_customer",
"pickup": {
"target_date": {
"date": "2025-03-05",
"utc_date": "2025-03-04T23:00:00Z"
},
"member_role": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
},
"check_private": false
},
"documents": []
},
"delivery": {
"target_date": {
"date": "2025-03-12T00:00:00",
"utc_date": "2025-03-11T23:00:00Z"
},
"member_role": {
"zip": "75003",
"city": "Paris",
"country_code": "FR",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.355,
48.868
]
},
"private_data_id": "67d2f7c8c7abae478f9570a6",
"check_private": true
},
"documents": []
},
"manifest_no": "M-CEV-20250313-00536"
},
"vehicle_logistics_company": {
"vehicle_logistics_company_no": "VLC-CEV-20250313-11740",
"vin": "DSTFFAFL5FN021004",
"license_plate": null,
"simplified_license_plate": null,
"vehicle": {
"make": "CITROEN",
"model": "C4"
}
},
"order": {
"order_no": "OR-VOL-20250305-02382"
},
"order_task": {
"order_task_no": "OT-VOL-20250305-02504"
},
"executor_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdjYWM3YWJhZTQ3OGY5NTcxMDkiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE0OTgiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJTZXJ2aWNlRXhlY3V0b3IiXSwiaWF0IjoxNzQxODc5MjUwLCJleHAiOjE3NzM0MzY4NTB9.XtQ7BE2771v-0we_lZ1h4_rTQGVyRqPSD5EezpyZw6A",
"manager_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdjYWM3YWJhZTQ3OGY5NTcxMDkiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE0OTgiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJMb2dpc3RpY3NDb21wYW55TWFuYWdlciJdLCJpYXQiOjE3NDE4NzkyNTAsImV4cCI6MTc3MzQzNjg1MH0.ClUj8_1FHMmIuEZRXhnfKHOadw0jBYfQzEv3QClsMR0"
},
{
"operation_no": "OP-CEV-20250313-71499",
"status": "forecast",
"transport": {
"nature": "delivery_to_customer",
"pickup": {
"target_date": {
"date": "2025-03-05",
"utc_date": "2025-03-04T23:00:00Z"
},
"member_role": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
},
"check_private": false
},
"documents": []
},
"delivery": {
"target_date": {
"date": "2025-03-12T00:00:00",
"utc_date": "2025-03-11T23:00:00Z"
},
"member_role": {
"zip": "75003",
"city": "Paris",
"country_code": "FR",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.355,
48.868
]
},
"private_data_id": "67d2f7cfc7abae478f957342",
"check_private": true
},
"documents": []
},
"manifest_no": "M-CEV-20250313-00536"
},
"vehicle_logistics_company": {
"vehicle_logistics_company_no": "VLC-CEV-20250313-11741",
"vin": "DSTFFAFL5FN021005",
"license_plate": null,
"simplified_license_plate": null,
"vehicle": {
"make": "CITROEN",
"model": "C5 AIRCROSS"
}
},
"order": {
"order_no": "OR-VOL-20250305-02383"
},
"order_task": {
"order_task_no": "OT-VOL-20250305-02505"
},
"executor_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdkMGM3YWJhZTQ3OGY5NTczNzAiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE0OTkiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJTZXJ2aWNlRXhlY3V0b3IiXSwiaWF0IjoxNzQxODc5MjUwLCJleHAiOjE3NzM0MzY4NTB9.uPRUszpOlmG7agi_u3f-ZUCrvgiYb3VcoScJGa0-xtI",
"manager_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdkMGM3YWJhZTQ3OGY5NTczNzAiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE0OTkiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJMb2dpc3RpY3NDb21wYW55TWFuYWdlciJdLCJpYXQiOjE3NDE4NzkyNTAsImV4cCI6MTc3MzQzNjg1MH0.J6_97N5Jhmi6AGTWkSkeC_MueT92wIZMDAQ11utT7VE"
},
{
"operation_no": "OP-CEV-20250313-71500",
"status": "forecast",
"transport": {
"nature": "delivery_to_customer",
"pickup": {
"target_date": {
"date": "2025-03-05",
"utc_date": "2025-03-04T23:00:00Z"
},
"member_role": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
},
"check_private": false
},
"documents": []
},
"delivery": {
"target_date": {
"date": "2025-03-12T00:00:00",
"utc_date": "2025-03-11T23:00:00Z"
},
"member_role": {
"zip": "75003",
"city": "Paris",
"country_code": "FR",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.355,
48.868
]
},
"private_data_id": "67d2f7ccc7abae478f9571f1",
"check_private": true
},
"documents": []
},
"manifest_no": "M-CEV-20250313-00536"
},
"vehicle_logistics_company": {
"vehicle_logistics_company_no": "VLC-CEV-20250313-11742",
"vin": "DSTFFAFL5FN021006",
"license_plate": null,
"simplified_license_plate": null,
"vehicle": {
"make": "CITROEN",
"model": "C3"
}
},
"order": {
"order_no": "OR-VOL-20250305-02384"
},
"order_task": {
"order_task_no": "OT-VOL-20250305-02506"
},
"executor_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdkMmM3YWJhZTQ3OGY5NTc0NTIiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE1MDAiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJTZXJ2aWNlRXhlY3V0b3IiXSwiaWF0IjoxNzQxODc5MjUwLCJleHAiOjE3NzM0MzY4NTB9.bfqgLeet9znpLlEl3NcbF316U4HQICPO-B6nWyazw6Y",
"manager_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdkMmM3YWJhZTQ3OGY5NTc0NTIiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE1MDAiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJMb2dpc3RpY3NDb21wYW55TWFuYWdlciJdLCJpYXQiOjE3NDE4NzkyNTAsImV4cCI6MTc3MzQzNjg1MH0.qr_Znh3rjgoeGzp1oK3ePao7IwiEafB4A5q_FBAXgK0"
}
],
"executor_url": "https://app.dev.e4cars.io/operator/tracking-trip?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0cmlwX2lkIjoiNjdkMmY3Y2FjN2FiYWU0NzhmOTU3MTE3IiwidHJpcF9ubyI6IlRQLUNFVi0yMDI1MDMxMy0wMDY3NCIsImxvZ2lzdGljc19jb21wYW55X2NvZGUiOiJDRVYiLCJyb2xlcyI6WyJTZXJ2aWNlRXhlY3V0b3IiXSwiaWF0IjoxNzQxODc5MjUwLCJleHAiOjE3NzM0MzY4NTB9.1MIRNBvrsVaEZ2bJsbRa2TUGWiLzLqaNnUpOIk-Lvgs",
"manager_url": "https://app.dev.e4cars.io/operator/tracking-trip?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0cmlwX2lkIjoiNjdkMmY3Y2FjN2FiYWU0NzhmOTU3MTE3IiwidHJpcF9ubyI6IlRQLUNFVi0yMDI1MDMxMy0wMDY3NCIsImxvZ2lzdGljc19jb21wYW55X2NvZGUiOiJDRVYiLCJyb2xlcyI6WyJMb2dpc3RpY3NDb21wYW55TWFuYWdlciJdLCJpYXQiOjE3NDE4NzkyNTAsImV4cCI6MTc3MzQzNjg1MH0.my-TAgd9Ywvpkckw5y-L3Pg73KGvnohLpn4lCxvZ4ss"
}
}
}
Custom Translator for Outgoing Flows
The object contained in body can be an ad hoc object tailored to the specific needs of an existing API.
In such cases, as with incoming flows to e4Cars, you should contact e4Cars integration teams (integration@e4cars.com) to provide them with the body you wish to receive in the calls.
They will create a custom translator that will be used when transmitting orders to your APIs from the OutgoingTrip outgoing information.
Date value
All date (IN or OUT) are Locale
Below is the list of all valid outgoing date formats:
- YYYY-MM-DDTHH24:MI:SS
- YYYY-MM-DDTHH24:MI:SSZ
- YYYY-MM-DDTHH24:MI
- YYYY-MM-DDTHH24:MI:SS.ms
- YYYY-MM-DDTHH24:MI:SS.msZ
In the case of the standard flow, here is an example of the body structure:
Example of JSON Body
{
"header": {
"message_date": "2025-03-13T15:20:50.845Z",
"message_no": "TO-CEV-20250313-16161",
"app": "3pl"
},
"outgoing_event": {
"kind": "trip",
"movement_type": "create",
"issuer": {
"origin_software": "E4_3PL"
},
"receiver": {
"provider": {
"code": "CEVA",
"account_code": "CEVA",
"name": "CEVA",
"logistics_company": {
"code": "CEV",
"name": "CEVA"
}
}
},
"event": {
"event_no": "E-CEV-20250313-79034",
"family": "operation_planification",
"type": "add_to_trip",
"origin_software": "E4_4PL",
"real_date": {
"date": "2025-03-13T16:20:50",
"utc_date": "2025-03-13T15:20:50.718Z"
},
"creation_datetime_utc": "2025-03-13T15:20:50.724Z",
"comments": [],
"site": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"check_private": false,
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
}
}
},
"trip": {
"trip_no": "TP-CEV-20250313-00674",
"customer_trip_no": "VOY016",
"status": "forecast",
"vehicles_number": 3,
"means": {
"assignment_status": "no_resource",
"mode": "road",
"kind": "truck"
},
"pickup": {
"member_role": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"check_private": false,
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
}
},
"target_date": {
"date": "2025-03-05",
"utc_date": "2025-03-04T23:00:00.000Z"
},
"real_date": null,
"planned_date": {
"date": "2025-03-11T19:06:00",
"utc_date": "2025-03-11T18:06:00.000Z"
}
},
"delivery": {
"member_role": {
"zip": "75003",
"city": "Paris",
"country_code": "FR",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.355765,
48.868276
]
},
"check_private": true,
"name": "Sonalie Taconet",
"place_name": "3 Impasse De La Planchette, 75003 Paris, France",
"display_place_name": "Chez e4Cars - Cylao - LevelSys",
"contact": {
"name": "Sonalie Taconet",
"email": "sonalie.taconet@e4cars.com",
"phone": "+33 7 61 26 79 89",
"language": "fr"
},
"platform": {
"code": null,
"name": null
}
},
"target_date": {
"date": "2025-03-12T00:00:00",
"utc_date": "2025-03-11T23:00:00.000Z"
}
},
"operations": [
{
"operation_no": "OP-CEV-20250313-71498",
"status": "forecast",
"transport": {
"nature": "delivery_to_customer",
"pickup": {
"target_date": {
"date": "2025-03-05",
"utc_date": "2025-03-04T23:00:00Z"
},
"member_role": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
},
"check_private": false
},
"documents": []
},
"delivery": {
"target_date": {
"date": "2025-03-12T00:00:00",
"utc_date": "2025-03-11T23:00:00Z"
},
"member_role": {
"zip": "75003",
"city": "Paris",
"country_code": "FR",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.355,
48.868
]
},
"private_data_id": "67d2f7c8c7abae478f9570a6",
"check_private": true
},
"documents": []
},
"manifest_no": "M-CEV-20250313-00536"
},
"vehicle_logistics_company": {
"vehicle_logistics_company_no": "VLC-CEV-20250313-11740",
"vin": "DSTFFAFL5FN021004",
"license_plate": null,
"simplified_license_plate": null,
"vehicle": {
"make": "CITROEN",
"model": "C4"
}
},
"order": {
"order_no": "OR-VOL-20250305-02382"
},
"order_task": {
"order_task_no": "OT-VOL-20250305-02504"
},
"executor_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdjYWM3YWJhZTQ3OGY5NTcxMDkiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE0OTgiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJTZXJ2aWNlRXhlY3V0b3IiXSwiaWF0IjoxNzQxODc5MjUwLCJleHAiOjE3NzM0MzY4NTB9.XtQ7BE2771v-0we_lZ1h4_rTQGVyRqPSD5EezpyZw6A",
"manager_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdjYWM3YWJhZTQ3OGY5NTcxMDkiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE0OTgiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJMb2dpc3RpY3NDb21wYW55TWFuYWdlciJdLCJpYXQiOjE3NDE4NzkyNTAsImV4cCI6MTc3MzQzNjg1MH0.ClUj8_1FHMmIuEZRXhnfKHOadw0jBYfQzEv3QClsMR0"
},
{
"operation_no": "OP-CEV-20250313-71499",
"status": "forecast",
"transport": {
"nature": "delivery_to_customer",
"pickup": {
"target_date": {
"date": "2025-03-05",
"utc_date": "2025-03-04T23:00:00Z"
},
"member_role": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
},
"check_private": false
},
"documents": []
},
"delivery": {
"target_date": {
"date": "2025-03-12T00:00:00",
"utc_date": "2025-03-11T23:00:00Z"
},
"member_role": {
"zip": "75003",
"city": "Paris",
"country_code": "FR",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.355,
48.868
]
},
"private_data_id": "67d2f7cfc7abae478f957342",
"check_private": true
},
"documents": []
},
"manifest_no": "M-CEV-20250313-00536"
},
"vehicle_logistics_company": {
"vehicle_logistics_company_no": "VLC-CEV-20250313-11741",
"vin": "DSTFFAFL5FN021005",
"license_plate": null,
"simplified_license_plate": null,
"vehicle": {
"make": "CITROEN",
"model": "C5 AIRCROSS"
}
},
"order": {
"order_no": "OR-VOL-20250305-02383"
},
"order_task": {
"order_task_no": "OT-VOL-20250305-02505"
},
"executor_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdkMGM3YWJhZTQ3OGY5NTczNzAiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE0OTkiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJTZXJ2aWNlRXhlY3V0b3IiXSwiaWF0IjoxNzQxODc5MjUwLCJleHAiOjE3NzM0MzY4NTB9.uPRUszpOlmG7agi_u3f-ZUCrvgiYb3VcoScJGa0-xtI",
"manager_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdkMGM3YWJhZTQ3OGY5NTczNzAiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE0OTkiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJMb2dpc3RpY3NDb21wYW55TWFuYWdlciJdLCJpYXQiOjE3NDE4NzkyNTAsImV4cCI6MTc3MzQzNjg1MH0.J6_97N5Jhmi6AGTWkSkeC_MueT92wIZMDAQ11utT7VE"
},
{
"operation_no": "OP-CEV-20250313-71500",
"status": "forecast",
"transport": {
"nature": "delivery_to_customer",
"pickup": {
"target_date": {
"date": "2025-03-05",
"utc_date": "2025-03-04T23:00:00Z"
},
"member_role": {
"name": "Béligneux",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Nicolas Melisson",
"email": "ni.co@las.mel",
"phone": "+33 6 01 02 03 04",
"language": "fr"
},
"platform": {
"code": "BELIGNEUX",
"name": "Béligneux"
},
"check_private": false
},
"documents": []
},
"delivery": {
"target_date": {
"date": "2025-03-12T00:00:00",
"utc_date": "2025-03-11T23:00:00Z"
},
"member_role": {
"zip": "75003",
"city": "Paris",
"country_code": "FR",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.355,
48.868
]
},
"private_data_id": "67d2f7ccc7abae478f9571f1",
"check_private": true
},
"documents": []
},
"manifest_no": "M-CEV-20250313-00536"
},
"vehicle_logistics_company": {
"vehicle_logistics_company_no": "VLC-CEV-20250313-11742",
"vin": "DSTFFAFL5FN021006",
"license_plate": null,
"simplified_license_plate": null,
"vehicle": {
"make": "CITROEN",
"model": "C3"
}
},
"order": {
"order_no": "OR-VOL-20250305-02384"
},
"order_task": {
"order_task_no": "OT-VOL-20250305-02506"
},
"executor_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdkMmM3YWJhZTQ3OGY5NTc0NTIiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE1MDAiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJTZXJ2aWNlRXhlY3V0b3IiXSwiaWF0IjoxNzQxODc5MjUwLCJleHAiOjE3NzM0MzY4NTB9.bfqgLeet9znpLlEl3NcbF316U4HQICPO-B6nWyazw6Y",
"manager_url": "https://app.dev.e4cars.io/operator/tracking-operation?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvcGVyYXRpb25faWQiOiI2N2QyZjdkMmM3YWJhZTQ3OGY5NTc0NTIiLCJvcGVyYXRpb25fbm8iOiJPUC1DRVYtMjAyNTAzMTMtNzE1MDAiLCJsb2dpc3RpY3NfY29tcGFueV9jb2RlIjoiQ0VWIiwib3BlcmF0aW9uX2tpbmQiOiJ0cmFuc3BvcnQiLCJyb2xlcyI6WyJMb2dpc3RpY3NDb21wYW55TWFuYWdlciJdLCJpYXQiOjE3NDE4NzkyNTAsImV4cCI6MTc3MzQzNjg1MH0.qr_Znh3rjgoeGzp1oK3ePao7IwiEafB4A5q_FBAXgK0"
}
],
"executor_url": "https://app.dev.e4cars.io/operator/tracking-trip?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0cmlwX2lkIjoiNjdkMmY3Y2FjN2FiYWU0NzhmOTU3MTE3IiwidHJpcF9ubyI6IlRQLUNFVi0yMDI1MDMxMy0wMDY3NCIsImxvZ2lzdGljc19jb21wYW55X2NvZGUiOiJDRVYiLCJyb2xlcyI6WyJTZXJ2aWNlRXhlY3V0b3IiXSwiaWF0IjoxNzQxODc5MjUwLCJleHAiOjE3NzM0MzY4NTB9.1MIRNBvrsVaEZ2bJsbRa2TUGWiLzLqaNnUpOIk-Lvgs",
"manager_url": "https://app.dev.e4cars.io/operator/tracking-trip?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0cmlwX2lkIjoiNjdkMmY3Y2FjN2FiYWU0NzhmOTU3MTE3IiwidHJpcF9ubyI6IlRQLUNFVi0yMDI1MDMxMy0wMDY3NCIsImxvZ2lzdGljc19jb21wYW55X2NvZGUiOiJDRVYiLCJyb2xlcyI6WyJMb2dpc3RpY3NDb21wYW55TWFuYWdlciJdLCJpYXQiOjE3NDE4NzkyNTAsImV4cCI6MTc3MzQzNjg1MH0.my-TAgd9Ywvpkckw5y-L3Pg73KGvnohLpn4lCxvZ4ss"
}
}
}
| Code | Description | Example Response |
|---|---|---|
| 200 | Success, the flow was transmitted correctly. | { "status": "success", "message": "Incoming flow transmitted successfully." } |
| 401 | Unauthorized, missing or invalid authentication. | { "status": "error", "message": "Unauthorized. Please authenticate." } |
| 403 | Forbidden, insufficient permissions. | { "status": "error", "message": "Forbidden. You do not have the necessary permissions to execute this flow." } |
| 400 | Bad request, invalid body or parameters. | { "status": "error", "message": "Invalid request." } |
Receiving Transport Orders from e4Cars
As a carrier, you have the ability to receive the orders assigned to you directly from e4Cars.
This subscription is a real-time feed that pushes logistics operations one by one after they are assigned to you.
General
Description
Subscribing to the logistic event "Assignment of an order to a carrier" will trigger an API call to your domain.
How can I receive transport orders?
Via API call: Orders are sent to the REST API using /POST or /PUT methods. You need to provide the API endpoint to e4Cars.
AUTHENTICATION: e4Cars supports 2 types of authentication methods:
- API KEY:
- Authentication in the header parameter using a static API key: you need to provide e4Cars with the parameter name and its value.
- Authentication using a static API key in QUERY Params: you need to provide e4Cars with the parameter name and its value.
- Basic authentication: you need to provide e4Cars with the username and password:
Authorization: Basic <Base64(username:password)>
METHOD: e4Cars supports the following HTTP methods for pushing orders:
- /POST
- /PUT
PARAMS: e4Cars will be able to handle the following parameters during the call if needed:
- PATH Params
- QUERY Params
REQUEST parameters
- body (JSON Object, required): It contains by default the standard E4Cars JSON object: TransportOrder.
TransportOrder schema
interface transportOrderSchema {
header: {
message_date: string,
message_no: string,
app: string
},
outgoing_event: {
kind: string,
movement_type?: string,
issuer: {
origin_software: string
},
receiver: {
provider: {
code: string,
name?: string,
logistics_company: {
code: string,
name?: string
}
}
},
event: {
event_no: string,
family?: string,
type?: string,
origin_software: string,
real_date: {
date?: string,
utc_date: string
},
creation_datetime_utc: string,
comments: [],
site?: {
name?: string,
zip: string,
city: string,
country_code: string,
place_name: string,
display_place_name?: string,
timezone?: string,
geo_point?: {
type: string,
coordinates: number[]
},
contact?: {
name: string,
email: string,
phone: string,
language?: string
},
platform?: {
code: string,
codification?: string,
x_code?: string,
name?: string,
x_name?: string
}
}
},
vin: string,
license_plate?: string,
vehicle?: {
make: string,
model: string
},
account?: {
code: string,
name?: string
},
order?: {
order_no: string
},
operation: {
operation_no: string,
status: string,
transport: {
nature: string,
"sales": {
"currency": string,
"amount": string
},
trip: {
mode: string,
means: {
kind: string
},
trip_no: string,
account_trip_no: string,
customer_trip_no: string
},
pickup: {
name?: string,
zip: string,
city: string,
country_code: string,
place_name: string,
display_place_name?: string,
timezone?: string,
geo_point?: {
type: string,
coordinates: number[]
},
contact?: {
name: string,
email: string,
phone: string,
language?: string
},
platform?: {
code: string,
codification?: string,
x_code?: string,
name?: string,
x_name?: string
},
target_date?: {
date?: string,
utc_date: string
}
planned_date?: {
date?: string,
utc_date: string
}
real_date?: {
date?: string,
utc_date: string
}
},
delivery: {
name?: string,
zip: string,
city: string,
country_code: string,
place_name: string,
display_place_name?: string,
timezone?: string,
geo_point?: {
type: string,
coordinates: number[]
},
contact?: {
name: string,
email: string,
phone: string,
language?: string
},
platform?: {
code: string,
codification?: string,
x_code?: string,
name?: string,
x_name?: string
}
target_date?: {
date?: string,
utc_date: string
}
planned_date?: {
date?: string,
utc_date: string
}
real_date?: {
date?: string,
utc_date: string
}
}
}
}
}
}
Example of TransportOrder Body
{
"header": {
"message_date": "2024-12-30T11:30:08.639Z",
"message_no": "TO-CAP-20241230-00732",
"app": "3pl"
},
"outgoing_event": {
"kind": "transport",
"movement_type": "create",
"issuer": {
"origin_software": "E4_3PL"
},
"receiver": {
"provider": {
"code": "CAP",
"name": "CAPSA",
"logistics_company": {
"code": "CAP",
"name": "CAPSA"
}
}
},
"event": {
"event_no": "E-CAP-20241230-06589",
"family": "operation_planification",
"type": "add_to_trip",
"origin_software": "E4_4PL",
"real_date": {
"date": "2024-12-30T12:30:08",
"utc_date": "2024-12-30T11:30:08.507Z"
},
"creation_datetime_utc": "2024-12-30T11:30:08.518Z",
"comments": [],
"site": {
"name": "VITELLO",
"zip": "78400",
"city": "Chatou",
"country_code": "FR",
"place_name": "5 Boulevard De La République, 78400 Chatou, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.150509,
48.891915
]
},
"contact": {
"language": "fr"
},
"platform": {}
}
},
"vin": "STA207LY31REB3155",
"license_plate": "JA6F155",
"vehicle": {
"make": "RENAULT",
"model": "Captur"
},
"account": {
"code": "VOL",
"name": "VO Link"
},
"order": {
"order_no": "OR-VOL-20241118-00824"
},
"operation": {
"operation_no": "OP-CAP-20241230-01333",
"status": "forecast",
"transport": {
"nature": "customer_to_customer",
"sales": {
"currency": "EUR",
"amount": "400"
},
"trip": {
"mode": "road",
"means": {
"kind": "truck"
},
"sales": null,
"trip_no": "TP-CAP-20241230-00226",
"account_trip_no": "TP-VOL-20241118-00133",
"customer_trip_no": "VY0155-A"
},
"pickup": {
"name": "VITELLO",
"zip": "78400",
"city": "Chatou",
"country_code": "FR",
"place_name": "5 Boulevard De La République, 78400 Chatou, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.150509,
48.891915
]
},
"contact": {
"language": "fr"
},
"target_date": {
"date": "2024-11-18T19:28:34",
"utc_date": "2024-11-18T18:28:34.330Z"
}
},
"delivery": {
"name": "VO-link",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "ZA 2b - 150 Chemin Du Dérontet, 01360 Béligneux, France",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Valérie",
"email": "contact@e4cars.com",
"phone": "+33 1 00 00 00 00",
"language": "fr"
},
"instructions": "VO-link Beligneux, ZA des 2B",
"target_date": {
"date": "2024-11-25T19:28:34",
"utc_date": "2024-11-25T18:28:34.330Z"
}
}
}
}
}
}
Custom Translator for Outgoing Flows
The object contained in body can be an ad hoc object tailored to the specific needs of an existing API.
In such cases, as with incoming flows to e4Cars, you should contact e4Cars integration teams (integration@e4cars.com) to provide them with the body you wish to receive in the calls.
They will create a custom translator that will be used when transmitting orders to your APIs from the TransportOrder outgoing information.
Date value
All date (IN or OUT) are Locale
Below is the list of all valid outgoing date formats:
- YYYY-MM-DDTHH24:MI:SS
- YYYY-MM-DDTHH24:MI:SSZ
- YYYY-MM-DDTHH24:MI
- YYYY-MM-DDTHH24:MI:SS.ms
- YYYY-MM-DDTHH24:MI:SS.msZ
In the case of the standard flow, here is an example of the body structure:
Example of JSON Body
{
"header": {
"message_date": "2024-12-30T11:30:08.639Z",
"message_no": "TO-CAP-20241230-00732",
"app": "3pl"
},
"outgoing_event": {
"kind": "transport",
"movement_type": "create",
"issuer": {
"origin_software": "E4_3PL"
},
"receiver": {
"provider": {
"code": "CAP",
"name": "CAPSA",
"logistics_company": {
"code": "CAP",
"name": "CAPSA"
}
}
},
"event": {
"event_no": "E-CAP-20241230-06589",
"family": "operation_planification",
"type": "add_to_trip",
"origin_software": "E4_4PL",
"real_date": {
"date": "2024-12-30T12:30:08",
"utc_date": "2024-12-30T11:30:08.507Z"
},
"creation_datetime_utc": "2024-12-30T11:30:08.518Z",
"comments": [],
"site": {
"name": "VITELLO",
"zip": "78400",
"city": "Chatou",
"country_code": "FR",
"place_name": "5 Boulevard De La République, 78400 Chatou, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.150509,
48.891915
]
},
"contact": {
"language": "fr"
},
"platform": {}
}
},
"vin": "STA207LY31REB3155",
"license_plate": "JA6F155",
"vehicle": {
"make": "RENAULT",
"model": "Captur"
},
"account": {
"code": "VOL",
"name": "VO Link"
},
"order": {
"order_no": "OR-VOL-20241118-00824"
},
"operation": {
"operation_no": "OP-CAP-20241230-01333",
"status": "forecast",
"transport": {
"nature": "customer_to_customer",
"sales": {
"currency": "EUR",
"amount": "400"
},
"trip": {
"mode": "road",
"means": {
"kind": "truck"
},
"sales": null,
"trip_no": "TP-CAP-20241230-00226",
"account_trip_no": "TP-VOL-20241118-00133",
"customer_trip_no": "VY0155-A"
},
"pickup": {
"name": "VITELLO",
"zip": "78400",
"city": "Chatou",
"country_code": "FR",
"place_name": "5 Boulevard De La République, 78400 Chatou, France",
"display_place_name": "",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
2.150509,
48.891915
]
},
"contact": {
"language": "fr"
},
"target_date": {
"date": "2024-11-18T19:28:34",
"utc_date": "2024-11-18T18:28:34.330Z"
}
},
"delivery": {
"name": "VO-link",
"zip": "01360",
"city": "Béligneux",
"country_code": "FR",
"place_name": "150 Chemin De Derontet, 01360 Béligneux, France",
"display_place_name": "ZA 2b - 150 Chemin Du Dérontet, 01360 Béligneux, France",
"timezone": "Europe/Paris",
"geo_point": {
"type": "Point",
"coordinates": [
5.113045,
45.851342
]
},
"contact": {
"name": "Valérie",
"email": "contact@e4cars.com",
"phone": "+33 1 00 00 00 00",
"language": "fr"
},
"instructions": "VO-link Beligneux, ZA des 2B",
"target_date": {
"date": "2024-11-25T19:28:34",
"utc_date": "2024-11-25T18:28:34.330Z"
}
}
}
}
}
}
| Code | Description | Example Response |
|---|---|---|
| 200 | Success, the flow was transmitted correctly. | { "status": "success", "message": "Incoming flow transmitted successfully." } |
| 401 | Unauthorized, missing or invalid authentication. | { "status": "error", "message": "Unauthorized. Please authenticate." } |
| 403 | Forbidden, insufficient permissions. | { "status": "error", "message": "Forbidden. You do not have the necessary permissions to execute this flow." } |
| 400 | Bad request, invalid body or parameters. | { "status": "error", "message": "Invalid request." } |

