Getting Started with the Xeni Activities APIHow to Book an ActivityHow to Browse Activity Tags and CategoriesHow to Cancel an Activity BookingHow to Check Activity AvailabilityHow to Get Activity DetailsHow to Retrieve Activity Booking DetailsHow to Search for Activities with FiltersHow to Search for Activity DestinationsCar Rental API - Getting StartedCar Rental API - Understanding Response FieldsHow to Book a Car RentalHow to Get Rental Car Details and Equipment Add-OnsHow to Retrieve or Cancel a Car Rental BookingHow to Search for Available Rental CarsHow to Search for Pickup LocationsHow to Use Car Rental Search FiltersDeals API Best Practices for IntegrationDeals API Frequently Asked QuestionsGetting Started with the Xeni Deals APIDeals API Request Parameters and Headers ReferenceDeals API Supported Currencies and LocalizationHow to Display Deals in Your ApplicationHow to Fetch Hotel Deals by LocationFlights API Error Codes and TroubleshootingGetting Started with the Xeni Flights APIHow to Book a FlightHow to Check Flight Availability and PricingHow to Confirm or Cancel a Flight BookingHow to Retrieve Fare Rules for a FlightHow to Retrieve Flight Booking DetailsHow to Search for Airports Using AutocompleteHow to Search for FlightsHow to Use Flight Search Filters, Sorting, and PaginationHow to Check Room Availability and PricingHow to Filter Vacation Rental ResultsHow to Get Resort Property Details, Amenities, and AccessibilityHow to Hold and Confirm a Resort BookingHow to Release a Resort HoldHow to Retrieve Resort Booking DetailsHow to Search for Available ResortsHow to Search for Resort DestinationsHow to Search for Vacation Rental LocationsHow to Search for Vacation RentalsHow to Use Resort Search Filters and SortingGetting Started with the Xeni Resorts APIResorts API: Understanding Booking Statuses and PoliciesGetting Started with the Vacation Rentals APIVacation Rentals Frequently Asked QuestionsVacation Rentals Supported Property TypesUnderstanding Async Search for Vacation RentalsAuthentication & API SignaturesBooking Hotels — Direct API & SSO CheckoutError Handling, Rate Limits & Best PracticesGetting Started with the Xeni Hotels APIManaging Bookings: Status, Retrieval & CancellationPricing Confirmation & Token LifecycleRetrieving Hotel Details & Room AvailabilitySearching for Hotels: Locations, Filters & PaginationSearching for HotelsSession Management & Correlation IDsAPI authentication and getting your API keys

Vacation Rentals Frequently Asked Questions

Last updated: 2026-03-03

Vacation Rentals Frequently Asked Questions

This article answers common questions about the Xeni Vacation Rentals API.

General

How is the Vacation Rentals API different from the Hotels API?

The Vacation Rentals API searches for alternative accommodation types such as condos, apartments, cottages, houseboats, mobile homes, aparthotels, and condominium resorts. It uses a different search endpoint path (/hotels/api/v2/properties/vacation-rentals) but shares the same autocomplete endpoint as the Hotels API. The request and response structures are similar, with the addition of the vacation_rentals property type filter.

Is vacation rentals a separate API or part of the Hotels API?

It is part of the same API infrastructure. The autocomplete endpoint is shared, and the search endpoint follows the same patterns. The key difference is the URL path (/vacation-rentals appended to the properties endpoint) and the vacation_rentals filter parameter in the request body.

Do I need separate credentials for vacation rentals?

No. The same API credentials and authentication used for the Hotels or Resorts API work for Vacation Rentals.

Property Types

Can I filter by property type?

Yes. Use the vacation_rentals array in the search request body to filter results by one or more property types:

JSON
{
  "vacation_rentals": [
    "Cottage",
    "Apartment"
  ]
}

Supported values: "Condo", "Apartment", "Cottage", "Houseboat", "Mobile Home", "Aparthotel", "Condominium Resort".

What happens if I do not specify a property type?

If you omit the vacation_rentals parameter or pass an empty array, the search returns all available vacation rental property types for the given location and dates.

Are the property type values case-sensitive?

Yes. Use the exact values as documented (e.g., "Cottage" not "cottage", "Mobile Home" not "mobile home").

Search and Correlation ID

What is the correlation ID?

The correlation ID is a unique value returned in the x-correlation-id response header from the autocomplete endpoint. It links your autocomplete lookup to subsequent search requests. The search endpoint requires this header to function.

Can I search without calling autocomplete first?

No. The autocomplete endpoint provides the correlation ID, place ID, and coordinates needed for the search request. You must call autocomplete first.

Can I reuse a correlation ID for multiple searches?

A correlation ID is tied to a specific autocomplete request. For the same destination, you can use it for multiple search requests (e.g., different dates or occupancy). However, if you search a new destination, you should call autocomplete again to get a fresh correlation ID.

What happens if I omit the correlation ID?

The search returns a 400 error indicating that the correlation ID is missing.

Pricing

How does pricing work for vacation rentals?

Each property in the search results includes a rates object with the following fields:

FieldDescription
retailpriceDisplayed nightly retail price
baserateNightly base rate before taxes
totalrateTotal cost for the entire stay
taxand_feesTotal taxes and fees for the stay
currencyCurrency code matching the currency query parameter

Can I change the currency?

Yes. Pass the desired currency as a query parameter: currency=EUR, currency=GBP, etc. All prices in the response will be in the specified currency. If an unsupported currency is provided, the API returns a 400 error.

Are prices per night or per stay?

The retailprice and baserate fields are per night. The totalrate and taxand_fees fields are for the full stay duration.

Filtering and Sorting

What filters are available?

The following filters can be passed in the filters object:

FilterParameterTypeDescription
Star ratingratingsarray of numbersFilter by star rating (e.g., [4, 5])
Amenitiesamenitiesarray of stringsFilter by amenity names
Property namenamestringMatch properties by name
Minimum priceminpricenumberMinimum nightly price
Maximum pricemaxpricenumberMaximum nightly price
DistancedistancenumberMaximum distance in km from search coordinates

Additionally, use the vacation_rentals body parameter to filter by property type.

How do I sort results?

Use the sort array in the request body:

JSON
{
  "sort": [
    {
      "key": "price",
      "order": "asc"
    }
  ]
}

How does pagination work?

Use the page and limit query parameters. Pages start at 1, and the maximum limit per page is 50. Check data.total in the response to determine how many pages of results exist.

Async Mode

When should I use async mode?

Use async mode (is_async: true) when building user-facing search experiences where you want to display results as quickly as possible. The API returns partial results immediately, and you poll for more results until all suppliers have responded.

How do I know when all results are in?

Check the status field in the response. When it equals "success", all results have been returned. While it equals "in_progress", continue polling with the same correlation ID.

What if sync mode returns "in_progress"?

If a sync request times out before all suppliers respond, the response may have status: "in_progress". Treat this like an async response and poll again with the same correlation ID.

Multi-Language Support

Can I get results in other languages?

The autocomplete endpoint supports the Accept-Language header. Pass a language code (e.g., "ar" for Arabic, "es" for Spanish, "fr" for French) to receive localized location names.

GET /hotels/api/v2/autocomplete?key=paris
Accept-Language: es

Are property names and descriptions translated?

Property names and descriptions are provided as registered by the property and may not be available in all languages. The Accept-Language header primarily affects autocomplete location results.

Errors

What are the common error codes?

Status CodeCauseSolution
400Missing x-correlation-id headerCall autocomplete first and include the correlation ID
400childages count does not match childs valueEnsure the number of ages matches the child count
400Invalid or unsupported currency codeUse a valid three-letter currency code
404No results found for the given criteriaBroaden your search — increase radius, remove filters, or try different dates

Support

For additional help with the Vacation Rentals API, contact Xeni support at customersupport@xeni.com.

Was this article helpful?