# Request

### BookingUpdate Request Example

The request structure is the same as the `BookingCreateRequest`, except the XML root node is replaced with `BookingUpdateRequest`.

```markup
<?xml version="1.0" encoding="UTF-8"?>
<BookingUpdateRequest xmlns="https://api.zaui.io/api/01">
	<ApiKey>xxxxxxxxxxxxxxxxxxxxxxx</ApiKey>
	<ResellerId>2005</ResellerId>
	<SupplierId>200</SupplierId>
	<ExternalReference>10051374722992616</ExternalReference>
	<Timestamp>1577121674745</Timestamp>
	<BookingReference>999999999</BookingReference>
	<TravelDate>2020-10-31</TravelDate>
	<SupplierProductCode>ACT_1765</SupplierProductCode>
	<Location>Seattle, Washington</Location>
	<TourOptions>
		<SupplierOptionCode>09:00:00</SupplierOptionCode>
		<SupplierOptionName>Zip line 9:00 am</SupplierOptionName>
		<TourDepartureTime>09:00:00</TourDepartureTime>
		<TourDuration>PT1H</TourDuration>
	</TourOptions>
	<Inclusions>
		<Inclusion>Bottle of Champagne</Inclusion>
		<Inclusion>Hotel Pickup</Inclusion>
	</Inclusions>
	<Traveller>
		<TravellerIdentifier>1</TravellerIdentifier>
		<TravellerTitle>Mr.</TravellerTitle>
		<GivenName>John</GivenName>
		<Surname>Doe</Surname>
		<AgeBand>ADULT</AgeBand>
		<LeadTraveller>true</LeadTraveller>
	</Traveller>
	<TravellerMix>
		<Senior>0</Senior>
		<Adult>1</Adult>
		<Child>0</Child>
		<Student>0</Student>
		<Infant>0</Infant>
		<Total>1</Total>
	</TravellerMix>
	<RequiredInfo>
		<Question>
			<QuestionText>Passport No.</QuestionText>
			<QuestionAnswer>L99999</QuestionAnswer>
		</Question>
		<Question>
			<QuestionText>Weight</QuestionText>
			<QuestionAnswer>50 Kg</QuestionAnswer>
		</Question>
	</RequiredInfo>
	<SpecialRequirement>Vegetarian Meal</SpecialRequirement>
	<PickupPoint>Hilton</PickupPoint>
	<SupplierNote>Customer requested space for large luggage at pickup</SupplierNote>
	<AdditionalRemarks>
		<Remark>Additional charges for large luggage may apply. To be advised at pickup.
		</Remark>
	</AdditionalRemarks>
	<ContactDetail>
		<ContactType>MOBILE</ContactType>
		<ContactName>John Doe</ContactName>
		<ContactValue>US+1 999999999</ContactValue>
	</ContactDetail>
	<PickupLocation>
		<SupplierPickupCode>209</SupplierPickupCode>
	</PickupLocation>
	<DropoffLocation>
		<SupplierDropoffCode>219</SupplierDropoffCode>
	</DropoffLocation>
	<SupplierConfirmationNumber>1635213</SupplierConfirmationNumber>
</BookingUpdateRequest>
```

### Booking Update Request Fields

> Information from a node with an asterix (\*) will be mapped to general booking comments for the supplier.

| XML Node                     | Parent Node            | Description                                                                                                                                                                                                                              | Optionality                                         |
| ---------------------------- | ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- |
| `BookingUpdateRequest`       |                        | Root XML node                                                                                                                                                                                                                            | Mandatory                                           |
| `API Key`                    | `BookingUpdateRequest` | Your Unique API Key                                                                                                                                                                                                                      | Mandatory                                           |
| `ResellerId`                 | `BookingUpdateRequest` | Your Unique Reseller Id                                                                                                                                                                                                                  | Mandatory                                           |
| `SupplierId`                 | `BookingUpdateRequest` | String representing the unique supplier ID within the Zaui Marketplace                                                                                                                                                                   | Mandatory                                           |
| `ExternalReference`          | `BookingUpdateRequest` | String representing a unique transaction ID. Used to identify your original request                                                                                                                                                      | Optional                                            |
| `TimeStamp`                  | `BookingUpdateRequest` | <p>Time of creation of request </p><p>• yyyy-MMddTHH:mm:ss.SSSZ(in UTC time)</p><p> or </p><p>• yyyy-MMddTHH:mm:ss.SSS\[+/- ]hh:mm </p><p>Example: </p><p>2020-04- 28T13:10:12.123Z (UTC time) </p><p>2020-04- 28T13:10:12.123+10:00</p> | Mandatory                                           |
| `BookingReference`           | `BookingUpdateRequest` | Unique booking reference- used to identify the booking and perform a cancellation if necessary.                                                                                                                                          | Mandatory                                           |
| `TravelDate`                 | `BookingUpdateRequest` | Date for which to check. Date format: YYYY-MM-DD                                                                                                                                                                                         | Mandatory                                           |
| `SupplierProductCode`        | `BookingUpdateRequest` | The unique product code for the supplier                                                                                                                                                                                                 | Mandatory                                           |
| `TourOptions`                | `BookingUpdateRequest` | Tour option root XML node                                                                                                                                                                                                                | Optional                                            |
| `SupplierOptionCode`         | `TourOptions`          | String representing the unique supplier option code                                                                                                                                                                                      | Optional                                            |
| `SupplierOptionName`         | `TourOptions`          | String representing the supplier option name                                                                                                                                                                                             | Optional                                            |
| `TourDepartureTime`          | `TourOptions`          | Time of the activity departure and must be in the format of HH:MM:SS                                                                                                                                                                     | Optional                                            |
| `TourDuration`               | `TourOptions`          | Option duration, and must be in the format: PnYnMnDTnHnMnS                                                                                                                                                                               | Optional                                            |
| `Inclusions`                 | `BookingUpdateRequest` | Root node for inclusions                                                                                                                                                                                                                 | Optional                                            |
| `Inclusion`                  | `Inclusions`           | String holding the inclusion on the product offering                                                                                                                                                                                     | Optional                                            |
| `Traveller`                  | `BookingUpdateRequest` | Root XML element describing the customer details                                                                                                                                                                                         | Mandatory                                           |
| `TravellerIdentifier`        | `Traveller`            | Unique integer per traveller for the booking                                                                                                                                                                                             | Mandatory                                           |
| `TravellerTitle`             | `Traveller`            | Guest title (Mr, Miss, Mrs, etc)                                                                                                                                                                                                         | Optional                                            |
| `GivenName`                  | `Traveller`            | Guest first name                                                                                                                                                                                                                         | Mandatory                                           |
| `Surname`                    | `Traveller`            | Guest last name                                                                                                                                                                                                                          | Mandatory                                           |
| `AgeBand`                    | `Traveller`            | <p>Age band for the traveller. Valid values are: </p><p>• Senior </p><p>• Adult </p><p>• Student </p><p>• Child </p><p>• Infant</p>                                                                                                      | Mandatory                                           |
| `LeadTraveller`              | `Traveller`            | True or False - indicates the main traveller on the booking                                                                                                                                                                              | Optional                                            |
| `TravellerMix`               | `BookingUpdateRequest` | Root XML element that contains the details of the passenger types to query for inventory                                                                                                                                                 | Mandatory                                           |
| `Senior`                     | `TravellerMix`         | Number of seniors                                                                                                                                                                                                                        | Optional                                            |
| `Adult`                      | `TravellerMix`         | Number of adults                                                                                                                                                                                                                         | Optional                                            |
| `Student`                    | `TravellerMix`         | Number of students                                                                                                                                                                                                                       | Optional                                            |
| `Child`                      | `TravellerMix`         | Number of children                                                                                                                                                                                                                       | Optional                                            |
| `Infant`                     | `TravellerMix`         | Number of infants                                                                                                                                                                                                                        | Optional                                            |
| `Total`                      | `TravellerMix`         | Total travellers                                                                                                                                                                                                                         | Mandatory                                           |
| `RequiredInfo` \*\*          | `BookingUpdateRequest` | Root XML node that will hold additional booking questions/answers for the booking. All information submitted is mapped to general booking comments for the supplier.                                                                     | Optional                                            |
| `Question` \*                | `RequiredInfo`         | String holding the question                                                                                                                                                                                                              | Optional                                            |
| `QuestionText` \*            | `Question`             | String holding the question text                                                                                                                                                                                                         | Optional                                            |
| `QuestionAnswer` \*          | `Question`             | Answer text supplied                                                                                                                                                                                                                     | Optional                                            |
| `SpecialRequirement` \*      | `BookingUpdateRequest` | String with any special requirements from the customer                                                                                                                                                                                   | Optional                                            |
| `PickupPoint` \*             | `BookingUpdateRequest` | String value with the pickup point supplied                                                                                                                                                                                              | Optional                                            |
| `SupplierNote` \*            | `BookingUpdateRequest` | String value with any supplier notes passed from your implementation                                                                                                                                                                     | Optional                                            |
| `AdditionalRemarks` \*       | `BookingUpdateRequest` | Root XML node with additional remarks                                                                                                                                                                                                    | Optional                                            |
| `Remark` \*                  | `AdditionalRemarks`    | String with the remark                                                                                                                                                                                                                   | Optional                                            |
| `ContactDetail`              | `BookingUpdateRequest` | Root XML node holding customer contact details                                                                                                                                                                                           | Optional                                            |
| `ContactType`                | `ContactDetail`        | <p>Type of contact. Options are: </p><p>• MOBILE </p><p>• EMAIL </p><p>• ALTERNATE </p><p>• NOT\_CONTACTABLE</p>                                                                                                                         | Optional                                            |
| `ContactName`                | `ContactDetail`        | String with name of contact                                                                                                                                                                                                              | Optional                                            |
| `ContactValue`               | `ContactDetail`        | String with the contact information (name, email, phone...etc)                                                                                                                                                                           | Optional                                            |
| `PickupLocation`             | `BookingUpdateRequest` | Root node for the pickup location                                                                                                                                                                                                        | Optional, but required for transportation  products |
| `SupplierPickupCode`         | `PickupLocation`       | The pickup location ID, which is returned as part of the ActivityListRequest                                                                                                                                                             | Optional, but required for transportation  products |
| `DropoffLocation`            | `BookingUpdateRequest` | Root node for the dropoff location                                                                                                                                                                                                       | Optional, but required for transportation  products |
| `SupplierDropoffCode`        | `SupplierDropoffCode`  | The dropoff location ID, which is returned as part of the ActivityListRequest                                                                                                                                                            | Optional, but required for transportation  products |
| `SupplierConfirmationNumber` | `BookingUpdateRequest` | String that holds the unique supplier confirmation number. The SupplierConfirmationNumber is used in all subsequent request pertaining to the booking, and must be stored in your implementation                                         | Mandatory                                           |
