En línea ahora  

/v1/discovery/

Public place discovery and indicative reservation pricing for agents. No account actions.
GET

/v1/discovery/get_best_places

#
Get the AppointmentTrader city hotlist. Ranking is not evidence of available reservations. Public-by-design: exposes public city rankings, without account data or API charges.

Parámetros

NombreTipoObligatorioPredeterminadoDescripción
citySlug string si — Canonical city slug from /v1/discovery/get_cities.
categorySlug string No "" Optional canonical category, such as restaurants.
pageSize int No 10 Number of results, 1-25.
pageNumber int No 0 Zero-based page, 0-20.
Ejemplo de solicitud (cURL)
curl --get \
  'https://es.appointmenttrader.com/v1/discovery/get_best_places' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'citySlug={{citySlug}}' \
  --data-urlencode 'categorySlug={{categorySlug}}' \
  --data-urlencode 'pageSize={{pageSize}}' \
  --data-urlencode 'pageNumber={{pageNumber}}'

Respuesta

JSON
See the shared response schema and synthetic example.
Campos de respuesta
CampoTipoObligatorioDescripción
$discovery_get_best_places_Response si
$.oneOf[0] si
$.oneOf[0].allOf[0]object si
$.oneOf[0].allOf[0].RequestUserAliasstring si
$.oneOf[0].allOf[0].RequestPathstring | null si
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" si
$.oneOf[0].allOf[0].ResponseCodeinteger si
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object si
$.oneOf[0].allOf[1].Payloadobject si
$.oneOf[0].allOf[1].Payload.cityobject si
$.oneOf[0].allOf[1].Payload.city.cityName si
$.oneOf[0].allOf[1].Payload.city.cityName.anyOf[0]string si
$.oneOf[0].allOf[1].Payload.city.cityName.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.city.citySlugstring si
$.oneOf[0].allOf[1].Payload.city.countryCode si
$.oneOf[0].allOf[1].Payload.city.countryCode.anyOf[0]string si
$.oneOf[0].allOf[1].Payload.city.countryCode.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.city.isoRegion No
$.oneOf[0].allOf[1].Payload.city.isoRegion.anyOf[0]string No
$.oneOf[0].allOf[1].Payload.city.isoRegion.anyOf[1]null No
$.oneOf[0].allOf[1].Payload.city.stateShort No
$.oneOf[0].allOf[1].Payload.city.stateShort.anyOf[0]string No
$.oneOf[0].allOf[1].Payload.city.stateShort.anyOf[1]null No
$.oneOf[0].allOf[1].Payload.placesarray si
$.oneOf[0].allOf[1].Payload.places[]object No
$.oneOf[0].allOf[1].Payload.places[].locationAliasstring si
$.oneOf[0].allOf[1].Payload.places[].namestring si
$.oneOf[0].allOf[1].Payload.places[].cityNamestring si
$.oneOf[0].allOf[1].Payload.places[].citySlugstring si
$.oneOf[0].allOf[1].Payload.places[].countryCodestring si
$.oneOf[0].allOf[1].Payload.places[].categorySlugstring si
$.oneOf[0].allOf[1].Payload.places[].addressstring si
$.oneOf[0].allOf[1].Payload.places[].urlstring si
$.oneOf[0].allOf[1].Payload.places[].rankinteger si
$.oneOf[0].allOf[1].Payload.places[].locationIDinteger si
$.oneOf[0].allOf[1].Payload.rankingBasis = "AppointmentTrader city hotlist" si
$.oneOf[0].allOf[1].Payload.rankingCacheSeconds = 86400 si
$.oneOf[0].allOf[1].Payload.availabilityIncluded = false si
$.oneOf[0].allOf[1].Payload.checkedAtstring si
$.oneOf[0].allOf[1].Payload.paginationobject si
$.oneOf[0].allOf[1].Payload.pagination.pageSizeinteger si
$.oneOf[0].allOf[1].Payload.pagination.pageNumberinteger si
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber si
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[0]integer si
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.pagination.hasMoreboolean si
$.oneOf[0].allOf[1].Payload.pagination.refineSearchboolean si
$.oneOf[1]object si
$.oneOf[1].RequestUserAliasstring si
$.oneOf[1].RequestPathstring | null si
$.oneOf[1].RequestStatus = "Failed" si
$.oneOf[1].ResponseCodeinteger si
$.oneOf[1].ResponseMessageAPIResponseMessage si
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[1].ResponseMessage.oneOf[1]array si
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object si
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Ejemplo de respuesta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/discovery/get_best_places",
    "RequestUserAlias": "example-user",
    "Payload": {
        "city": {
            "cityName": "synthetic-example",
            "citySlug": "synthetic-example",
            "countryCode": "synthetic-example"
        },
        "places": [],
        "rankingBasis": "AppointmentTrader city hotlist",
        "rankingCacheSeconds": 86400,
        "availabilityIncluded": false,
        "checkedAt": "2030-01-01T12:00:00Z",
        "pagination": {
            "pageSize": 1,
            "pageNumber": 0,
            "nextPageNumber": 1,
            "hasMore": false,
            "refineSearch": false
        }
    }
}
Documentación del endpoint legible por máquinas
GET

/v1/discovery/get_cities

#
Find canonical cities and airport-backed markets; choose among ambiguous matches. Public-by-design: exposes only public city metadata, without account data or API charges.

Parámetros

NombreTipoObligatorioPredeterminadoDescripción
searchFilter string No "" Literal city name to search.
pageSize int No 10 Number of results, 1-25.
pageNumber int No 0 Zero-based page, 0-20.
Ejemplo de solicitud (cURL)
curl --get \
  'https://es.appointmenttrader.com/v1/discovery/get_cities' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'searchFilter={{searchFilter}}' \
  --data-urlencode 'pageSize={{pageSize}}' \
  --data-urlencode 'pageNumber={{pageNumber}}'

Respuesta

JSON
See the shared response schema and synthetic example.
Campos de respuesta
CampoTipoObligatorioDescripción
$discovery_get_cities_Response si
$.oneOf[0] si
$.oneOf[0].allOf[0]object si
$.oneOf[0].allOf[0].RequestUserAliasstring si
$.oneOf[0].allOf[0].RequestPathstring | null si
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" si
$.oneOf[0].allOf[0].ResponseCodeinteger si
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object si
$.oneOf[0].allOf[1].Payloadobject si
$.oneOf[0].allOf[1].Payload.citiesarray si
$.oneOf[0].allOf[1].Payload.cities[]object No
$.oneOf[0].allOf[1].Payload.cities[].cityIDinteger si
$.oneOf[0].allOf[1].Payload.cities[].cityName si
$.oneOf[0].allOf[1].Payload.cities[].cityName.anyOf[0]string si
$.oneOf[0].allOf[1].Payload.cities[].cityName.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.cities[].citySlugstring si
$.oneOf[0].allOf[1].Payload.cities[].cityCode si
$.oneOf[0].allOf[1].Payload.cities[].cityCode.anyOf[0]string si
$.oneOf[0].allOf[1].Payload.cities[].cityCode.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.cities[].countryCode si
$.oneOf[0].allOf[1].Payload.cities[].countryCode.anyOf[0]string si
$.oneOf[0].allOf[1].Payload.cities[].countryCode.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.cities[].regionCode si
$.oneOf[0].allOf[1].Payload.cities[].regionCode.anyOf[0]string si
$.oneOf[0].allOf[1].Payload.cities[].regionCode.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.checkedAtstring si
$.oneOf[0].allOf[1].Payload.paginationobject si
$.oneOf[0].allOf[1].Payload.pagination.pageSizeinteger si
$.oneOf[0].allOf[1].Payload.pagination.pageNumberinteger si
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber si
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[0]integer si
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.pagination.hasMoreboolean si
$.oneOf[0].allOf[1].Payload.pagination.refineSearchboolean si
$.oneOf[1]object si
$.oneOf[1].RequestUserAliasstring si
$.oneOf[1].RequestPathstring | null si
$.oneOf[1].RequestStatus = "Failed" si
$.oneOf[1].ResponseCodeinteger si
$.oneOf[1].ResponseMessageAPIResponseMessage si
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[1].ResponseMessage.oneOf[1]array si
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object si
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Ejemplo de respuesta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/discovery/get_cities",
    "RequestUserAlias": "example-user",
    "Payload": {
        "cities": [],
        "checkedAt": "2030-01-01T12:00:00Z",
        "pagination": {
            "pageSize": 1,
            "pageNumber": 0,
            "nextPageNumber": 1,
            "hasMore": false,
            "refineSearch": false
        }
    }
}
Documentación del endpoint legible por máquinas
GET

/v1/discovery/get_place

#
Read a public place and its valid inventory choices before checking a reservation price. Public-by-design: exposes public venue and inventory metadata, without account data or API charges.

Parámetros

NombreTipoObligatorioPredeterminadoDescripción
locationAlias string si — Canonical alias from /v1/discovery/get_places.
Ejemplo de solicitud (cURL)
curl --get \
  'https://es.appointmenttrader.com/v1/discovery/get_place' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'locationAlias={{locationAlias}}'

Respuesta

JSON
See the shared response schema and synthetic example.
Campos de respuesta
CampoTipoObligatorioDescripción
$discovery_get_place_Response si
$.oneOf[0] si
$.oneOf[0].allOf[0]object si
$.oneOf[0].allOf[0].RequestUserAliasstring si
$.oneOf[0].allOf[0].RequestPathstring | null si
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" si
$.oneOf[0].allOf[0].ResponseCodeinteger si
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object si
$.oneOf[0].allOf[1].Payloadobject si
$.oneOf[0].allOf[1].Payload.locationIDinteger si
$.oneOf[0].allOf[1].Payload.locationAliasstring si
$.oneOf[0].allOf[1].Payload.namestring si
$.oneOf[0].allOf[1].Payload.cityNamestring si
$.oneOf[0].allOf[1].Payload.citySlugstring si
$.oneOf[0].allOf[1].Payload.countryCodestring si
$.oneOf[0].allOf[1].Payload.regionCodestring si
$.oneOf[0].allOf[1].Payload.addressstring si
$.oneOf[0].allOf[1].Payload.timezonestring si
$.oneOf[0].allOf[1].Payload.categorySlugstring si
$.oneOf[0].allOf[1].Payload.urlstring si
$.oneOf[0].allOf[1].Payload.timeRangeUnitstring si
$.oneOf[0].allOf[1].Payload.maxTimeRangeUnitsinteger si
$.oneOf[0].allOf[1].Payload.reservationPricingAllowedboolean si
$.oneOf[0].allOf[1].Payload.inventoryTypesarray si
$.oneOf[0].allOf[1].Payload.inventoryTypes[]object No
$.oneOf[0].allOf[1].Payload.inventoryTypes[].inventoryTypeIDinteger si
$.oneOf[0].allOf[1].Payload.inventoryTypes[].namestring si
$.oneOf[0].allOf[1].Payload.inventoryTypes[].headcount si
$.oneOf[0].allOf[1].Payload.inventoryTypes[].headcount.anyOf[0]integer si
$.oneOf[0].allOf[1].Payload.inventoryTypes[].headcount.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.checkedAtstring si
$.oneOf[1]object si
$.oneOf[1].RequestUserAliasstring si
$.oneOf[1].RequestPathstring | null si
$.oneOf[1].RequestStatus = "Failed" si
$.oneOf[1].ResponseCodeinteger si
$.oneOf[1].ResponseMessageAPIResponseMessage si
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[1].ResponseMessage.oneOf[1]array si
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object si
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Ejemplo de respuesta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/discovery/get_place",
    "RequestUserAlias": "example-user",
    "Payload": {
        "locationID": 0,
        "locationAlias": "synthetic-example",
        "name": "synthetic-example",
        "cityName": "synthetic-example",
        "citySlug": "synthetic-example",
        "countryCode": "synthetic-example",
        "regionCode": "synthetic-example",
        "address": "synthetic-example",
        "timezone": "synthetic-example",
        "categorySlug": "synthetic-example",
        "url": "synthetic-example",
        "timeRangeUnit": "synthetic-example",
        "maxTimeRangeUnits": 0,
        "reservationPricingAllowed": false,
        "inventoryTypes": [],
        "checkedAt": "2030-01-01T12:00:00Z"
    }
}
Documentación del endpoint legible por máquinas
GET

/v1/discovery/get_places

#
Search public place names and aliases. Resolve the intended place from these matches. Public-by-design: exposes public place metadata only, without account data or API charges.

Parámetros

NombreTipoObligatorioPredeterminadoDescripción
searchFilter string si — Literal place name, at least two characters.
citySlug string No "" Optional canonical city slug from /v1/discovery/get_cities.
pageSize int No 10 Number of results, 1-25.
pageNumber int No 0 Zero-based page, 0-20.
Ejemplo de solicitud (cURL)
curl --get \
  'https://es.appointmenttrader.com/v1/discovery/get_places' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'searchFilter={{searchFilter}}' \
  --data-urlencode 'citySlug={{citySlug}}' \
  --data-urlencode 'pageSize={{pageSize}}' \
  --data-urlencode 'pageNumber={{pageNumber}}'

Respuesta

JSON
See the shared response schema and synthetic example.
Campos de respuesta
CampoTipoObligatorioDescripción
$discovery_get_places_Response si
$.oneOf[0] si
$.oneOf[0].allOf[0]object si
$.oneOf[0].allOf[0].RequestUserAliasstring si
$.oneOf[0].allOf[0].RequestPathstring | null si
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" si
$.oneOf[0].allOf[0].ResponseCodeinteger si
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object si
$.oneOf[0].allOf[1].Payloadobject si
$.oneOf[0].allOf[1].Payload.placesarray si
$.oneOf[0].allOf[1].Payload.places[]object No
$.oneOf[0].allOf[1].Payload.places[].locationIDinteger si
$.oneOf[0].allOf[1].Payload.places[].locationAliasstring si
$.oneOf[0].allOf[1].Payload.places[].namestring si
$.oneOf[0].allOf[1].Payload.places[].cityNamestring si
$.oneOf[0].allOf[1].Payload.places[].citySlugstring si
$.oneOf[0].allOf[1].Payload.places[].countryCodestring si
$.oneOf[0].allOf[1].Payload.places[].regionCodestring si
$.oneOf[0].allOf[1].Payload.places[].addressstring si
$.oneOf[0].allOf[1].Payload.places[].timezonestring si
$.oneOf[0].allOf[1].Payload.places[].categorySlugstring si
$.oneOf[0].allOf[1].Payload.places[].urlstring si
$.oneOf[0].allOf[1].Payload.checkedAtstring si
$.oneOf[0].allOf[1].Payload.paginationobject si
$.oneOf[0].allOf[1].Payload.pagination.pageSizeinteger si
$.oneOf[0].allOf[1].Payload.pagination.pageNumberinteger si
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber si
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[0]integer si
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.pagination.hasMoreboolean si
$.oneOf[0].allOf[1].Payload.pagination.refineSearchboolean si
$.oneOf[1]object si
$.oneOf[1].RequestUserAliasstring si
$.oneOf[1].RequestPathstring | null si
$.oneOf[1].RequestStatus = "Failed" si
$.oneOf[1].ResponseCodeinteger si
$.oneOf[1].ResponseMessageAPIResponseMessage si
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[1].ResponseMessage.oneOf[1]array si
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object si
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Ejemplo de respuesta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/discovery/get_places",
    "RequestUserAlias": "example-user",
    "Payload": {
        "places": [],
        "checkedAt": "2030-01-01T12:00:00Z",
        "pagination": {
            "pageSize": 1,
            "pageNumber": 0,
            "nextPageNumber": 1,
            "hasMore": false,
            "refineSearch": false
        }
    }
}
Documentación del endpoint legible por máquinas
GET

/v1/discovery/get_reservation_pricing

#
Check public listings and an indicative reservation acquisition price for a specific venue-local window. Historical comps, external references and configured defaults are labeled separately. This is not a checkout quote, does not include all fees or the meal unless explicitly stated, and never guarantees availability or creates a bid. Public-by-design: public inventory and anonymized price evidence only; no account data or API charges.

Parámetros

NombreTipoObligatorioPredeterminadoDescripción
locationAlias string si — Canonical alias from /v1/discovery/get_places.
inventoryTypeID int si — Canonical inventory ID from /v1/discovery/get_place.
date string si — Venue-local date, YYYY-MM-DD.
startHour int si — Inclusive venue-local start hour, 0-23.
endHour int si — Exclusive venue-local end hour, 1-24.
timeRangeUnits int No 1 Category duration, default 1; day categories require hours 0-24.
Ejemplo de solicitud (cURL)
curl --get \
  'https://es.appointmenttrader.com/v1/discovery/get_reservation_pricing' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'locationAlias={{locationAlias}}' \
  --data-urlencode 'inventoryTypeID={{inventoryTypeID}}' \
  --data-urlencode 'date={{date}}' \
  --data-urlencode 'startHour={{startHour}}' \
  --data-urlencode 'endHour={{endHour}}' \
  --data-urlencode 'timeRangeUnits={{timeRangeUnits}}'

Respuesta

JSON
See the shared response schema and synthetic example.
Campos de respuesta
CampoTipoObligatorioDescripción
$discovery_get_reservation_pricing_Response si
$.oneOf[0] si
$.oneOf[0].allOf[0]object si
$.oneOf[0].allOf[0].RequestUserAliasstring si
$.oneOf[0].allOf[0].RequestPathstring | null si
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" si
$.oneOf[0].allOf[0].ResponseCodeinteger si
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object si
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object si
$.oneOf[0].allOf[1].Payloadobject si
$.oneOf[0].allOf[1].Payload.locationobject si
$.oneOf[0].allOf[1].Payload.location.aliasstring si
$.oneOf[0].allOf[1].Payload.location.namestring si
$.oneOf[0].allOf[1].Payload.location.urlstring si
$.oneOf[0].allOf[1].Payload.location.timezonestring si
$.oneOf[0].allOf[1].Payload.location.timezoneSource = "location_configuration" si
$.oneOf[0].allOf[1].Payload.inventoryobject si
$.oneOf[0].allOf[1].Payload.inventory.idinteger si
$.oneOf[0].allOf[1].Payload.inventory.namestring si
$.oneOf[0].allOf[1].Payload.inventory.priceIncludesServiceboolean si
$.oneOf[0].allOf[1].Payload.requestobject si
$.oneOf[0].allOf[1].Payload.request.datestring si
$.oneOf[0].allOf[1].Payload.request.endDatestring si
$.oneOf[0].allOf[1].Payload.request.startHourinteger si
$.oneOf[0].allOf[1].Payload.request.endHourinteger si
$.oneOf[0].allOf[1].Payload.request.endHourExclusive = true si
$.oneOf[0].allOf[1].Payload.request.timeRangeUnitstring ["Hour","Day"] si
$.oneOf[0].allOf[1].Payload.request.timeRangeUnitsinteger si
$.oneOf[0].allOf[1].Payload.availabilityobject si
$.oneOf[0].allOf[1].Payload.availability.statusstring ["restricted","no_public_listings","listings_disabled","available","no_public_listings_in_returned_sample"] si
$.oneOf[0].allOf[1].Payload.availability.matchingListingCountinteger si
$.oneOf[0].allOf[1].Payload.availability.resultSetCompleteboolean si
$.oneOf[0].allOf[1].Payload.availability.lowestAskingPriceMinor si
$.oneOf[0].allOf[1].Payload.availability.lowestAskingPriceMinor.anyOf[0]integer si
$.oneOf[0].allOf[1].Payload.availability.lowestAskingPriceMinor.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.availability.currency = "USD" si
$.oneOf[0].allOf[1].Payload.availability.listingsarray si
$.oneOf[0].allOf[1].Payload.availability.listings[]object No
$.oneOf[0].allOf[1].Payload.availability.listings[].listingIDstring si
$.oneOf[0].allOf[1].Payload.availability.listings[].datestring si
$.oneOf[0].allOf[1].Payload.availability.listings[].endDatestring si
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow si
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[0]object si
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[0].startHourinteger si
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[0].endHourinteger si
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[0].exactTimeDisclosed = false si
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.availability.listings[].askingPriceMinorinteger si
$.oneOf[0].allOf[1].Payload.availability.listings[].currency = "USD" si
$.oneOf[0].allOf[1].Payload.availability.listings[].isCheckoutQuote = false si
$.oneOf[0].allOf[1].Payload.availability.listings[].urlstring si
$.oneOf[0].allOf[1].Payload.availability.observedAtstring si
$.oneOf[0].allOf[1].Payload.estimateDiscoveryPriceEstimate si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0]object si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].currency = "USD" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].amountMinorinteger si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].lowAmountMinor = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].highAmountMinor = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].source = "external_reference" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].sampleCountinteger si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].sameLocationSampleCount = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].inventoryMatch = "exact" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].priceFactor = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].requestedDurationMatched = true si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].isHistoricalEvidence = false si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].isGuaranteed = false si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].scope = "recorded_provider_rates_for_requested_dates" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].requiresLiveProviderConfirmation = true si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1]object si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].currency = "USD" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].amountMinorinteger si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lowAmountMinor si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lowAmountMinor.anyOf[0]integer si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lowAmountMinor.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].highAmountMinor si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].highAmountMinor.anyOf[0]integer si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].highAmountMinor.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].source = "completed_transactions" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].sampleCountinteger si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].sameLocationSampleCountinteger si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].inventoryMatchstring ["exact","category_scaled"] si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].priceFactor si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].priceFactor.anyOf[0]number si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].priceFactor.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].requestedDurationMatchedboolean si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].isHistoricalEvidence = true si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].isGuaranteed = false si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].scopestring ["same_location","same_category_nearest_locations_first"] si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].sampleLimit = 5 si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lookbackMonthsinteger [3,24] si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lookbackDateField = "transaction_last_updated" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].completionDateRangeKnown = false si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].comparableDaysNoticeinteger si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].comparableMaturityTimezonestring si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2]object si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].currency = "USD" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].amountMinorinteger si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].lowAmountMinor = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].highAmountMinor = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].source = "external_history" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].sampleCount = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].sameLocationSampleCount = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].inventoryMatch = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].priceFactor = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].requestedDurationMatched = true si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].isHistoricalEvidence = true si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].isGuaranteed = false si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].scope = "inventory_popularity_and_maturity_with_canonical_fallback" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].containsPricingAdjustment = true si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3]object si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].currency = "USD" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].amountMinorinteger si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].lowAmountMinor = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].highAmountMinor = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].source = "configured_default" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].sampleCount = 0 si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].sameLocationSampleCount = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].inventoryMatch = "configured_inventory_default" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].priceFactor = null si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].requestedDurationMatched = true si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].isHistoricalEvidence = false si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].isGuaranteed = false si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].scope = "configured_starting_amount_without_comparable_evidence" si
$.oneOf[0].allOf[1].Payload.estimate.oneOf[4]null si
$.oneOf[0].allOf[1].Payload.pricingContextobject si
$.oneOf[0].allOf[1].Payload.pricingContext.popularityBracket si
$.oneOf[0].allOf[1].Payload.pricingContext.popularityBracket.anyOf[0]integer si
$.oneOf[0].allOf[1].Payload.pricingContext.popularityBracket.anyOf[1]null si
$.oneOf[0].allOf[1].Payload.pricingContext.daysNoticeinteger si
$.oneOf[0].allOf[1].Payload.pricingContext.observedAtstring si
$.oneOf[0].allOf[1].Payload.isCheckoutQuote = false si
$.oneOf[0].allOf[1].Payload.additionalFeesMayApply = true si
$.oneOf[0].allOf[1].Payload.guaranteesAvailability = false si
$.oneOf[0].allOf[1].Payload.canPlaceBid = false si
$.oneOf[1]object si
$.oneOf[1].RequestUserAliasstring si
$.oneOf[1].RequestPathstring | null si
$.oneOf[1].RequestStatus = "Failed" si
$.oneOf[1].ResponseCodeinteger si
$.oneOf[1].ResponseMessageAPIResponseMessage si
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null si
$.oneOf[1].ResponseMessage.oneOf[1]array si
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object si
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Ejemplo de respuesta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/discovery/get_reservation_pricing",
    "RequestUserAlias": "example-user",
    "Payload": {
        "location": {
            "alias": "synthetic-example",
            "name": "synthetic-example",
            "url": "synthetic-example",
            "timezone": "synthetic-example",
            "timezoneSource": "location_configuration"
        },
        "inventory": {
            "id": 0,
            "name": "synthetic-example",
            "priceIncludesService": false
        },
        "request": {
            "date": "2030-01-15",
            "endDate": "2030-01-15",
            "startHour": 0,
            "endHour": 0,
            "endHourExclusive": true,
            "timeRangeUnit": "Hour",
            "timeRangeUnits": 0
        },
        "availability": {
            "status": "restricted",
            "matchingListingCount": 0,
            "resultSetComplete": false,
            "lowestAskingPriceMinor": 0,
            "currency": "USD",
            "listings": [],
            "observedAt": "2030-01-01T12:00:00Z"
        },
        "estimate": {
            "currency": "USD",
            "amountMinor": 0,
            "lowAmountMinor": null,
            "highAmountMinor": null,
            "source": "external_reference",
            "sampleCount": 0,
            "sameLocationSampleCount": null,
            "inventoryMatch": "exact",
            "priceFactor": null,
            "requestedDurationMatched": true,
            "isHistoricalEvidence": false,
            "isGuaranteed": false,
            "scope": "recorded_provider_rates_for_requested_dates",
            "requiresLiveProviderConfirmation": true
        },
        "pricingContext": {
            "popularityBracket": 0,
            "daysNotice": 0,
            "observedAt": "2030-01-01T12:00:00Z"
        },
        "isCheckoutQuote": false,
        "additionalFeesMayApply": true,
        "guaranteesAvailability": false,
        "canPlaceBid": false
    }
}
Documentación del endpoint legible por máquinas