Skip to content

/v1/quotes

POST
/v1/quotes
curl --request POST \
--url http://localhost:8787/v1/quotes \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "currency": "example", "from": "2026-04-15T12:00:00Z", "partySize": 1, "ratePlanId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "resourceId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "to": "2026-04-15T12:00:00Z" }'
Media typeapplication/json
object
currency
string
>= 3 characters <= 3 characters /^[A-Z]{3}$/
from
required
string format: date-time
partySize
required
integer
> 0
ratePlanId
string format: uuid
resourceId
required
string format: uuid
to
required
string format: date-time
Examplegenerated
{
"currency": "example",
"from": "2026-04-15T12:00:00Z",
"partySize": 1,
"ratePlanId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"resourceId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"to": "2026-04-15T12:00:00Z"
}

A priced, signed, 15-minute quote.

Media typeapplication/json
object
displayTotal
required
object
amountMinorUnits
required
string
/^\d+$/
currency
required
string
>= 3 characters <= 3 characters
expiresAt
required
string
from
required
string
fx
required
object
effectiveAt
required
string
fromCurrency
required
string
>= 3 characters <= 3 characters
rateBps
required
string
/^\d+$/
source
required
string
toCurrency
required
string
>= 3 characters <= 3 characters
partySize
required
integer
priceBreakdown
required
object
currency
required
string
>= 3 characters <= 3 characters
leadTimeAdjustment
required
object
amountMinorUnits
required
string
/^\d+$/
kind
required
string
Allowed values: length_of_stay last_minute early_bird
multiplierBps
required
integer
lengthOfStayAdjustment
required
object
amountMinorUnits
required
string
/^\d+$/
kind
required
string
Allowed values: length_of_stay last_minute early_bird
multiplierBps
required
integer
nights
required
Array<object>
object
amountMinorUnits
required
string
/^\d+$/
baseAmountMinorUnits
required
string
/^\d+$/
date
required
string
dayOfWeekMultiplierBps
required
integer
seasonalMultiplierBps
required
integer
subtotalMinorUnits
required
string
/^\d+$/
totalMinorUnits
required
string
/^\d+$/
quoteId
required
string format: uuid
ratePlanId
required
string | null format: uuid
resourceId
required
string format: uuid
signedQuoteToken
required
string
to
required
string
Example
{
"priceBreakdown": {
"leadTimeAdjustment": {
"kind": "length_of_stay"
},
"lengthOfStayAdjustment": {
"kind": "length_of_stay"
}
}
}

from is not strictly before to, or a rate plan was given for a resource with no room type.

Media typeapplication/problem+json
object
code
required
string
Allowed values: resource_not_found rate_plan_required rate_plan_not_found invalid_window unavailable no_pricing_rule fx_rate_unavailable
detail
required
string
status
required
number
title
required
string
type
required
string
Example
{
"code": "resource_not_found"
}

No such resource for this tenant, or (with a ratePlanId) no such rate plan.

Media typeapplication/problem+json
object
code
required
string
Allowed values: resource_not_found rate_plan_required rate_plan_not_found invalid_window unavailable no_pricing_rule fx_rate_unavailable
detail
required
string
status
required
number
title
required
string
type
required
string
Example
{
"code": "resource_not_found"
}

The requested stay fails availability/restrictions.

Media typeapplication/problem+json
object
code
required
string
Allowed values: unavailable
detail
required
string
reasons
required
Array<string>
Allowed values: occupancy_exceeded reserved external_block min_stay max_stay closed_to_arrival closed_to_departure stop_sell
status
required
number
title
required
string
type
required
string
Example
{
"code": "unavailable",
"reasons": [
"occupancy_exceeded"
]
}

No applicable pricing rule for one or more nights, or no FX rate for the requested display currency.

Media typeapplication/problem+json
Any of:
object
code
required
string
Allowed values: no_pricing_rule
detail
required
string
missingDates
required
Array<string>
status
required
number
title
required
string
type
required
string
Example
{
"code": "no_pricing_rule"
}