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

How to Search for Available Resorts

Last updated: 2026-03-03

How to Search for Available Resorts

Once you have a region code from the autocomplete endpoint, you can search for available resort properties. The property search endpoint returns a list of resorts matching your criteria, including pricing, ratings, images, and location details.

Endpoint

POST {{apihost}}/resorts/api/v2/properties/{xeniregioncode}?currency={currencycode}

Required Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
x-api-keyYour API keyYes
x-correlation-idUnique correlation identifierYes

Path Parameters

ParameterTypeRequiredDescription
xeniregioncodestringYesThe Base64-encoded region code from the autocomplete endpoint

Query Parameters

ParameterTypeRequiredDescription
currencystringNoThree-letter ISO 4217 currency code (e.g., USD, EUR, GBP). Defaults to USD.

Request Body

JSON
{
  "stay_period": {
    "start": "2026-04-01",
    "end": "2026-04-07"
  },
  "lat": 19.8968,
  "lon": -155.5828
}

Request Body Fields

FieldTypeRequiredDescription
stayperiod.startstringYesCheck-in date in YYYY-MM-DD format
stayperiod.endstringYesCheck-out date in YYYY-MM-DD format
latnumberYesLatitude of the destination (from autocomplete)
lonnumberYesLongitude of the destination (from autocomplete)
filtersobjectNoOptional filters to narrow results. See How to Use Resort Search Filters and Sorting.
sortarrayNoOptional sorting criteria. See How to Use Resort Search Filters and Sorting.

Example Request

JSON
POST {{api_host}}/resorts/api/v2/properties/aGF3YWlp?currency=USD

{
"stay_period": {
"start": "2026-04-01",
"end": "2026-04-07"
},
"lat": 19.8968,
"lon": -155.5828
}

Example Response

JSON
{
  "status": 200,
  "data": [
    {
      "id": "RST-98765",
      "name": "Oceanfront Paradise Resort & Spa",
      "base_rate": 245,
      "taxesandfees": 38.5,
      "total_rate": 1710,
      "currency": "USD",
      "address": {
        "line_1": "100 Beachfront Drive",
        "city": "Kailua-Kona",
        "state": "HI",
        "country": "US",
        "postal_code": "96740"
      },
      "coordinates": {
        "lat": 19.64,
        "lon": -155.9969
      },
      "ratings": {
        "star_rating": 4,
        "user_rating": 8.7
      },
      "image": "https://images.example.com/resort-main.jpg",
      "start_date": "2026-04-01",
      "end_date": "2026-04-07",
      "recommendation_id": "rec-abc123",
      "published_price": 1850
    }
  ]
}

Response Fields

FieldTypeDescription
idstringUnique property identifier. Use this for detail, availability, and booking calls.
namestringDisplay name of the resort property
baseratenumberNightly base rate before taxes and fees
taxesandfeesnumberTotal taxes and fees for the stay
totalratenumberTotal cost for the entire stay including taxes and fees
currencystringCurrency code for all rate fields
addressobjectProperty address details
coordinatesobjectLatitude and longitude of the property
ratings.starratingnumberStar rating of the property (1-5)
ratings.userratingnumberAverage guest rating
imagestringURL of the primary property image
startdatestringCheck-in date
enddatestringCheck-out date
recommendationidstringRecommendation identifier. Required for availability and booking calls.
publishedpricenumberThe original published rack rate before any discounts

Important Notes

  • Save the recommendation_id — This value is required when checking room availability, confirming pricing, and creating bookings. It ties subsequent API calls back to this specific search result.
  • Save the property id — You will need this identifier for property detail lookups, availability checks, and booking requests.
  • Rates are per-stay — The totalrate represents the full cost for the entire stay period, not a nightly rate. The baserate is the nightly rate.
  • Published price vs. total rate — The publishedprice is the original rack rate. The totalrate is the actual price your customer pays, which may reflect negotiated or discounted pricing.

Was this article helpful?