Getting started
The first step is to gather all the necessary information for generating the final attach link URL.
Here’s a list of the details you’ll need:
| Requirement | Source | Description |
|---|---|---|
partnerid | To be shared by Expedia Group. | A string value used in request parameters. For example: partnerid = partnername_hotel_conf_overlay |
| Secret/private key | To be shared by Expedia Group. | A 36-character alphanumeric string used to generate a signature for each partnerid. For example:Page 1: partnerId = partnername_hotel_conf_overlaysecret key = 6f437404-261d-4beb-a7fc-43b92f694831Page 2: partnerId = partnername_hotel_itin_overlaysecret key = 89f37407-821r-3des-a7f5-ghb92f694294 |
| Tracking code | To be shared by Expedia Group. | Code used to track revenue attribution for partner site placements. |
| Deeplink URL | To be shared by Expedia Group. | Example: https://partnersitedomain/xsell-redirect-pwa?url=https%3A%2F%2Fpartnersitedomain%2Fgo%2Fhotel%2Fsearch%2FDestination%2F2026-08-25%2F2026-08-27%3FTrackingCodeHOTEL%26CityName%3DLAS%26SortBy%3DRECOMMENDED%26NumRoom%3D1%26NumAdult1%3D2&outboundEndDateTime=2026-08-25T16%3A53%3A00.000000Z&destinationTla=LAS&returnStartDateTime=2026-08-27T16%3A53%3A00.000000Z&originTla=SEA&bookingDateTime=2026-08-11T16%3A53%3A00.000000Z&attachDL=true&partnerId&signature |
| Endpoint | xsell-redirect-pwa | The endpoint required for connection. It is case-sensitive. |
| HMAC-SHA1 algorithm library | Choose either >> Apache Commons Crypto or | |
| >> Javax Crypto | Used to generate the signature. | |
| Encoding URL UTF-8 | >> UTF-8 percent encoding | Used to encode the request URL for secure delivery |
Email attach link URL request parameters
| Parameters | Type | Required | Description | Sample value |
|---|---|---|---|---|
partnerid | String | Y | To be provided by Expedia Group. | partnername-POS-Ext-Flight-Conf-EmailDL |
url | String | Y | Create the deeplink request URL for the hotel results page using the partner domain, search parameters, and tracking code, following the deeplink guide. Ensure the tracking code mdpcid is included, and the value of the output parameter is properly URL-encoded.>> Read the deeplink guide | url = https%3A%2F%2Fexpedia.com%2Fgo%2Fhotel%2Fsearch%2FDestination%2F2025-12-22%2F2025-12-25%3Fmdpcid%3DMDPCID=Expedia-IE.DPS.en_IE.confemail.attachDL.Flightl%26CityName%3DORD%26SortBy%3Ddistance%26NumRoom%3D1%26NumAdult1%3D3%26NumChild1%3D2%26Rm1child1age%3D9%26Rm1child2age%3D6n |
outboundEndDateTime | String representation of a date following ISO 8601 standard. | Y | Specify the trip arrival date and time at the destination. It should include only the date, time, and timezone according to the ISO 8601 standard. This parameter value needs to be encoded. | 2025-10-30T20%3A12%3A17.928020Z |
originTLA | String (3 letters) | Y | Specify the trip origin's IATA airport code. | LAS |
returnStartDateTime | String representation of a date following ISO 8601 standard. | Only needed for roundtrips | Specify the trip return date and time from the destination. It can include only the date, time, and timezone according to the ISO 8601 standard. This parameter value needs to be encoded. | 2025-11-10T20%3A12%3A17.928020Z |
destinationTLA | String (3 letters) | Y | Specify the trip destination's IATA airport code. | JFK |
bookingDateTime | String representation of a date following ISO 8601 standard. | Y | Specify the date and time of the booked reservation. It can include only the date, time, and timezone according to the ISO 8601 standard. This parameter value needs to be encoded. | 2025-07-25T20%3A12%3A17.928020Z |
bookingStatus | String | If not provided, we assume that the booking is confirmed. | The valid values for this parameter are: • confirmed• pending• failedDiscounted rates apply only when the bookingStatus is confirmed. | confirmed |
attachDL | Boolean | Y | Set the value as true to enable discounted attach rates. | true |
signature | String | Y | Generated server-side by the partner based on a secret key provided by Expedia Group. The length of this string is exactly 27 characters. Encode the resulting binary signature. | BcND1F7KElTyGtyUHeXHd2JJLFs |
Note: Request parameters are case sensitive. Incorrect casing will result in an error.