Overview
Take advantage of the new Merchandising API to identify deals more easily and benefit from machine learning-powered recommendations
The Merchandising API delivers direct access to Expedia-sourced property discounts, their associated campaigns and assets, and personalized deal, destination, and property rankings powered by machine learning. Use the Merchandising API to populate traveler- or agent-facing marketing experiences such as promotional emails, app widgets, website banners, and carousel experiences — and execute a winning year-long merchandising strategy.
You also have access to a Marketing section in your Partner Portal account where you can browse upcoming campaigns, export customized deal lists, select campaign copy and imagery to use, and track travel trends and campaign performance. If you aren’t seeing the Marketing section in your Portal, submit a support ticket.
Campaign content endpoint
The campaign content endpoint delivers upcoming campaign details including campaign ID, booking and stay start and end dates, and number of properties participating. You gain direct access to Expedia-curated campaign assets such as campaign thematic images, destination imagery, and suggested copy to create traveler-facing or agent-facing merchandising experiences including promotional emails, app widgets, and website banners. Additionally, you receive information about limited time offer (LTO) campaigns with a booking window within the next six months as well as evergreen campaigns available throughout the year.
You can use the Campaign Content endpoint to search upcoming campaigns using request parameters including:
- Bookable date range
- Stay date range
- At or above values for minimum discount
- LTO versus evergreen offers
For LTO campaigns with a booking window beyond six months, the following fields will be excluded:
- Booking and travel dates
- Min and max discount %
Other details
You can use the property_count field in the Campaign Content response to determine the most up-to-date number of properties providing deals within a campaign. We recommend you check the property_count close to the campaign booking start date since property participation in merchandising campaigns is dynamic and participation from properties tends to be most complete and reliable as the campaign launch approaches.
You can use the min_discount and max_discount fields in the Campaign Content response to determine the minimum and maximum percentage discount available within that campaign. For example, if the deepest discount offered by a property in that campaign is 60% off, the max_discount value in the API response would be 60%, whereas, if the lowest discount offered by a property in that campaign is 4%, the min_discount field would be 4%.
Promotions endpoint
You can easily search and filter the Promotions response for more targeted deals, so you have full control over what deals you surface to travelers. You can also curate these deals to build your own campaign themes instead of using Expedia-defined campaigns and associated assets.
- Delivers deals and discounts associated with a specific campaign.
- Ability to search and filter deals with the help of multiple request parameters, including the ability to request deals for a specific campaign or across multiple campaigns.
- Enables you to always surface the most up-to-date, appealing property deals to build a high-converting campaign.
You can use the Promotions endpoint to easily filter and search for deals using request parameters such as:
- Campaign ID and/or property ID
- Bookable date range
- Stay date range
- At or above values for minimum review score, minimum star rating, and/or minimum discount
- Limited time vs evergreen distinction
- Member-only and mobile-only deal flags
- Super region or specific destinations
- Machine learning relevancy rainking sort order
The below details will be returned in the Promotions API response:
- Promotion ID, corresponding campaign ID, and property ID
- Bookable date range, stay date range, blackout dates, and advance purchase window
- Limited time vs. evergreen distinction
- Machine learning-powered relevancy rankings unique to your business for the deals, properties, and destinations returned in the response
- Specific destinations and chain ID information
- Tokenized link to the existing Rapid Property Content API to pull property-level imagery to feature in your merchandising experiences
Other details
- If you want to search deals for a set booking window you can pass values for both
bookable_startandbookable_enddate. For example, by passing 2025-10-15 (October 15th 2025) in thebookable_startfield and passing 2025-10-30 (October 30th 2025) in thebookable_endfield, you will receive all deals that are bookable between October 15th and October 30th inclusive. However, if you who want to see a larger set of deals you can use eitherbookable_startorbookable_enddate. For example:- By passing 2025-10-15 (October 15th 2025) in the
bookable_startfield, you will receive all deals that are bookable on and after October 15th. This will provide a larger set of deals. - By only passing 2025-10-30 (October 30th 2025) in the
bookable_endfield, you will receive all deals that are bookable on and before October 30th. Again, this will provide a larger set of deals.
- By passing 2025-10-15 (October 15th 2025) in the
- Deals go live (i.e. become available to book) according to the property's time zone. So, if a deal starts on 21st March for a property in Sydney, Australia, the deal will become live for booking at 12:01am Sydney time for all partners in the world.
- You can use the
includerequest parameter on the Promotions endpoint to customize the size of the response you receive. So instead of receiving all response fields, if you only need a few fields returned, you can add those specific field names in theincludeparameter. - You can start making requests to the promotions API in advance but should also request as close to the campaign bookable start date as possible for the most accurate and up-to date representation of the deals from properties. We suggest approximately two weeks before the campaign starts. This is because participation from properties tends to be most complete and reliable as the campaign launch approaches.
- We also suggest you request promotions a few days after the campaign starts such that you always get the refreshed latest deals list. Additionally, we suggest you request the promotions API daily to get a refreshed and latest list of deals provided by properties.
- If you’re interested in building destination-based merchandising campaigns, you can make a region-specific Promotions API request using the relevant
region_idfrom the Rapid Geography API. The only region type accepted by the promotions endpoint iscity. Other region types such asmulti_city_vicinity,point_of_interest,neighbourhood, etc. will return a blank response.
Machine learning recommendations
The machine learning-powered relevancy rankings delivered in the Promotions response are unique to each partner, so the rankings you receive will differ from what anyone else receives. You can use the machine learning recommendations to identify the best deals, properties, and destinations to promote in your merchandising campaigns. Higher-scoring deals, properties, and destinations may have a higher likelihood of driving conversion among your unique traveler base.
- Currently, you will receive relevancy rankings for the top 10k deals in each campaign. In our testing, we found the value and impact of this rank became negligible beyond the first 10k deals.
- Based on your use case, you can use the
sort_byparameter to define the sort order of the Promotions response, choosing to order based on deal, property, or destination relevancy as determined by our machine learning model for you to get the maximum value from merchandising in terms of visibility and bookings from the travelers.- If you pass
sort_by = promotionyou will receive all the deal results ranked high-to-low (1 to 10,000) per our proprietary machine learning algorithm. You can use this sort to get the top recommended deals that our model expects to convert more. - If you pass
sort_by = propertyyou will receive all the deal results from the properties ranked high-to-low per our proprietary machine learning algorithm. - If you pass
sort_by = destinationyou will receive all the deal results from the destinations ranked high-to-low per our proprietary machine learning algorithm.
- If you pass
Note: Machine learning recommendations are also available in the Marketing section in Portal. Please reach out to your account manager for more details.
Changes made to the Shopping Availability API
To get the latest details on availability, live pricing, refundability, commissions info, etc. you should make a standard request to the Rapid Shopping API. We have made the following changes to the Shopping API to support merchandising flows and make your integration of the Merchandising API as smooth as possible:
- Use the new
dealfilter available in the Rapid Shopping Availability endpoint to only receive rates that feature active promotions. This gives you the flexibility to create a Shopping request with an exclusively merchandising focus and ensure that the all the rates returned have adealattribute.
Note: You can request details from the Shopping Availability API for up to 250 properties at a time.
Example response
"promotions": {
. "deal": {
. "id": "999abc",
. "description": "Book early and save 15%"
. }
}Note: The id and description available in the Merchandising API response are different to those returned in the Shopping API response. We strongly advise that you use the id and description returned by the Merchandising API.
Launch requirements
Compliance responsibility
You are solely responsible for ensuring compliance with all applicable legal and marketing guidelines when running campaigns.
Content integrity
Expedia-provided images must not be modified. You may use your own creative assets if preferred; however, you are solely responsible for ensuring compliance with all applicable copyright and intellectual property laws.
API details
Explore the merchandising-related endpoint definitions on this page, then use the API Explorer or another testing software to get an understanding of how the examples and schema definitions compare to the actual output.
Additional resources
Whether you're looking to try out all the Rapid API endpoints or to download its OpenAPI specs or our Postman collection, we have you covered.