References¶
Receiving a booking¶
To receive new booking notifications via the webhook, implement the following:
Payload Fields¶
| Field | Type | Description | Required |
|---|---|---|---|
| bookingReference | String | The booking reference. | Yes |
| customerReference | String | The customer reference. | No |
| searchResultId | String | The search result identifier (max 100 characters). Required for suppliers that provide rates via the API. | No |
| leadPassenger.title | String | The lead passenger's title. | No |
| leadPassenger.firstName | String | The lead passenger's first name. | Yes |
| leadPassenger.lastName | String | The lead passenger's last name. | Yes |
| leadPassenger.phoneNumber | String | The lead passenger's phone number in E.164 format. | Yes |
| leadPassenger.customerId | String | A hash ID calculated from the lead passenger details. | Yes |
| flightNumber | String | The flight number (airport pickups only). | No |
| comment | String | Comments provided by the lead passenger. | No |
| services | Array | An array of name/value objects for services requested. Currently supported: meetAndGreetMessage. |
No |
Note
This webhook provides a notification with key booking identifiers. Call GET /v1/bookings/:customerReference/:bookingReference to retrieve the full booking details including pricing, vehicle type, and pickup/dropoff locations.
Sample Payload¶
{
"bookingReference": "44225562",
"customerReference": "87654321",
"searchResultId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"leadPassenger": {
"title": "Mr",
"firstName": "John",
"lastName": "Doe",
"phoneNumber": "+441632960881",
"customerId": "191e8c71a3f2c19092baf027a96962989493c07a5dadb146b73df653c837a2fa"
},
"flightNumber": "BA123",
"comment": "Need a pet friendly car",
"services": [
{
"name": "meetAndGreetMessage",
"value": "Welcome John Doe"
}
]
}
Response Fields¶
| Field | Type | Description | Required |
|---|---|---|---|
| supplierBookingId | String | Your own booking ID for this booking. Required for suppliers that provide rates via the API. | No |
Sample Response¶
Responses¶
HTTP 200 - OK (with response body)¶
HTTP 204 - No Content (without response body)¶
HTTP 4xx - Client error — Error response format¶
HTTP 5xx - Server error — Error response format¶
Receiving a booking update¶
To receive booking amendments and cancellations, implement the following:
Payload Fields¶
| Field | Type | Description | Required |
|---|---|---|---|
| leadPassenger.title | String | The lead passenger's title. | No |
| leadPassenger.firstName | String | The lead passenger's first name. | No |
| leadPassenger.lastName | String | The lead passenger's last name. | No |
| leadPassenger.phoneNumber | String | The lead passenger's phone number in E.164 format. | No |
| comment | String | Comments provided by the lead passenger. | No |
| flightNumber | String | The flight number (airport pickups only). | No |
| pickupDateTime | String | The pickup timestamp in UTC (ISO 8601). | No |
| services | Array | An array of name/value objects for services requested. Currently supported: meetAndGreetMessage. |
No |
| action | String | The action carried out:AMENDMENT — booking details have changedCANCELLATION — booking cancelled by customer |
Yes |
| cancellationReason | String | The cancellation reason. Empty string for amendments. | No |
Note
When action is AMENDMENT, call GET /v1/bookings/:customerReference/:bookingReference to retrieve the updated booking details. The webhook payload contains the updated passenger/flight info but not pricing or location changes.
Sample Payload — Amendment¶
{
"leadPassenger": {
"title": "Mr",
"firstName": "John",
"lastName": "Doe",
"phoneNumber": "+441632960881"
},
"comment": "Need a pet friendly car",
"flightNumber": "BA123",
"pickupDateTime": "2021-12-07T12:30:00Z",
"services": [
{
"name": "meetAndGreetMessage",
"value": "Welcome John Doe"
}
],
"action": "AMENDMENT",
"cancellationReason": ""
}
Sample Payload — Cancellation¶
{
"leadPassenger": {
"title": "Mr",
"firstName": "John",
"lastName": "Doe",
"phoneNumber": "+441632960881"
},
"comment": "",
"flightNumber": "",
"pickupDateTime": "2021-12-07T12:30:00Z",
"services": [],
"action": "CANCELLATION",
"cancellationReason": "Customer requested cancellation"
}
Responses¶
HTTP 204 - No Content¶
HTTP 4xx - Client error — Error response format¶
HTTP 5xx - Server error — Error response format¶
Further reading¶
- Booking Webhook, what is it for? — Overview, no-retry explanation, V1 backup polling
- API: Integration FAQ — Webhook is notification-only, declined bookings don't trigger webhook