ServiceResponse
Response schema for a service
data objectrequired
The type of appointment.
Possible values: [in_person, virtual]
booking_policy objectrequired
A booking policy defines the rules for booking a service from public booking interfaces.
advance_notice objectrequired
A policy for requiring minimum advance notice.
Whether advance notice is enabled.
The minimum duration of advance notice.
Possible values: Value must match regular expression ^PT(?:(\d+)H)?(?:(\d+)M)?$
Whether public booking is allowed for the service.
The message to display when public booking is disabled.
maximize_utilization objectrequired
Avoid presenting overlapping time slots for service providers to eliminate gaps in the schedule.
Whether maximize utilization is enabled for the service.
cancellation_policy objectrequired
A cancellation policy defines the rules for canceling a service from public booking interfaces.
advance_notice objectrequired
A policy for requiring minimum advance notice.
Whether advance notice is enabled.
The minimum duration of advance notice.
Possible values: Value must match regular expression ^PT(?:(\d+)H)?(?:(\d+)M)?$
Whether public cancellation is allowed for the service.
The message to display when public cancellation is disabled.
Displayed to clients in follow-up communication. Use this to explain any important rules about cancellations or rescheduling.
Appointments within 48 hours cannot be canceled or rescheduled online. Please call our office.When the service was created.
The duration of time slots in ISO-8601 duration format.
Possible values: Value must match regular expression ^PT(?:(\d+)H)?(?:(\d+)M)?$
`PT30M`Unique identifier for the object.
Possible values: Value must match regular expression ^srv_\w{12}$
The name of the service.
String representing the object's type.
Possible values: [service]
rescheduling_policy objectrequired
A rescheduling policy defines the rules for rescheduling a service from public booking interfaces.
advance_notice objectrequired
A policy for requiring minimum advance notice.
Whether advance notice is enabled.
The minimum duration of advance notice.
Possible values: Value must match regular expression ^PT(?:(\d+)H)?(?:(\d+)M)?$
Whether public rescheduling is allowed for the service.
The message to display when public rescheduling is disabled.
slot_rules object[]required
Array of slot rules for the service.
recurrence_rule objectrequired
A recurrence rule describes a repeating pattern of times. Recurrences rules in SavvyCal are modeled after the conventions of iCalendar recurrence rules (RRULE), but are a subset of the full specification.
The days of the week on which the recurrence occurs.
Possible values: Value must match regular expression (mo|tu|we|th|fr|sa|su)$
["mo","we","fr"]Number of occurrences at which to end the recurrence.
Possible values: >= 1
The frequency of the recurrence.
Possible values: [daily, weekly]
How often the recurrence rule repeats.
Possible values: >= 1
2Date at which to end the recurrence (in ISO-8601 format).
2024-01-02Array of start times for slots.
Possible values: Value must match regular expression ^\d{2}:\d{2}$
When the service was last updated.
{
"data": {
"appointment_type": "in_person",
"booking_policy": {
"advance_notice": {
"enabled": true,
"minimum_duration": "PT1H"
},
"allow_booking": true,
"disabled_message": "Booking is disabled for this service.",
"maximize_utilization": {
"enabled": true
}
},
"cancellation_policy": {
"advance_notice": {
"enabled": true,
"minimum_duration": "PT1H"
},
"allow_cancellation": true,
"disabled_message": "Cancellation is disabled for this service."
},
"change_policy_text": "Appointments within 48 hours cannot be canceled or rescheduled online. Please call our office.",
"created_at": "2025-02-17T17:49:19Z",
"duration": "PT1H30M",
"id": "srv_d025a96ac0c6",
"name": "Initial Consult",
"object": "service",
"rescheduling_policy": {
"advance_notice": {
"enabled": true,
"minimum_duration": "PT1H"
},
"allow_rescheduling": true,
"disabled_message": "Rescheduling is disabled for this service."
},
"slot_rules": [
{
"recurrence_rule": {
"byday": [
"mo",
"we",
"fr"
],
"freq": "weekly"
},
"start_times": [
"09:00",
"10:00"
]
}
],
"updated_at": "2025-02-17T17:49:19Z"
}
}