Skip to content

Create a booking

POST
/v1/bookings

With hold_id it converts the hold instead of taking new capacity. payment.mode of deposit or full creates a Stripe PaymentIntent on the connected account and answers with payment_intent, whose client_secret is returned once and is never stored: an idempotent replay answers with the same booking and client_secret: null. payment.mode: "entitlement", and any recurrence, answer 400 not_yet_supported. In the live environment of an account on the free plan, a booking past the confirmed live bookings the plan includes this month, or a payment that would take the month past the included paid volume (param: "payment.mode"), answers 402 plan_limit_reached and takes nothing; the test environment is never counted.

Bookrail-Version

The dated API version to speak. Defaults to 2026-09-01; an unsupported value is a 400.

string
Example
2026-09-01
Bookrail-Actor

Which Bookrail tool the caller is, recorded as actor.via on every event the request writes. A closed list: an unknown value is a 400. Absent means the request declared no tool.

string
Allowed values: mcp cli sdk dashboard
Idempotency-Key

Retry-safety key, 1 to 255 characters. The same key within 24 hours replays the first response, errors included, and never produces a second effect.

string
>= 1 characters <= 255 characters
object
service_id
required

Identifier of a service, prefixed with svc_.

string
/^svc_[0-9a-f]{32}$/
Example
svc_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
start
required

ISO 8601 instant with an explicit offset. Any offset is accepted on input; every instant is returned in UTC.

string format: date-time
Example
2026-09-08T07:00:00Z
duration_minutes
integer
> 0 <= 525600
quantity
integer
> 0 <= 100000
resource_ids
Array<string>
>= 1 items <= 500 items
customer_id

Identifier of a customer, prefixed with cus_.

string
/^cus_[0-9a-f]{32}$/
Example
cus_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
customer
object
external_id
string | null
>= 1 characters <= 200 characters
email
string | null format: email
<= 320 characters
phone
string | null
>= 3 characters <= 50 characters
name
string | null
>= 1 characters <= 200 characters
timezone

IANA time zone name.

string
Example
Europe/Rome
locale
string | null
>= 2 characters <= 20 characters
tenant_id
string | null
>= 1 characters <= 200 characters
metadata

Free-form key/value pairs stored with the object and returned untouched.

object
key
additional properties
notes
string | null
<= 5000 characters
metadata

Free-form key/value pairs stored with the object and returned untouched.

object
key
additional properties
source
string
Allowed values: api widget portal import
hold_id

Identifier of a hold, prefixed with hold_.

string
/^hold_[0-9a-f]{32}$/
Example
hold_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
payment
object
mode
required
string
Allowed values: none deposit full entitlement
entitlement_id
string | null
>= 1 characters <= 200 characters
recurrence
object | null

Created.

object
id
required

Identifier of a booking, prefixed with bk_.

string
/^bk_[0-9a-f]{32}$/
Example
bk_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
object
required
string
Allowed values: booking
status
required
string
Allowed values: held pending confirmed in_progress completed cancelled no_show rescheduled
service_id
required

Identifier of a service, prefixed with svc_.

string
/^svc_[0-9a-f]{32}$/
Example
svc_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
customer_id
required

Identifier of a customer, prefixed with cus_.

string | null
/^cus_[0-9a-f]{32}$/
Example
cus_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
hold_id
required

Identifier of a hold, prefixed with hold_.

string | null
/^hold_[0-9a-f]{32}$/
Example
hold_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
start
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
end
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
duration_minutes
required
integer
timezone
required
string
quantity
required
integer
price
required

Amount in the minor unit of the currency (cents for EUR).

object
amount
required
integer
currency
required
string
price_rule
required

Which service.pricing_rules entry priced this booking, frozen at creation. null when the flat service price applied.

object
index
required

Position in service.pricing_rules.

integer
label
required

The rule label, when it has one.

string | null
amount_paid
required
integer
amount_due
required
integer
amount_refunded
required
integer
policy_snapshot
required

The policy frozen at creation, as stored. null when the service had none.

object | null
source
required
string
Allowed values: api widget portal import
notes
required
string | null
cancelled_by
required
string | null
Allowed values: customer provider system
cancellation_reason
required
string | null
refund_percent
required
number | null
refund_amount_expected
required
integer | null
no_show_charge_expected
required
integer | null
reschedule_fee_expected
required
integer | null
reschedule_count
required
integer
rescheduled_from_booking_id
required

Identifier of a booking, prefixed with bk_.

string | null
/^bk_[0-9a-f]{32}$/
Example
bk_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
rescheduled_to_booking_id
required

Identifier of a booking, prefixed with bk_.

string | null
/^bk_[0-9a-f]{32}$/
Example
bk_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
confirmed_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
checked_in_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
cancelled_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
completed_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
no_show_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
rescheduled_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
next_transition
required
string | null
Allowed values: start complete no_show expire_payment
next_transition_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
payment_expires_at
required

When a booking waiting for its payment is cancelled and its slot released. null on every booking that is not waiting for money.

string | null format: date-time
Example
2026-09-08T07:00:00Z
allocations
required
Array<object>
object
object
required
string
Allowed values: booking_allocation
resource_id
required

Identifier of a resource, prefixed with res_.

string
/^res_[0-9a-f]{32}$/
Example
res_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
role
required
string | null
capacity_used
required
integer
id

Present on a booking allocation, absent on the allocations of a hold.

string
/^ball_[0-9a-f]{32}$/
Example
ball_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
resource
object
id
required

Identifier of a resource, prefixed with res_.

string
/^res_[0-9a-f]{32}$/
Example
res_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
object
required
string
Allowed values: resource
name
required
string
type
required
string
location_id
required

Identifier of a location, prefixed with loc_.

string | null
/^loc_[0-9a-f]{32}$/
Example
loc_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
schedule_id
required

Identifier of a schedule, prefixed with sch_.

string | null
/^sch_[0-9a-f]{32}$/
Example
sch_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
capacity
required
integer
attributes
required
object
key
additional properties
status
required
string
Allowed values: active inactive
tenant_id
required

Optional tenant this object belongs to, for multi-tenant customers.

string | null
metadata
required

Free-form key/value pairs stored with the object and returned untouched.

object
key
additional properties
environment
required

The environment of the API key that created the object.

string
Allowed values: test live
created_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
updated_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
schedule

Present only with expand[]=schedule. null when the resource has none.

object
id
required

Identifier of a schedule, prefixed with sch_.

string
/^sch_[0-9a-f]{32}$/
Example
sch_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
object
required
string
Allowed values: schedule
name
required
string
timezone
required
string | null
rules
required
Array<object>
object
id
required

Identifier of a schedule_rule, prefixed with shr_.

string
/^shr_[0-9a-f]{32}$/
Example
shr_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
object
required
string
Allowed values: schedule_rule
schedule_id
required

Identifier of a schedule, prefixed with sch_.

string
/^sch_[0-9a-f]{32}$/
Example
sch_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
days_of_week
required
Array<integer>
start_time
required
string | null
end_time
required
string | null
valid_from
required
string | null
valid_until
required
string | null
exceptions
required
Array<object>
object
id
required

Identifier of a schedule_exception, prefixed with she_.

string
/^she_[0-9a-f]{32}$/
Example
she_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
object
required
string
Allowed values: schedule_exception
schedule_id
required

Identifier of a schedule, prefixed with sch_.

string
/^sch_[0-9a-f]{32}$/
Example
sch_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
date
required
string
type
required
string
Allowed values: closed open
start_time
required
string | null
end_time
required
string | null
reason
required
string | null
metadata
required

Free-form key/value pairs stored with the object and returned untouched.

object
key
additional properties
environment
required

The environment of the API key that created the object.

string
Allowed values: test live
created_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
updated_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
tenant_id
required

Optional tenant this object belongs to, for multi-tenant customers.

string | null
metadata
required

Free-form key/value pairs stored with the object and returned untouched.

object
key
additional properties
environment
required

The environment of the API key that created the object.

string
Allowed values: test live
created_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
updated_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
customer
object
id
required

Identifier of a customer, prefixed with cus_.

string
/^cus_[0-9a-f]{32}$/
Example
cus_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
object
required
string
Allowed values: customer
external_id
required
string | null
email
required
string | null
phone
required
string | null
name
required
string | null
timezone
required
string | null
locale
required
string | null
tenant_id
required

Optional tenant this object belongs to, for multi-tenant customers.

string | null
metadata
required

Free-form key/value pairs stored with the object and returned untouched.

object
key
additional properties
environment
required

The environment of the API key that created the object.

string
Allowed values: test live
created_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
updated_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
payments

Present only with expand[]=payments: every payment and refund of this booking, oldest first. Never carries a client_secret: an expansion makes no call to Stripe.

Array<object>
object
id
required

Identifier of a payment, prefixed with pay_.

string
/^pay_[0-9a-f]{32}$/
Example
pay_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
object
required
string
Allowed values: payment
booking_id
required

Identifier of a booking, prefixed with bk_.

string | null
/^bk_[0-9a-f]{32}$/
Example
bk_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
type
required
string
Allowed values: deposit full balance no_show_fee refund
status
required

pending covers every Stripe state that is not final: requires_payment_method, requires_action, processing. Read provider_status for the detail.

string
Allowed values: pending succeeded failed refunded cancelled
amount
required
integer
currency
required
string
amount_refunded
required

How much of this payment has come back, cumulative.

integer
provider
required
string
Allowed values: stripe
provider_payment_id
required

pi_... for a payment, re_... for a refund. null until Stripe answered.

string | null
provider_account_id
required
string
Example
acct_1234567890
parent_payment_id
required

For a refund: the payment it gives back.

string | null
/^pay_[0-9a-f]{32}$/
Example
pay_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
failure_code
required
string | null
failure_message
required
string | null
client_secret
required

Read from Stripe, only for a pending payment. null on a list, on a refund, and when Stripe did not answer.

string | null
provider_status
required

Stripe’s own status for the intent, read at request time. null as above.

string | null
metadata
required

Free-form key/value pairs stored with the object and returned untouched.

object
key
additional properties
environment
required

The environment of the API key that created the object.

string
Allowed values: test live
created_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
updated_at
required

ISO 8601 instant in UTC.

string | null format: date-time
Example
2026-09-08T07:00:00Z
payment_intent
required

Present and null when the booking takes no payment.

object
id
required

The Stripe PaymentIntent.

string
Example
pi_3Abc
client_secret
required

Pass it to Stripe.js. Returned once, here; null on an idempotent replay, because it is never stored.

string | null
amount
required
integer
currency
required

ISO 4217, upper case, as the booking froze it.

string
status
required

Stripe’s own status for the intent.

string
stripe_account
required

The connected account the intent lives on. Pass it as stripeAccount.

string
Example
acct_1234567890
publishable_key
required

The platform’s publishable key. Initialise Stripe.js with it.

string
Example
pk_test_1234567890
payment_id
required

The Bookrail payment this intent belongs to.

string
/^pay_[0-9a-f]{32}$/
Example
pay_0198f0c2a1b47e2e9a1c0f4d5e6a7b8c
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

Idempotent-Replayed
string

true when the body is the stored answer of an earlier request with the same Idempotency-Key.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Error codes: deposit_not_configured, duration_not_offered, hold_mismatch, idempotency_key_reused, invalid_body, not_yet_supported, parameter_invalid, parameter_missing, payment_amount_invalid, price_missing, resource_not_eligible, service_without_duration, unsupported_api_version.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Error codes: invalid_api_key, invalid_authorization_header, missing_api_key, revoked_api_key.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Error codes: plan_limit_reached.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Error codes: resource_missing.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Error codes: hold_expired, hold_not_active, idempotency_key_in_progress, serialization_failure, slot_unavailable, stripe_not_connected.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Error codes: customer_limit_reached, min_notice_violated, outside_booking_window, start_not_on_grid.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Error codes: rate_limited.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Retry-After
string

Whole seconds to wait before sending this request again. At least 1.

Error codes: internal_error.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Error codes: stripe_provider_error, stripe_unreachable.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.

Error codes: stripe_not_configured.

object
error
required
object
type
required
string
Allowed values: invalid_request authentication permission not_found conflict rate_limit policy_violation payment_required internal
code
required

Machine readable code. The set is per operation; each response below lists the ones it can produce.

string
message
required
string
param

The field or header the error is about, when there is one.

string
fix

What to do next, when there is one thing to do. Present on the errors that are about the state of the deployment rather than about the request.

string
doc_url
required
string
request_id
required
string
Bookrail-Request-Id
required
string

Identifier of this request. Quote it to support.

Bookrail-Version
required
string

The API version this response was produced with.

RateLimit-Limit
string

Requests this key may have in flight at one instant: the burst of its policy.

RateLimit-Remaining
string

Requests this key may still make right now, as a whole number.

RateLimit-Reset
string

Whole seconds until RateLimit-Remaining is back at RateLimit-Limit.

RateLimit-Policy
string

unavailable when no limit could be applied to this request, because the store that holds the counters did not answer. The three counters are then absent and the request was served.

Bookrail-Plan-Usage
string

<confirmed>/<included>: the confirmed live bookings of the account this month, over the ones its plan includes, as they stood when this request started. On responses to live keys only, and absent for a plan whose included bookings are negotiated and for a key scoped to a tenant.