Dom Data
Our booking engine views often contain data that other applications or widgets (for instance, a loyalty program or shopping cart abandonment program) find useful to consume. In order to provide such information in a structured and easy to consume format, we expose it as LD+JSON in the <head>
of the webpage.
We adhere semantically to schemas defined by Schema.org. The values will change depending on the current booking engine view or Funnel Step.
Dom Data Source
The data is sourced from the booking engine's data and is updated as the user interacts with the booking engine. The data is then serialized into a JSON-LD object and injected into the <head>
of the webpage.
Example of the data that is injected into the <head>
of the webpage:
{"@context":"https://schema.org","@type":"Hotel","name":"Example Hotel","address":{"@type":"PostalAddress","streetAddress":"490 Xyz Rd","addressLocality":"East Hampton","addressRegion":"NY","postalCode":"11000","addressCountry":"US"},"telephone":"tel:+1-000-000-0000","email":"hello@example-hotel.com","url":"https://example-hotel.com","amenityFeature":[{"@type":"LocationFeatureSpecification","name":"Number of rooms requested","value":1},{"@type":"LocationFeatureSpecification","name":"Number of adult guests","value":2},{"@type":"LocationFeatureSpecification","name":"Number of child guests","value":0}],"potentialAction":{"@type":"SearchAction","target":"$?startDate=null&endDate=null&adultGuestCount=2&childGuestCount=0&roomCount=1","query":"Search available rooms"}}
List of funnel steps/view that Skipper provides Dom Data for
Dates & Guests View
This view contains the search form where users can select the dates and number of guests. List of properties that are available in the LD+Json object:
List of properties that are available in the LD+Json object for Dates & Guests View:
@context
: The context of the schema. It provides the URL of the schema definition, in this case,https://schema.org
.@type
: The type of the schema. In this case, it isHotel
.name
: The name of the hotel. For example, "Example Hotel".address
: The address of the hotel, including:@type
: The type of the address schema, which isPostalAddress
.streetAddress
: The street address of the hotel, e.g., "490 Xyz Rd".addressLocality
: The locality (city) of the hotel, e.g., "East Hampton".addressRegion
: The region (state) of the hotel, e.g., "NY".postalCode
: The postal code of the hotel, e.g., "11000".addressCountry
: The country code of the hotel's address, e.g., "US".
telephone
: The telephone number of the hotel, e.g., "tel:+1-000-000-0000".email
: The email address of the hotel, e.g., "hello@example-hotel.com".url
: The URL of the hotel’s website, e.g., "https://example-hotel.com".reservationDetails
: The details of a lodging reservation, including:@context
: The context of the reservation schema,https://schema.org
.@type
: The type of the reservation schema, which isLodgingReservation
.numAdults
: The number of adult guests included in the reservation, e.g., 2.numChildren
: The number of child guests included in the reservation, e.g., 0.reservationFor
: Details of the reservation, which is another hotel schema:@type
: The type of the schema, which isHotel
.name
: The name of the hotel reserved, "Example Hotel".address
: The address of the reserved hotel, similar to the main address structure.telephone
: The telephone number of the reserved hotel.email
: The email address of the reserved hotel.url
: The URL of the reserved hotel's website.
bookingAgent
: The agent making the booking:@type
: The type of the schema, which isOrganization
.name
: The name of the booking organization, "Example Hotel".
amenityFeature
: A list of features of the hotel, with each feature including:@type
: The type of the feature schema, which isLocationFeatureSpecification
.name
: The name of the feature, such as "Number of rooms requested", "Number of adult guests", "Number of child guests".value
: The value associated with each feature, e.g., 1 for "Number of rooms requested", 2 for "Number of adult guests", 0 for "Number of child guests".
potentialAction
: An action that can be performed related to the hotel, such as a search action:@type
: The type of action, which isSearchAction
.target
: The target URL template for the search action.query
: The query associated with the search action, e.g., "Search available rooms".
Room Results View
This view contains the list of rooms that are available for booking.
List of properties that are available in the LD+Json object for Room Results View:
@context
: The context of the schema. It provides the URL of the schema definition, in this case,https://schema.org
.@type
: The type of the schema, which isHotel
.name
: The name of the hotel, e.g., "Example Hotel".address
: The address of the hotel, including:@type
: The type of the address schema, which isPostalAddress
.streetAddress
: The street address of the hotel, e.g., "490 Xyz Rd".addressLocality
: The locality (city) of the hotel, e.g., "East Hampton".addressRegion
: The region (state) of the hotel, e.g., "NY".postalCode
: The postal code of the hotel, e.g., "11000".addressCountry
: The country code of the hotel's address, e.g., "US".
telephone
: The telephone number of the hotel, e.g., "tel:+1-000-000-0000".email
: The email address of the hotel, e.g., "hello@example-hotel.com".url
: The URL of the hotel’s website, e.g., "https://example-hotel.com".reservationDetails
: Detailed reservation information, including:@context
: The context of the reservation schema,https://schema.org
.@type
: The type of the reservation schema, which isLodgingReservation
.numAdults
: The number of adult guests included in the reservation, e.g., 2.numChildren
: The number of child guests included in the reservation, e.g., 0.reservationFor
: Details of the reserved hotel, which is anotherHotel
schema:@type
: The type of the schema, which isHotel
.name
: The name of the reserved hotel, "Example Hotel".address
: The address of the reserved hotel, similar to the main address structure.telephone
: The telephone number of the reserved hotel.email
: The email address of the reserved hotel.url
: The URL of the reserved hotel's website.
bookingAgent
: The agent making the booking:@type
: The type of the schema, which isOrganization
.name
: The name of the booking organization, "Example Hotel".
offers
: A list of offers available for the hotel, each including:@type
: The type of the offer schema, which isOffer
.priceCurrency
: The currency of the offer price, e.g., "USD".price
: The price of the offer, e.g., 87.5.sku
: The stock-keeping unit identifier, which may be empty in this data.availability
: The availability status of the offer, e.g., "https://schema.org/InStock".validFrom
: The date from which the offer is valid, e.g., "2024-10-09".validThrough
: The date until which the offer is valid, e.g., "2024-10-11".itemOffered
: The item being offered, which is aRoom
schema:@type
: The type of the schema, which isRoom
.name
: The name of the room, e.g., "the Superior King".description
: The description of the room, which may be null.identifier
: The identifier for the room, e.g., "ACCKING".occupancy
: Details of the room occupancy, which is aQuantitativeValue
schema:@type
: The type of the schema, which isQuantitativeValue
.value
: The occupancy value, e.g., 3.unitCode
: The unit code for the occupancy value, e.g., "C62".
bed
: Details of the bed in the room, which is aBedDetails
schema:@type
: The type of the schema, which isBedDetails
.type
: The type of bed, e.g., "king".quantity
: The quantity of beds, e.g., 1.
image
: A list of images of the room, each being anImageObject
schema:@type
: The type of the schema, which isImageObject
.url
: The URL of the image.contentUrl
: The content URL of the image.width
: The width of the image, e.g., 300.height
: The height of the image, e.g., 0.
eligibleQuantity
: The eligible quantity for the offer, which is aQuantitativeValue
schema:@type
: The type of the schema, which isQuantitativeValue
.value
: The value of the eligible quantity, e.g., 1.
eligibleTransactionVolume
: The eligible transaction volume for the offer, which is aPriceSpecification
schema:@type
: The type of the schema, which isPriceSpecification
.priceCurrency
: The currency of the price, e.g., "USD".price
: The price of the eligible transaction volume, e.g., 87.5.
bookingDetails
: Details about the reservation booking:@type
: The type of the schema, which isReservation
.reservationFor
: The business the reservation is for, which is aLodgingBusiness
schema:@type
: The type of the schema, which isLodgingBusiness
.name
: The name of the lodging business, e.g., "Example Hotel".
startDate
: The start date of the reservation, e.g., "2024-10-09T00:00:00.000Z".endDate
: The end date of the reservation, e.g., "2024-10-11T00:00:00.000Z".numAdults
: The number of adults included in the reservation, e.g., 2.numChildren
: The number of children included in the reservation, e.g., 0.roomCount
: The number of rooms booked, e.g., 1.rateCode
: The rate code for the booking (empty in this data).groupCode
: The group code for the booking (empty in this data).iataCode
: The IATA code for the booking (empty in this data).promoCode
: The promotional code for the booking (empty in this data).couponCode
: The coupon code for the booking (empty in this data).
Room Details View
This view contains the details of a room that is available for booking and available rates and packages.
List of properties that are available in the LD+Json object for Room Details View:
Here is the outline of the properties for the given ld+json
data:
@context
: The context of the schema. It provides the URL of the schema definition, in this case,https://schema.org
.@type
: The type of the schema, which isHotel
.name
: The name of the hotel, e.g., "Example Hotel".address
: The address of the hotel, including:@type
: The type of the address schema, which isPostalAddress
.streetAddress
: The street address of the hotel, e.g., "490 Xyz Rd".addressLocality
: The locality (city) of the hotel, e.g., "East Hampton".addressRegion
: The region (state) of the hotel, e.g., "NY".postalCode
: The postal code of the hotel, e.g., "11000".addressCountry
: The country code of the hotel's address, e.g., "US".
telephone
: The telephone number of the hotel, e.g., "tel:+1-000-000-0000".email
: The email address of the hotel, e.g., "hello@example-hotel.com".url
: The URL of the hotel’s website, e.g., "https://example-hotel.com".containedInPlace
: Details about the room contained within the hotel:@type
: The type of the contained place, which isHotelRoom
.name
: The name of the room, e.g., "Superior King".description
: A description of the room, e.g., "The Superior King holds up to four people...".identifier
: A unique identifier for the room, e.g., "SKINGART".occupancy
: The occupancy details of the room, which is aQuantitativeValue
schema:@type
: The type of the schema, which isQuantitativeValue
.value
: The occupancy value, e.g., 3.unitCode
: The unit code for the occupancy value, e.g., "C62".
bed
: Details about the beds in the room, each being aBedDetails
schema:@type
: The type of the schema, which isBedDetails
.type
: The type of bed, e.g., "King".quantity
: The quantity of the beds, e.g., 1.
floorSize
: The floor size of the room, which is aQuantitativeValue
schema:@type
: The type of the schema, which isQuantitativeValue
.value
: The floor size value, e.g., 200.unitCode
: The unit code for the floor size, e.g., "FTK".
amenityFeature
: An array of amenity features available in the room (empty in this data).image
: A list of images of the room, each being anImageObject
schema:@type
: The type of the schema, which isImageObject
.url
: The URL of the image.contentUrl
: The content URL of the image.width
: The width of the image, e.g., 640.height
: The height of the image, e.g., 427.
offers
: A list of offers available for the room, each including:@type
: The type of the offer schema, which isOffer
.name
: The name of the offer, e.g., "Toast to Art".priceCurrency
: The currency of the offer price, e.g., "USD".price
: The price of the offer, e.g., 235.eligibleQuantity
: The eligible quantity for the offer, which is aQuantitativeValue
schema:@type
: The type of the schema, which isQuantitativeValue
.value
: The value of the eligible quantity, e.g., 1.
priceValidUntil
: The date until which the offer price is valid, e.g., "2024-09-19T00:00:00.000Z".sku
: The stock-keeping unit identifier, e.g., "EXONSV".itemOffered
: The item being offered, which is aProduct
schema:@type
: The type of the schema, which isProduct
.name
: The name of the product, e.g., "Toast to Art".description
: The description of the product, e.g., "Whats better than a self-guided tour...".identifier
: The identifier for the product, e.g., "400164".
availability
: The availability status of the offer, e.g., "https://schema.org/InStock".validFrom
: The date from which the offer is valid, e.g., "2024-09-17T00:00:00.000Z".validThrough
: The date until which the offer is valid, e.g., "2024-09-19T00:00:00.000Z".additionalType
: The type of the offer, e.g., "rate" or "package".url
: The URL for the offer, e.g., "https://example-hotel.com".
bookingDetails
: Details about the reservation booking:@type
: The type of the schema, which isReservation
.reservationFor
: The business the reservation is for, which is aLodgingBusiness
schema:@type
: The type of the schema, which isLodgingBusiness
.name
: The name of the lodging business, e.g., "Example Hotel".
startDate
: The start date of the reservation, e.g., "2024-09-17T00:00:00.000Z".endDate
: The end date of the reservation, e.g., "2024-09-19T00:00:00.000Z".numAdults
: The number of adults included in the reservation, e.g., 2.numChildren
: The number of children included in the reservation, e.g., 0.roomCount
: The number of rooms booked, e.g., 1.rateCode
: The rate code for the booking (empty in this data).groupCode
: The group code for the booking (empty in this data).iataCode
: The IATA code for the booking (empty in this data).promoCode
: The promotional code for the booking (empty in this data).couponCode
: The coupon code for the booking (empty in this data).
reservationDetails
: Detailed reservation information:@context
: The context of the reservation schema,https://schema.org
.@type
: The type of the reservation schema, which isLodgingReservation
.numAdults
: The number of adult guests included in the reservation, e.g., 2.numChildren
: The number of child guests included in the reservation, e.g., 0.reservationFor
: Details of the reserved hotel, which is anotherHotel
schema:@type
: The type of the schema, which isHotel
.name
: The name of the reserved hotel, "Example Hotel".address
: The address of the reserved hotel, similar to the main address structure.telephone
: The telephone number of the reserved hotel.email
: The email address of the reserved hotel.url
: The URL of the reserved hotel's website.
bookingAgent
: The agent making the booking:@type
: The type of the schema, which isOrganization
.name
: The name of the booking organization, "Example Hotel".
Guest Details/ Payment
This view contains the form where users can enter their details and payment information.
List of properties that are available in the LD+Json object for Guest Details/ Payment View:
Here is the outline of the properties for the given ld+json
data:
@context
: The context of the schema. It provides the URL of the schema definition, in this case,https://schema.org
.@type
: The type of the schema, which isHotel
.name
: The name of the hotel, e.g., "Example Hotel".address
: The address of the hotel, including:@type
: The type of the address schema, which isPostalAddress
.streetAddress
: The street address of the hotel, e.g., "490 Xyz Rd".addressLocality
: The locality (city) of the hotel, e.g., "East Hampton".addressRegion
: The region (state) of the hotel, e.g., "NY".postalCode
: The postal code of the hotel, e.g., "11000".addressCountry
: The country code of the hotel's address, e.g., "US".
telephone
: The telephone number of the hotel, e.g., "tel:+1-000-000-0000".email
: The email address of the hotel, e.g., "hello@example-hotel.com".url
: The URL of the hotel’s website, e.g., "https://example-hotel.com".reservationDetails
: Detailed reservation information, including:@context
: The context of the reservation schema,https://schema.org
.@type
: The type of the reservation schema, which isLodgingReservation
.numAdults
: The number of adult guests included in the reservation, e.g., 2.numChildren
: The number of child guests included in the reservation, e.g., 0.reservationFor
: Details of the reserved hotel, which is anotherHotel
schema:@type
: The type of the schema, which isHotel
.name
: The name of the reserved hotel, "Example Hotel".address
: The address of the reserved hotel, similar to the main address structure.telephone
: The telephone number of the reserved hotel.email
: The email address of the reserved hotel.url
: The URL of the reserved hotel's website.
underName
: The person under whose name the reservation is made, which is aPerson
schema:@type
: The type of the schema, which isPerson
.givenName
: The given name of the person (empty in this data).familyName
: The family name of the person (empty in this data).email
: The email address of the person (empty in this data).telephone
: The telephone number of the person (empty in this data).
bookingAgent
: The agent making the booking:@type
: The type of the schema, which isOrganization
.name
: The name of the booking organization, "Example Hotel".
Confirmation/ Cancelation View
This view contains the confirmation of the reservation with confirmation data, and the option to cancel the reservation.
List of properties that are available in the LD+Json object for Confirmation/ Cancelation View:
Here is the outline of the properties for the given ld+json
data:
@context
: The context of the schema. It provides the URL of the schema definition, in this case,https://schema.org
.@type
: The type of the schema, which isHotel
.name
: The name of the hotel, e.g., "Example Hotel".address
: The address of the hotel, including:@type
: The type of the address schema, which isPostalAddress
.streetAddress
: The street address of the hotel, e.g., "490 Xyz Rd".addressLocality
: The locality (city) of the hotel, e.g., "East Hampton".addressRegion
: The region (state) of the hotel, e.g., "NY".postalCode
: The postal code of the hotel, e.g., "11000".addressCountry
: The country code of the hotel's address, e.g., "US".
telephone
: The telephone number of the hotel, e.g., "tel:+1-000-000-0000".email
: The email address of the hotel, e.g., "hello@example-hotel.com".url
: The URL of the hotel’s website, e.g., "https://example-hotel.com".reservationDetails
: Detailed reservation information, including:@context
: The context of the reservation schema,https://schema.org
.@type
: The type of the reservation schema, which isLodgingReservation
.numAdults
: The number of adult guests included in the reservation, e.g., 2.numChildren
: The number of child guests included in the reservation, e.g., 0.reservationFor
: Details of the reserved hotel, which is anotherHotel
schema:@type
: The type of the schema, which isHotel
.name
: The name of the reserved hotel, "Example Hotel".address
: The address of the reserved hotel, similar to the main address structure.telephone
: The telephone number of the reserved hotel.email
: The email address of the reserved hotel.url
: The URL of the reserved hotel's website.
underName
: The person under whose name the reservation is made, which is aPerson
schema:@type
: The type of the schema, which isPerson
.givenName
: The given name of the person, e.g., "First Name".familyName
: The family name of the person, e.g., "Last Name".email
: The email address of the person, e.g., "person@email.com".telephone
: The telephone number of the person, stored in a JSON format string, e.g.,{"countryCode":1,"phoneNumber":"12345678"}
.
bookingAgent
: The agent making the booking:@type
: The type of the schema, which isOrganization
.name
: The name of the booking organization, "Example Hotel".
manageReservationUrl
: The URL to manage the reservation.