Customers
Resources
/customers/bookings/\{bookingId\}/customers/trips/\{tripId\}/customers/accommodation/\{accommodationId\}/customers/transfers/\{transferId\}/customers/sightseeing/\{sightseeingId\}/customers/additional-services/\{additionalServiceId\}/customers
Methods
GETPOSTPATCH
Summary of changes
Customers are no longer retrievable as a path parameter appended to the end a resource request e.g. GET /trips/{tripId}/customers. Customers can instead be retrieved by adding the relevant component as a query parameter to GET /bookings/{bookingId}/customers e.g. GET /bookings/{bookingId}/customers?tripId={bookedTripId} to show customers booked on a certain trip
The term “Sightseeing” has been replaced by “Activities” in all aspects of our API. All references to sightseeing have therefore been renamed to “Activity”/”Activities” or have been removed
Several field names have been updated. See response changes for a list of fields and their counterparts in the GET /bookings/{bookingId}/customers endpoints of the Partner API
Several fields have been removed from the GET /bookings/{bookingId}/customers response. See removed fields section for full details.
Request body changes
Lists all request body parameters that can be set on a POST or PATCH to the customer booking resource, and their corresponding parameters in the Partner API.
| Description | Public API | Partner API | Type | Notes |
|---|---|---|---|---|
| Title of the customer e.g. Mr, Mrs*, Miss* | title | title | string | No change |
| Customer name** Set the customer’s* **full *name including their first, middle and last name | firstName middleName surname | firstName middleName surname | string | No change |
| Date of birth Set the customer’s date of birth following any minimum age requirements for the intended trip they will book | dateOfBirth | dateOfBirth | string | No change |
| Phone numbers Set the home and/or mobile phone numbers of the customer | mobilePhone homePhone | mobilePhone homePhone | string | No change |
| Email address Set the customer’s personal email address | emailAddress | emailAddress | string | No change |
| Address Set the full home address of the customer | addressLine1 addressLine2 city state postcode countryName countryCode | addressLine1 addressLine2 city state postcode countryName countryCode | string | No change |
| Passport Set the customer’s passport details. This may be required for some trips* as indicated by the passportRequiredTypeName field on the booked trip* | number nationality placeOfIssue dateOfIssue dateOfExpiry | number nationality placeOfIssue dateOfIssue dateOfExpiry | string | No change |
| Travel insurance Provide the customer’s travel insurance details | travelInsurancePolicyNumber travelInsuranceCompany travelInsuranceCompanyPhone | travelInsurancePolicyNumber travelInsuranceCompany travelInsuranceCompanyPhone | string | No change |
| Emergency contact details Set the emergency contact information for this customer | firstName surname mobilePhone relationship homePhone | firstName surname mobilePhone relationship homePhone | string | No change |
| Dietary requirements Add any notes regarding dietary requirements of the customer e.g. vegetarian, no nuts | dietaryNotes | dietaryNotes | string | No change |
| Medical notes or requirements Add any notes regarding the health or mobility of the customer e.g. requires mobility assistance | medicalNotes | medicalNotes | string | No change |
| Single supplement** Set to identify whether this customer has booked a single supplement | singleSupplement | singleSupplement | boolean | No change |
| External reference Set to prevent* creating a duplicate component on the booking* | externalReference | externalReference | string | No change |
| Lead passenger Identify whether this customer is the lead passenger of the booking | isLeadPax | isLeadPax | Boolean | No change |
Request query parameter changes
New query parameters have been added to the Partner API to replace the GET /{context}/{contextId}/customers of the Public API
| Description | Public API | Partner API | Type | Notes | ||
|---|---|---|---|---|---|---|
| **Trip ID *Retrieve customers that are *booked on this trip component | n/a | tripId | string | |||
| Accommodation ID *Retrieve customers that are *booked on this accommodation component | n/a | accommodationId | string | |||
| Transfer ID *Retrieve customers that are *booked on this transfer component | n/a | transferId | string | |||
| Additional Service ID *Retrieve customers that are *booked on this additional service component | n/a | additionalServiceId | string | Not supported yet | ||
| Activity ID** *Retrieve customers that are *booked on this activity component | n/a | activityId | string | Not supported yet |
Response Changes
| Description | Public API | Partner API | Type |
|---|---|---|---|
| Customer ID The u**nique identifier of the customer | id | id | |
| Title of the customer e.g. Mr, Mrs, Miss | title | title | string |
| Customer name T**he customer’s full name including their first, middle and last name | firstName middleName surname | firstName middleName surname | string |
| Date of birth T**he customer’s date of birth | dateOfBirth | dateOfBirth | string |
| Phone numbers T**he home and/or mobile phone numbers of the customer | mobilePhone homePhone | mobilePhone homePhone | string |
| Email address T**he customer’s personal email address | emailAddress | emailAddress | string |
| Address T**he full home address of the customer | addressLine1 addressLine2 city state postcode countryName countryCode | addressLine1 addressLine2 city state postcode countryName countryCode | string |
| Passport T**he customer’s passport details | number nationality placeOfIssue dateOfIssue dateOfExpiry | number nationality placeOfIssue dateOfIssue dateOfExpiry | string |
| Travel insurance The* customer’s travel insurance details* | travelInsurancePolicyNumber travelInsuranceCompany travelInsuranceCompanyPhone | travelInsurancePolicyNumber travelInsuranceCompany travelInsuranceCompanyPhone | string |
| Emergency contact details T**he emergency contact information for this customer | firstName surname mobilePhone relationship homePhone | firstName surname mobilePhone relationship homePhone | integer |
| Dietary requirements Any notes regarding dietary requirements of the customer e.g. vegetarian, no nuts | dietaryNotes | dietaryNotes | string |
| Medical notes or requirements A**ny notes regarding the health or mobility of the customer e.g. requires mobility assistance | medicalNotes | medicalNotes | decimals |
| Single supplement Identifies* whether this customer has booked a single supplement* | singleSupplement | singleSupplement | boolean |
Current request (deprecated)
Customers were embedded inside the booking payload as a flat array with fixed home/mobile phone fields.
GET https://api.intrepidtravel.com/v2/bookings/{bookingId}
{
"customerId": "C889912",
"firstName": "John",
"surname": "Smith",
"homePhone": "0115487956",
"mobilePhone": "0435485548",
"emergencyContact": {
"firstName": "Jess",
"surname": "Peter",
"homePhone": "0115487956",
"mobilePhone": "0435485548",
"relationship": "Mother"
},
"passport": {
"number": "N89171298",
"nationality": "US",
"placeOfIssue": "US",
"dateOfIssue": "2010-01-01",
"dateOfExpiry": "2020-01-01"
}
}
Updated request
Customers are now a distinct sub-resource supporting multiple phone numbers, multiple emergency contacts, passport-with-scan, and requirement tracking.
GET https://api.partners.intrepidtravel.cloud/bookings/{bookingId}/customers
{
"id": "cust_001",
"href": "/customers/cust_001",
"name": {
"title": "Mr",
"firstName": "John",
"middleName": "Riley",
"lastName": "Smith",
"preferredName": "Johnny"
},
"dateOfBirth": "1985-04-12",
"phoneNumbers": [
{ "type": "mobile", "number": "0412345678" },
{ "type": "home", "number": "0398765432" }
],
"emergencyContacts": [
{
"firstName": "Joey",
"lastName": "Smith",
"relationship": "Father",
"phoneNumbers": [
{ "type": "mobile", "number": "0412345679" }
]
}
],
"passport": {
"type": "PASSPORT",
"number": "P1234566",
"nationality": "Australian",
"placeOfIssue": "Sydney",
"dateOfIssue": "2020-01-01",
"dateOfExpiry": "2030-01-01",
"document": {
"type": "PASSPORT_SCAN",
"base64": "67Abdhdw3272..."
}
},
"incompleteRequirements": [
{ "id": "rq_1234", "href": "/requirements/rq_1234", "code": "PASSPORT", "status": "Incomplete" }
]
}
Removed fields
| Removed Fields | Public API | Notes | Relevant Field (if applicable) |
|---|---|---|---|
| Removed | sequence | ||
| Removed | externalReference | ||
| Removed | isUrbanAdventure |