Skip to main content

PublicBookingIntentResponse

Response schema for a single booking intent via a public interface.

data objectrequired

A public booking intent that tracks the lifecycle of a booking attempt. This is a simplified view without sensitive or admin-only fields.

appointment objectnullable

The linked appointment (set when completed)

anyOf
cancellation objectrequired

Information about whether the appointment can be canceled by the client.

allowedbooleanrequired

Whether the appointment can be canceled by the client.

disabled_messagestringnullablerequired

A message explaining why cancellation is disabled, if applicable. Only present when allowed is false.

confirmed_atstring<date-time>nullablerequired

Time at which the object was confirmed.

end_at objectrequired

An object describing a date/time in local time and in UTC.

localstring<date-time>required

The local date/time in ISO-8601 format, including the UTC offset (e.g., 2025-03-01T10:00:00-05:00).

Example: 2025-03-01T10:00:00-05:00
objectstringrequired

String representing the object's type.

Possible values: [zoned_date_time]

time_zonestringrequired

The time zone of the local time (IANA format).

Example: America/New_York
unix_tsintegerrequired

The UTC date/time in Unix timestamp format (seconds).

Example: 1736461200
utcstring<date-time>required

The UTC date/time in ISO-8601 format (with time zone information).

Example: 2025-03-01T03:00:00Z
idstringrequired

Unique identifier for the object.

Possible values: Value must match regular expression ^appt_\w{12}$

objectstringrequired

String representing the object's type.

Possible values: [public_appointment]

rescheduling objectrequired

Information about whether the appointment can be rescheduled by the client.

allowedbooleanrequired

Whether the appointment can be rescheduled by the client.

disabled_messagestringnullablerequired

A message explaining why rescheduling is disabled, if applicable. Only present when allowed is false.

start_at objectrequired

An object describing a date/time in local time and in UTC.

localstring<date-time>required

The local date/time in ISO-8601 format, including the UTC offset (e.g., 2025-03-01T10:00:00-05:00).

Example: 2025-03-01T10:00:00-05:00
objectstringrequired

String representing the object's type.

Possible values: [zoned_date_time]

time_zonestringrequired

The time zone of the local time (IANA format).

Example: America/New_York
unix_tsintegerrequired

The UTC date/time in Unix timestamp format (seconds).

Example: 1736461200
utcstring<date-time>required

The UTC date/time in ISO-8601 format (with time zone information).

Example: 2025-03-01T03:00:00Z
statusstringrequired

The status of the appointment.

Possible values: [scheduled, canceled]

urls objectrequired

URLs related to the appointment for client-facing actions.

add_to_calendarstring<uri>[]required

URLs for adding the appointment to a calendar.

add_to_google_calendarstring<uri>[]required

URLs for adding the appointment to Google Calendar.

cancelstring<uri>[]required

URLs for canceling the appointment.

icsstring<uri>[]required

URLs for downloading an ICS file for the appointment.

reschedulestring<uri>[]required

URLs for rescheduling the appointment.

end_at objectnullable

The end time of the selected slot

anyOf
localstring<date-time>required

The local date/time in ISO-8601 format, including the UTC offset (e.g., 2025-03-01T10:00:00-05:00).

Example: 2025-03-01T10:00:00-05:00
objectstringrequired

String representing the object's type.

Possible values: [zoned_date_time]

time_zonestringrequired

The time zone of the local time (IANA format).

Example: America/New_York
unix_tsintegerrequired

The UTC date/time in Unix timestamp format (seconds).

Example: 1736461200
utcstring<date-time>required

The UTC date/time in ISO-8601 format (with time zone information).

Example: 2025-03-01T03:00:00Z
hold_untilstring<date-time>nullable

When the hold expires (UTC)

idstringrequired

The booking intent ID

Possible values: Value must match regular expression ^bi_\w{24}$

locked_fieldsstring[]

Fields that are locked and cannot be updated via the public API. Possible values: service_id, provider_id, start_at, end_at, time_zone, client_data.

objectstringrequired

String representing the object's type.

Possible values: [public_booking_intent]

start_at objectnullable

The start time of the selected slot

anyOf
localstring<date-time>required

The local date/time in ISO-8601 format, including the UTC offset (e.g., 2025-03-01T10:00:00-05:00).

Example: 2025-03-01T10:00:00-05:00
objectstringrequired

String representing the object's type.

Possible values: [zoned_date_time]

time_zonestringrequired

The time zone of the local time (IANA format).

Example: America/New_York
unix_tsintegerrequired

The UTC date/time in Unix timestamp format (seconds).

Example: 1736461200
utcstring<date-time>required

The UTC date/time in ISO-8601 format (with time zone information).

Example: 2025-03-01T03:00:00Z
statusstringrequired

The current status of the booking intent

Possible values: [pending, slot_selected, completed, abandoned]

PublicBookingIntentResponse
{
"data": {
"appointment": null,
"end_at": {
"local": "2026-02-23T10:30:00-05:00",
"object": "zoned_date_time",
"time_zone": "America/New_York",
"unix_ts": 1771947000,
"utc": "2026-02-23T15:30:00Z"
},
"hold_until": "2026-02-22T10:10:00Z",
"id": "bi_abc123def456abc123def456",
"locked_fields": [],
"object": "public_booking_intent",
"start_at": {
"local": "2026-02-23T10:00:00-05:00",
"object": "zoned_date_time",
"time_zone": "America/New_York",
"unix_ts": 1771945200,
"utc": "2026-02-23T15:00:00Z"
},
"status": "slot_selected"
}
}