현재 온라인  

/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.

매개변수

이름유형필수기본값설명
citySlug string 예 — Canonical city slug from /v1/discovery/get_cities.
categorySlug string 아니요 "" Optional canonical category, such as restaurants.
pageSize int 아니요 10 Number of results, 1-25.
pageNumber int 아니요 0 Zero-based page, 0-20.
요청 예제(cURL)
curl --get \
  'https://kr.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}}'

반환값

JSON
See the shared response schema and synthetic example.
응답 필드
필드유형필수설명
$discovery_get_best_places_Response 예
$.oneOf[0] 예
$.oneOf[0].allOf[0]object 예
$.oneOf[0].allOf[0].RequestUserAliasstring 예
$.oneOf[0].allOf[0].RequestPathstring | null 예
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" 예
$.oneOf[0].allOf[0].ResponseCodeinteger 예
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring 아니요
$.oneOf[0].allOf[1]object 예
$.oneOf[0].allOf[1].Payloadobject 예
$.oneOf[0].allOf[1].Payload.cityobject 예
$.oneOf[0].allOf[1].Payload.city.cityName 예
$.oneOf[0].allOf[1].Payload.city.cityName.anyOf[0]string 예
$.oneOf[0].allOf[1].Payload.city.cityName.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.city.citySlugstring 예
$.oneOf[0].allOf[1].Payload.city.countryCode 예
$.oneOf[0].allOf[1].Payload.city.countryCode.anyOf[0]string 예
$.oneOf[0].allOf[1].Payload.city.countryCode.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.city.isoRegion 아니요
$.oneOf[0].allOf[1].Payload.city.isoRegion.anyOf[0]string 아니요
$.oneOf[0].allOf[1].Payload.city.isoRegion.anyOf[1]null 아니요
$.oneOf[0].allOf[1].Payload.city.stateShort 아니요
$.oneOf[0].allOf[1].Payload.city.stateShort.anyOf[0]string 아니요
$.oneOf[0].allOf[1].Payload.city.stateShort.anyOf[1]null 아니요
$.oneOf[0].allOf[1].Payload.placesarray 예
$.oneOf[0].allOf[1].Payload.places[]object 아니요
$.oneOf[0].allOf[1].Payload.places[].locationAliasstring 예
$.oneOf[0].allOf[1].Payload.places[].namestring 예
$.oneOf[0].allOf[1].Payload.places[].cityNamestring 예
$.oneOf[0].allOf[1].Payload.places[].citySlugstring 예
$.oneOf[0].allOf[1].Payload.places[].countryCodestring 예
$.oneOf[0].allOf[1].Payload.places[].categorySlugstring 예
$.oneOf[0].allOf[1].Payload.places[].addressstring 예
$.oneOf[0].allOf[1].Payload.places[].urlstring 예
$.oneOf[0].allOf[1].Payload.places[].rankinteger 예
$.oneOf[0].allOf[1].Payload.places[].locationIDinteger 예
$.oneOf[0].allOf[1].Payload.rankingBasis = "AppointmentTrader city hotlist" 예
$.oneOf[0].allOf[1].Payload.rankingCacheSeconds = 86400 예
$.oneOf[0].allOf[1].Payload.availabilityIncluded = false 예
$.oneOf[0].allOf[1].Payload.checkedAtstring 예
$.oneOf[0].allOf[1].Payload.paginationobject 예
$.oneOf[0].allOf[1].Payload.pagination.pageSizeinteger 예
$.oneOf[0].allOf[1].Payload.pagination.pageNumberinteger 예
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber 예
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[0]integer 예
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.pagination.hasMoreboolean 예
$.oneOf[0].allOf[1].Payload.pagination.refineSearchboolean 예
$.oneOf[1]object 예
$.oneOf[1].RequestUserAliasstring 예
$.oneOf[1].RequestPathstring | null 예
$.oneOf[1].RequestStatus = "Failed" 예
$.oneOf[1].ResponseCodeinteger 예
$.oneOf[1].ResponseMessageAPIResponseMessage 예
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[1].ResponseMessage.oneOf[1]array 예
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[1].ResponseMessage.oneOf[2]object 예
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[1].RequestImpersonatedByUserAliasstring 아니요
응답 예제
{
    "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
        }
    }
}
기계가 읽을 수 있는 엔드포인트 문서
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.

매개변수

이름유형필수기본값설명
searchFilter string 아니요 "" Literal city name to search.
pageSize int 아니요 10 Number of results, 1-25.
pageNumber int 아니요 0 Zero-based page, 0-20.
요청 예제(cURL)
curl --get \
  'https://kr.appointmenttrader.com/v1/discovery/get_cities' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'searchFilter={{searchFilter}}' \
  --data-urlencode 'pageSize={{pageSize}}' \
  --data-urlencode 'pageNumber={{pageNumber}}'

반환값

JSON
See the shared response schema and synthetic example.
응답 필드
필드유형필수설명
$discovery_get_cities_Response 예
$.oneOf[0] 예
$.oneOf[0].allOf[0]object 예
$.oneOf[0].allOf[0].RequestUserAliasstring 예
$.oneOf[0].allOf[0].RequestPathstring | null 예
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" 예
$.oneOf[0].allOf[0].ResponseCodeinteger 예
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring 아니요
$.oneOf[0].allOf[1]object 예
$.oneOf[0].allOf[1].Payloadobject 예
$.oneOf[0].allOf[1].Payload.citiesarray 예
$.oneOf[0].allOf[1].Payload.cities[]object 아니요
$.oneOf[0].allOf[1].Payload.cities[].cityIDinteger 예
$.oneOf[0].allOf[1].Payload.cities[].cityName 예
$.oneOf[0].allOf[1].Payload.cities[].cityName.anyOf[0]string 예
$.oneOf[0].allOf[1].Payload.cities[].cityName.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.cities[].citySlugstring 예
$.oneOf[0].allOf[1].Payload.cities[].cityCode 예
$.oneOf[0].allOf[1].Payload.cities[].cityCode.anyOf[0]string 예
$.oneOf[0].allOf[1].Payload.cities[].cityCode.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.cities[].countryCode 예
$.oneOf[0].allOf[1].Payload.cities[].countryCode.anyOf[0]string 예
$.oneOf[0].allOf[1].Payload.cities[].countryCode.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.cities[].regionCode 예
$.oneOf[0].allOf[1].Payload.cities[].regionCode.anyOf[0]string 예
$.oneOf[0].allOf[1].Payload.cities[].regionCode.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.checkedAtstring 예
$.oneOf[0].allOf[1].Payload.paginationobject 예
$.oneOf[0].allOf[1].Payload.pagination.pageSizeinteger 예
$.oneOf[0].allOf[1].Payload.pagination.pageNumberinteger 예
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber 예
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[0]integer 예
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.pagination.hasMoreboolean 예
$.oneOf[0].allOf[1].Payload.pagination.refineSearchboolean 예
$.oneOf[1]object 예
$.oneOf[1].RequestUserAliasstring 예
$.oneOf[1].RequestPathstring | null 예
$.oneOf[1].RequestStatus = "Failed" 예
$.oneOf[1].ResponseCodeinteger 예
$.oneOf[1].ResponseMessageAPIResponseMessage 예
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[1].ResponseMessage.oneOf[1]array 예
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[1].ResponseMessage.oneOf[2]object 예
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[1].RequestImpersonatedByUserAliasstring 아니요
응답 예제
{
    "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
        }
    }
}
기계가 읽을 수 있는 엔드포인트 문서
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.

매개변수

이름유형필수기본값설명
locationAlias string 예 — Canonical alias from /v1/discovery/get_places.
요청 예제(cURL)
curl --get \
  'https://kr.appointmenttrader.com/v1/discovery/get_place' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'locationAlias={{locationAlias}}'

반환값

JSON
See the shared response schema and synthetic example.
응답 필드
필드유형필수설명
$discovery_get_place_Response 예
$.oneOf[0] 예
$.oneOf[0].allOf[0]object 예
$.oneOf[0].allOf[0].RequestUserAliasstring 예
$.oneOf[0].allOf[0].RequestPathstring | null 예
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" 예
$.oneOf[0].allOf[0].ResponseCodeinteger 예
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring 아니요
$.oneOf[0].allOf[1]object 예
$.oneOf[0].allOf[1].Payloadobject 예
$.oneOf[0].allOf[1].Payload.locationIDinteger 예
$.oneOf[0].allOf[1].Payload.locationAliasstring 예
$.oneOf[0].allOf[1].Payload.namestring 예
$.oneOf[0].allOf[1].Payload.cityNamestring 예
$.oneOf[0].allOf[1].Payload.citySlugstring 예
$.oneOf[0].allOf[1].Payload.countryCodestring 예
$.oneOf[0].allOf[1].Payload.regionCodestring 예
$.oneOf[0].allOf[1].Payload.addressstring 예
$.oneOf[0].allOf[1].Payload.timezonestring 예
$.oneOf[0].allOf[1].Payload.categorySlugstring 예
$.oneOf[0].allOf[1].Payload.urlstring 예
$.oneOf[0].allOf[1].Payload.timeRangeUnitstring 예
$.oneOf[0].allOf[1].Payload.maxTimeRangeUnitsinteger 예
$.oneOf[0].allOf[1].Payload.reservationPricingAllowedboolean 예
$.oneOf[0].allOf[1].Payload.inventoryTypesarray 예
$.oneOf[0].allOf[1].Payload.inventoryTypes[]object 아니요
$.oneOf[0].allOf[1].Payload.inventoryTypes[].inventoryTypeIDinteger 예
$.oneOf[0].allOf[1].Payload.inventoryTypes[].namestring 예
$.oneOf[0].allOf[1].Payload.inventoryTypes[].headcount 예
$.oneOf[0].allOf[1].Payload.inventoryTypes[].headcount.anyOf[0]integer 예
$.oneOf[0].allOf[1].Payload.inventoryTypes[].headcount.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.checkedAtstring 예
$.oneOf[1]object 예
$.oneOf[1].RequestUserAliasstring 예
$.oneOf[1].RequestPathstring | null 예
$.oneOf[1].RequestStatus = "Failed" 예
$.oneOf[1].ResponseCodeinteger 예
$.oneOf[1].ResponseMessageAPIResponseMessage 예
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[1].ResponseMessage.oneOf[1]array 예
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[1].ResponseMessage.oneOf[2]object 예
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[1].RequestImpersonatedByUserAliasstring 아니요
응답 예제
{
    "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"
    }
}
기계가 읽을 수 있는 엔드포인트 문서
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.

매개변수

이름유형필수기본값설명
searchFilter string 예 — Literal place name, at least two characters.
citySlug string 아니요 "" Optional canonical city slug from /v1/discovery/get_cities.
pageSize int 아니요 10 Number of results, 1-25.
pageNumber int 아니요 0 Zero-based page, 0-20.
요청 예제(cURL)
curl --get \
  'https://kr.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}}'

반환값

JSON
See the shared response schema and synthetic example.
응답 필드
필드유형필수설명
$discovery_get_places_Response 예
$.oneOf[0] 예
$.oneOf[0].allOf[0]object 예
$.oneOf[0].allOf[0].RequestUserAliasstring 예
$.oneOf[0].allOf[0].RequestPathstring | null 예
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" 예
$.oneOf[0].allOf[0].ResponseCodeinteger 예
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring 아니요
$.oneOf[0].allOf[1]object 예
$.oneOf[0].allOf[1].Payloadobject 예
$.oneOf[0].allOf[1].Payload.placesarray 예
$.oneOf[0].allOf[1].Payload.places[]object 아니요
$.oneOf[0].allOf[1].Payload.places[].locationIDinteger 예
$.oneOf[0].allOf[1].Payload.places[].locationAliasstring 예
$.oneOf[0].allOf[1].Payload.places[].namestring 예
$.oneOf[0].allOf[1].Payload.places[].cityNamestring 예
$.oneOf[0].allOf[1].Payload.places[].citySlugstring 예
$.oneOf[0].allOf[1].Payload.places[].countryCodestring 예
$.oneOf[0].allOf[1].Payload.places[].regionCodestring 예
$.oneOf[0].allOf[1].Payload.places[].addressstring 예
$.oneOf[0].allOf[1].Payload.places[].timezonestring 예
$.oneOf[0].allOf[1].Payload.places[].categorySlugstring 예
$.oneOf[0].allOf[1].Payload.places[].urlstring 예
$.oneOf[0].allOf[1].Payload.checkedAtstring 예
$.oneOf[0].allOf[1].Payload.paginationobject 예
$.oneOf[0].allOf[1].Payload.pagination.pageSizeinteger 예
$.oneOf[0].allOf[1].Payload.pagination.pageNumberinteger 예
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber 예
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[0]integer 예
$.oneOf[0].allOf[1].Payload.pagination.nextPageNumber.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.pagination.hasMoreboolean 예
$.oneOf[0].allOf[1].Payload.pagination.refineSearchboolean 예
$.oneOf[1]object 예
$.oneOf[1].RequestUserAliasstring 예
$.oneOf[1].RequestPathstring | null 예
$.oneOf[1].RequestStatus = "Failed" 예
$.oneOf[1].ResponseCodeinteger 예
$.oneOf[1].ResponseMessageAPIResponseMessage 예
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[1].ResponseMessage.oneOf[1]array 예
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[1].ResponseMessage.oneOf[2]object 예
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[1].RequestImpersonatedByUserAliasstring 아니요
응답 예제
{
    "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
        }
    }
}
기계가 읽을 수 있는 엔드포인트 문서
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.

매개변수

이름유형필수기본값설명
locationAlias string 예 — Canonical alias from /v1/discovery/get_places.
inventoryTypeID int 예 — Canonical inventory ID from /v1/discovery/get_place.
date string 예 — Venue-local date, YYYY-MM-DD.
startHour int 예 — Inclusive venue-local start hour, 0-23.
endHour int 예 — Exclusive venue-local end hour, 1-24.
timeRangeUnits int 아니요 1 Category duration, default 1; day categories require hours 0-24.
요청 예제(cURL)
curl --get \
  'https://kr.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}}'

반환값

JSON
See the shared response schema and synthetic example.
응답 필드
필드유형필수설명
$discovery_get_reservation_pricing_Response 예
$.oneOf[0] 예
$.oneOf[0].allOf[0]object 예
$.oneOf[0].allOf[0].RequestUserAliasstring 예
$.oneOf[0].allOf[0].RequestPathstring | null 예
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" 예
$.oneOf[0].allOf[0].ResponseCodeinteger 예
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object 예
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring 아니요
$.oneOf[0].allOf[1]object 예
$.oneOf[0].allOf[1].Payloadobject 예
$.oneOf[0].allOf[1].Payload.locationobject 예
$.oneOf[0].allOf[1].Payload.location.aliasstring 예
$.oneOf[0].allOf[1].Payload.location.namestring 예
$.oneOf[0].allOf[1].Payload.location.urlstring 예
$.oneOf[0].allOf[1].Payload.location.timezonestring 예
$.oneOf[0].allOf[1].Payload.location.timezoneSource = "location_configuration" 예
$.oneOf[0].allOf[1].Payload.inventoryobject 예
$.oneOf[0].allOf[1].Payload.inventory.idinteger 예
$.oneOf[0].allOf[1].Payload.inventory.namestring 예
$.oneOf[0].allOf[1].Payload.inventory.priceIncludesServiceboolean 예
$.oneOf[0].allOf[1].Payload.requestobject 예
$.oneOf[0].allOf[1].Payload.request.datestring 예
$.oneOf[0].allOf[1].Payload.request.endDatestring 예
$.oneOf[0].allOf[1].Payload.request.startHourinteger 예
$.oneOf[0].allOf[1].Payload.request.endHourinteger 예
$.oneOf[0].allOf[1].Payload.request.endHourExclusive = true 예
$.oneOf[0].allOf[1].Payload.request.timeRangeUnitstring ["Hour","Day"] 예
$.oneOf[0].allOf[1].Payload.request.timeRangeUnitsinteger 예
$.oneOf[0].allOf[1].Payload.availabilityobject 예
$.oneOf[0].allOf[1].Payload.availability.statusstring ["restricted","no_public_listings","listings_disabled","available","no_public_listings_in_returned_sample"] 예
$.oneOf[0].allOf[1].Payload.availability.matchingListingCountinteger 예
$.oneOf[0].allOf[1].Payload.availability.resultSetCompleteboolean 예
$.oneOf[0].allOf[1].Payload.availability.lowestAskingPriceMinor 예
$.oneOf[0].allOf[1].Payload.availability.lowestAskingPriceMinor.anyOf[0]integer 예
$.oneOf[0].allOf[1].Payload.availability.lowestAskingPriceMinor.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.availability.currency = "USD" 예
$.oneOf[0].allOf[1].Payload.availability.listingsarray 예
$.oneOf[0].allOf[1].Payload.availability.listings[]object 아니요
$.oneOf[0].allOf[1].Payload.availability.listings[].listingIDstring 예
$.oneOf[0].allOf[1].Payload.availability.listings[].datestring 예
$.oneOf[0].allOf[1].Payload.availability.listings[].endDatestring 예
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow 예
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[0]object 예
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[0].startHourinteger 예
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[0].endHourinteger 예
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[0].exactTimeDisclosed = false 예
$.oneOf[0].allOf[1].Payload.availability.listings[].timeWindow.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.availability.listings[].askingPriceMinorinteger 예
$.oneOf[0].allOf[1].Payload.availability.listings[].currency = "USD" 예
$.oneOf[0].allOf[1].Payload.availability.listings[].isCheckoutQuote = false 예
$.oneOf[0].allOf[1].Payload.availability.listings[].urlstring 예
$.oneOf[0].allOf[1].Payload.availability.observedAtstring 예
$.oneOf[0].allOf[1].Payload.estimateDiscoveryPriceEstimate 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0]object 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].currency = "USD" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].amountMinorinteger 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].lowAmountMinor = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].highAmountMinor = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].source = "external_reference" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].sampleCountinteger 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].sameLocationSampleCount = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].inventoryMatch = "exact" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].priceFactor = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].requestedDurationMatched = true 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].isHistoricalEvidence = false 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].isGuaranteed = false 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].scope = "recorded_provider_rates_for_requested_dates" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[0].requiresLiveProviderConfirmation = true 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1]object 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].currency = "USD" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].amountMinorinteger 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lowAmountMinor 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lowAmountMinor.anyOf[0]integer 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lowAmountMinor.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].highAmountMinor 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].highAmountMinor.anyOf[0]integer 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].highAmountMinor.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].source = "completed_transactions" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].sampleCountinteger 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].sameLocationSampleCountinteger 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].inventoryMatchstring ["exact","category_scaled"] 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].priceFactor 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].priceFactor.anyOf[0]number 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].priceFactor.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].requestedDurationMatchedboolean 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].isHistoricalEvidence = true 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].isGuaranteed = false 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].scopestring ["same_location","same_category_nearest_locations_first"] 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].sampleLimit = 5 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lookbackMonthsinteger [3,24] 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].lookbackDateField = "transaction_last_updated" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].completionDateRangeKnown = false 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].comparableDaysNoticeinteger 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[1].comparableMaturityTimezonestring 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2]object 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].currency = "USD" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].amountMinorinteger 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].lowAmountMinor = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].highAmountMinor = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].source = "external_history" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].sampleCount = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].sameLocationSampleCount = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].inventoryMatch = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].priceFactor = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].requestedDurationMatched = true 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].isHistoricalEvidence = true 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].isGuaranteed = false 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].scope = "inventory_popularity_and_maturity_with_canonical_fallback" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[2].containsPricingAdjustment = true 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3]object 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].currency = "USD" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].amountMinorinteger 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].lowAmountMinor = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].highAmountMinor = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].source = "configured_default" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].sampleCount = 0 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].sameLocationSampleCount = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].inventoryMatch = "configured_inventory_default" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].priceFactor = null 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].requestedDurationMatched = true 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].isHistoricalEvidence = false 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].isGuaranteed = false 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[3].scope = "configured_starting_amount_without_comparable_evidence" 예
$.oneOf[0].allOf[1].Payload.estimate.oneOf[4]null 예
$.oneOf[0].allOf[1].Payload.pricingContextobject 예
$.oneOf[0].allOf[1].Payload.pricingContext.popularityBracket 예
$.oneOf[0].allOf[1].Payload.pricingContext.popularityBracket.anyOf[0]integer 예
$.oneOf[0].allOf[1].Payload.pricingContext.popularityBracket.anyOf[1]null 예
$.oneOf[0].allOf[1].Payload.pricingContext.daysNoticeinteger 예
$.oneOf[0].allOf[1].Payload.pricingContext.observedAtstring 예
$.oneOf[0].allOf[1].Payload.isCheckoutQuote = false 예
$.oneOf[0].allOf[1].Payload.additionalFeesMayApply = true 예
$.oneOf[0].allOf[1].Payload.guaranteesAvailability = false 예
$.oneOf[0].allOf[1].Payload.canPlaceBid = false 예
$.oneOf[1]object 예
$.oneOf[1].RequestUserAliasstring 예
$.oneOf[1].RequestPathstring | null 예
$.oneOf[1].RequestStatus = "Failed" 예
$.oneOf[1].ResponseCodeinteger 예
$.oneOf[1].ResponseMessageAPIResponseMessage 예
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null 예
$.oneOf[1].ResponseMessage.oneOf[1]array 예
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage 아니요
$.oneOf[1].ResponseMessage.oneOf[2]object 예
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage 아니요
$.oneOf[1].RequestImpersonatedByUserAliasstring 아니요
응답 예제
{
    "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
    }
}
기계가 읽을 수 있는 엔드포인트 문서