Skip to main content

UpdateBookingIntentRequest

Request schema for updating a booking intent

auto_assign_providerbooleannullable

When true, automatically assigns an available provider for the selected time slot if no provider_id is specified.

booking_policy objectnullable

Policy overrides for this booking intent. When omitted, falls back to the service's policies if service is changing.

hold objectnullable

Hold policy overrides.

durationstringnullable

The duration of the hold as an ISO 8601 duration string.

Possible values: Value must match regular expression ^PT(?:(\d+)H)?(?:(\d+)M)?$

enabledboolean

Whether slot holds are enabled.

client_data objectnullable

Progressive client data. Provided fields are merged with existing values.

anyOf
emailemailnullable

The client's email address.

fields objectnullable

A map of custom field values to set on the client, keyed by field slug. Each key must correspond to a Client Field that has been defined in the account; arbitrary key-value pairs are not accepted.

property name*anynullable

A map of custom field values to set on the client, keyed by field slug. Each key must correspond to a Client Field that has been defined in the account; arbitrary key-value pairs are not accepted.

first_namestringnullable

The client's first name.

last_namestringnullable

The client's last name.

localestringnullable

The locale of the client booking the appointment.

Example: en-US
phonestringnullable

The client's phone number (E.164 format).

Example: +1234567890
reference_idstringnullable

External reference identifier for the client.

time_zonestringnullable

The client's time zone (IANA format).

Example: America/New_York
client_idstringnullable

The ID of an existing client to link.

end_atdate-timenullable

The end time of the slot as an ISO-8601 datetime string with a timezone offset.

locked_fieldsstring[]nullable

Fields to lock from public API updates. Replaces existing locked_fields entirely.

Possible values: [service_id, provider_id, slot, client_data, submissions]

metadata objectnullable

Custom metadata key-value pairs. Replaces existing metadata entirely.

property name*anynullable

Custom metadata key-value pairs. Replaces existing metadata entirely.

provider_idstringnullable

The ID of the provider to assign.

secondary_providers object[]nullable

Secondary providers to include in the appointment. Send an empty array to clear.

  • Array [
  • idstringrequired

    ID of the secondary provider.

  • ]
  • service_idstringnullable

    The ID of the service.

    slot_prevalidatedbooleannullable

    Whether the slot has been prevalidated. Automatically reset to false when slot-relevant fields (service_id, provider_id, start_at, end_at, time_zone) change, unless explicitly set to true in the same request.

    start_atdate-timenullable

    The start time of the slot as an ISO-8601 datetime string with a timezone offset.

    submissions object[]nullable

    Form submissions to upsert by form_id. Provided entries are merged with existing submissions; omitted form_ids are left unchanged. Send an empty array to clear all.

  • Array [
  • form_idstringrequired

    The ID of the form to submit responses for.

    responses object

    A map of response data keyed by field key. Values depend on field type.

    property name*any

    A map of response data keyed by field key. Values depend on field type.

    Default value: {}
  • ]
  • time_zonestringnullable

    The local time zone for the slot (IANA format).

    UpdateBookingIntentRequest
    {
    "client_data": {
    "email": "jane@example.com",
    "first_name": "Jane"
    },
    "end_at": "2026-02-23T10:30:00-05:00",
    "provider_id": "prov_1234567890",
    "start_at": "2026-02-23T10:00:00-05:00",
    "time_zone": "America/New_York"
    }