# Get a paginated list of quotes Get a paginated list of quotes, optionally filtered by Situ enquiry id or the external id provided when calling the create enquiry endpoint. Endpoint: GET /external-api/v1/quotes Version: 1.0.1 Security: apiKey ## Query parameters: - `cursor` (string,null) Optional cursor used to pull the next or previous page for pagination. Example: "MTIzZTQ1NjctZTg5Yi0xMmQzLWE0NTYtNDI2NjE0MTc0MDAwfDIwMjQtMDctMDFUMTQ6MzA6MDBafE5leHQ=" - `pageSize` (integer) The maximum number of items to return. Example: 10 - `order` (string) Indicates whether to order the items in ascending or descending order. Enum: "desc", "asc" - `sort` (string) Used in conjunction with the order parameter and determines which field we're ordering by. Enum: "createdAt", "updatedAt" - `xeniaEnquiryReference` (string,null) Optionally filter quotes by the xenia enquiry ID. Example: "R4E2F3A4" - `enquiryExternalId` (string,null) Optionally filter quotes by the client supplied external enquiry ID. Example: "e234abcef" ## Response 200 fields (application/json): - `data` (array, required) Array of quotes. - `data.id` (string, required) The unique identifier of the quote. Example: "QT-2024-005678" - `data.xeniaEnquiryReference` (string, required) Xenia's reference for the enquiry. Example: "R4E2F3A4" - `data.clientEnquiryReference` (string,null, required) The client's reference for the enquiry. Example: "CLIENT-REF-123" - `data.createdAt` (string, required) When the quote was created. Example: "2024-07-01T14:30:00Z" - `data.updatedAt` (string, required) When the quote was last updated. Example: "2024-07-01T15:45:00Z" - `data.invalidatedAt` (string,null, required) When the quote was invalidated. Example: "2024-07-02T10:30:00Z" - `data.state` (string, required) The current state of the quote. An active quote can be booked, an invalidated quote cannot be booked. If a new quote is sent out, all existing quotes will become invalidated. Enum: "ACTIVE", "INVALIDATED" - `data.description` (string,null, required) The quote description. This is the same data if an email is also sent out. Example: "Quote for 3-night stay in London" - `data.items` (array, required) The quote items (properties and pricing). - `data.items.id` (string, required) The unique id of the quote option item. Example: "4e67c3eb-912a-4da2-91e9-dba4d8e2437e" - `data.items.property` (object, required) Property details for the quote item. - `data.items.property.propertyName` (string, required) The name of the property. Example: "The Savoy Hotel" - `data.items.property.propertyUrl` (string, required) Link to building. Example: "https://core.xenia.staysitu.com/properties/789" - `data.items.property.locationMapLink` (string, required) Link to google maps. Example: "https://maps.app.goo.gl/ob21JeqFf6rdkLif7" - `data.items.property.overview` (string,null) Overview of the property. Example: "A luxurious hotel in the heart of London" - `data.items.property.coordinates` (object) Latitude/Longitude coordinates - `data.items.property.coordinates.latitude` (number, required) Latitude of the location. Example: 51.5074 - `data.items.property.coordinates.longitude` (number, required) Longitude of the location. Example: -0.1278 - `data.items.property.locationOverview` (string,null) Overview of the property location. Example: "Located in Westminster, near major attractions" - `data.items.property.additionalDetails` (string,null) Additional details about the property. Example: "24-hour concierge service, spa facilities" - `data.items.property.termsOfStay` (string,null) Terms and conditions for the stay. Example: "Check-in after 3 PM, check-out before 11 AM. No smoking." - `data.items.property.images` (array) Array of property images. - `data.items.property.images.url` (string, required) Full URL of the image. Example: "https://images.example.com/property/savoy-suite-main.jpg" - `data.items.property.images.caption` (string,null) Caption or description of the image. Example: "Master bedroom with city view" - `data.items.property.images.ordering` (integer, required) Display order of the image. Example: 1 - `data.items.property.images.default` (boolean, required) Whether this is the default/primary image. Example: true - `data.items.property.units` (array) Array of unit details for the property. - `data.items.property.units.unitName` (string, required) The name of the unit. Example: "Deluxe Suite" - `data.items.property.units.numberOfBedrooms` (integer, required) Number of bedrooms in the unit. Example: 2 - `data.items.property.units.numberOfBathrooms` (integer, required) Number of bathrooms in the unit. Example: 1 - `data.items.property.units.maxOccupancy` (integer, required) Maximum occupancy for the unit. Example: 4 - `data.items.property.units.unitSize` (number, required) Size of the unit in square meters. Example: 85.5 - `data.items.property.units.features` (array) Array of unit features. - `data.items.property.units.features.key` (string, required) Feature identifier key. Example: "FACILITIES_INTERNET_SUPER_FAST_WIFI" - `data.items.property.units.features.description` (string, required) Human-readable feature description. Example: "Internet Connection - Superfast Wi-Fi" - `data.items.property.units.features.category` (string, required) Feature category. Example: "Facilities" - `data.items.property.units.features.subCategory` (string, required) Feature sub-category. Example: "Internet" - `data.items.property.units.features.availability` (string, required) Availability status of the feature. Enum: "IMPLICIT", "SUPPLIED", "ON_REQUEST", "CONSIDERED", "NOT_AVAILABLE" - `data.items.property.units.features.measurableUnitValue` (string,null) Value for measurable features (e.g., speed, size) Example: "100 Mbps" - `data.items.property.units.priceBreakdown` (object) Price breakdown for the quote item. - `data.items.property.units.priceBreakdown.currency` (string, required) The currency of the price breakdown. Example: "GBP" - `data.items.property.units.priceBreakdown.wholeStay` (object, required) The whole stay cost in the specified currency. - `data.items.property.units.priceBreakdown.wholeStay.excludingTax` (number, required) The whole stay cost excluding tax. Example: 2100 - `data.items.property.units.priceBreakdown.wholeStay.includingTax` (number, required) The whole stay cost including tax. Example: 2500 - `data.items.property.units.priceBreakdown.wholeStay.taxAmount` (number, required) The tax amount applied to the whole stay cost. Example: 400 - `data.items.property.units.priceBreakdown.perPeriod` (object, required) Per period cost breakdown. - `data.items.property.units.priceBreakdown.perPeriod.period` (string, required) The pricing period type. Enum: "NIGHTLY", "DAILY" - `data.items.property.units.priceBreakdown.perPeriod.amountsExcludingAdditionalCharges` (object, required) Per period amounts excluding additional charges. - `data.items.property.units.priceBreakdown.perPeriod.amountsExcludingAdditionalCharges.excludingTaxWithBookingFee` (number, required) Period cost excluding additional charges and tax, but including booking fees. Example: 400 - `data.items.property.units.priceBreakdown.perPeriod.amountsExcludingAdditionalCharges.includingTaxWithBookingFee` (number, required) Period cost including tax and booking fees, but excluding additional charges. Example: 440 - `data.items.property.units.availability` (object,null) The availability window for a quote item. ISO-8601 date formats are used. - `data.items.property.units.availability.from` (string, required) Start date of availability. Example: "2024-08-15" - `data.items.property.units.availability.to` (string, required) End date of availability. Example: "2024-08-20" - `data.items.property.units.availability.nights` (integer, required) Number of nights available. Example: 5 - `data.items.property.units.additionalCharges` (array) Additional charges. - `data.items.property.units.additionalCharges.summary` (string, required) Charge details. Example: "Cleaning fee (per stay)" - `data.items.property.units.additionalCharges.chargeFormat` (object) - `data.items.property.units.additionalCharges.chargeFormat.chargeFormatType` (string) Indicates whether this is a percentage or absolute charge. Enum: "PERCENTAGE_OF_NIGHTLY_RATE", "SPECIFIED_RATE" - `data.items.property.units.additionalCharges.chargeFormat.rate` (number,null) The amount or percentage. Example: 10.5 - `data.items.property.units.additionalCharges.vat` (object) Indicates whether this is a percentage or absolute charge. - `data.items.property.units.additionalCharges.vat.vatApplicability` (string) Indicates whether this is a percentage or absolute charge. Enum: "NOT_APPLICABLE", "NOT_INCLUDED", "INCLUDED" - `data.items.property.units.additionalCharges.vat.rate` (number,null) The VAT rate percentage - only included if type is 'Included' or 'Not Included'. Example: 20 - `data.items.property.units.additionalCharges.chargeFrequency` (string) Indicates whether this is a percentage or absolute charge. Enum: "ONE_OFF", "NIGHTLY", "WEEKLY", "MONTHLY" - `data.items.property.units.additionalCharges.chargedPerGuest` (boolean) Whether the fee is charged per guest. Example: true - `data.items.property.units.additionalCharges.commisionable` (boolean) Whether the fee is commisionable. Example: true - `data.items.property.units.additionalCharges.refundable` (boolean) Whether the fee is refundable. Example: true - `data.items.property.units.additionalCharges.grossCost` (number,null, required) Formatted total cost including tax. Example: 40 - `data.items.property.units.cancellationPolicies` (array) Array of cancellation policy texts. Example: ["Free cancellation up to 48 hours before check-in","50% refund between 48-24 hours before check-in","No refund within 24 hours of check-in"] - `data.items.property.units.notes` (string) Client facing notes made by accommodation specialist. Example: "Special amenities included" - `data.items.property.address` (object) Address information. - `data.items.property.address.line1` (string, required) First line of the address. Example: "123 Main Street" - `data.items.property.address.line2` (string,null) Second line of the address. Example: "Apartment 4B" - `data.items.property.address.townCity` (string, required) Town or city. Example: "London" - `data.items.property.address.region` (string,null) Region or state. Example: "Greater London" - `data.items.property.address.countryCode` (string, required) ISO 3166-1 alpha-2 country code. Example: "GB" - `data.items.property.address.country` (string, required) Country name. Example: "United Kingdom" - `data.items.property.address.postcode` (string,null) Postal code. Example: "SW1A 1AA" - `data.items.property.features` (array) Array of property features. - `data.items.distanceFromEnquiryLocation` (object,null) Distance information from the search location. - `data.items.distanceFromEnquiryLocation.value` (number, required) The distance value. Example: 12.5 - `data.items.distanceFromEnquiryLocation.unit` (string, required) The unit of measurement for distance. Enum: "KILOMETERS" - `data.items.booked` (boolean) Indicates whether the quote item is booked. - `data.bookedQuoteItem` (object,null, required) Information about the quote item that selected for booking. Null if booking is not yet confirmed. - `data.bookedQuoteItem.bookingId` (string, required) The unique identifier of the booking. Example: "BK-2024-123456" - `data.bookedQuoteItem.quoteItemId` (string, required) The unique identifier of the quote item that was booked. Example: "4e67c3eb-912a-4da2-91e9-dba4d8e2437e" - `data.bookedQuoteItem.createdAt` (string, required) When the booking was created. Example: "2024-07-02T09:30:00Z" - `pagination` (object, required) Pagination navigation details - `pagination.next` (string,null) Link to next page of results Example: "/v1/enquiries?cursor=MmFhZjkwMjktOWFhYS00OGM0LWFlNDgtZWI1ZDliMWIzOTEyfDIwMjUtMDctMDlUMTQ6MDU6MzYuNzQ0MTUzMCswMDowMA==&isBackwards=false&pageSize=10" - `pagination.previous` (string,null) Link to previous page of results Example: "/v1/enquiries?cursor=MmFhZjkwMjktOWFhYS00OGM0LWFlNDgtZWI1ZDliMWIzOTEyfDIwMjUtMDctMDlUMTQ6MDU6MzYuNzQ0MTUzMCswMDowMA==&isBackwards=true&pageSize=10" ## Response 404 fields (application/problem+json): - `detail` (string) A human-readable explanation specific to this occurrence of the problem. Example: "The request could not be understood due to malformed syntax." - `instance` (string) A URI reference or identifier that describes the specific occurrence of the problem. Example: "/api/v1/enquiries/abc" - `status` (integer, required) The HTTP status code. Example: 400 - `title` (string, required) A short, human-readable summary of the problem type. Example: "Bad Request" - `type` (string, required) The error code as a machine-readable key. Enum: "RESOURCE_NOT_FOUND", "VALIDATION_ERROR", "RESOURCE_ALREADY_EXISTS", "DUPLICATE_CLIENT_REFERENCE", "GEOCODE_FAILURE", "MALFORMED_REQUEST", "INTERNAL_SERVER_ERROR", "MAX_RESOURCE_COUNT_REACHED", "SANDBOX_SPECIFIC_ACTION_ERROR" ## Response 500 fields (application/problem+json): - `detail` (string) A human-readable explanation specific to this occurrence of the problem. Example: "The request could not be understood due to malformed syntax." - `instance` (string) A URI reference or identifier that describes the specific occurrence of the problem. Example: "/api/v1/enquiries/abc" - `status` (integer, required) The HTTP status code. Example: 400 - `title` (string, required) A short, human-readable summary of the problem type. Example: "Bad Request" - `type` (string, required) The error code as a machine-readable key. Enum: "RESOURCE_NOT_FOUND", "VALIDATION_ERROR", "RESOURCE_ALREADY_EXISTS", "DUPLICATE_CLIENT_REFERENCE", "GEOCODE_FAILURE", "MALFORMED_REQUEST", "INTERNAL_SERVER_ERROR", "MAX_RESOURCE_COUNT_REACHED", "SANDBOX_SPECIFIC_ACTION_ERROR" ## Response 401 fields ## Response 403 fields