Setster API Models - Structured Data Documentation (2.0)
Dive into Setster's API Models documentation. Understand the structured data format, relationships, and entities used in Setster's API for seamless application development.
company_name required | string Example: "Apple" The name of the company |
nick_name required | string Example: "apple" The unique nickname of the account. Also create's the account's profile page |
company_id required | integer <int64> Example: "2345" The unique ID of the account |
email required | string <email> Contact of the main and default employee. Together with the password is used as user name |
password required | string <password> Example: "i39j02ksnfj40f" Used along with the account email |
website | string <uri> Example: "www.example.com" The company's website URL. |
contact | string <email> The company's main email address. |
string <uri> Example: "www.facebook.com/company" The Facebook company page URL. | |
string <uri> Example: "www.linkedin.com/company" The Linkedin company page URL. | |
string <uri> Example: "www.twitter.com/company" The Twitter account URL of the company. | |
skype_name | string Example: "nickname" The Skype nickname of the company Skype account. |
yelp | string Example: "www.yelp.com/company" The company's Yelp page URL |
string Example: "www.pinterest.com/company" The company's Pinterest page URL | |
vimeo | string Example: "www.vimeo.com/company" The company's Vimeo page URL |
youtube | string Example: "www.youtube.com/company" The company's YouTube channel URL |
phone | string Example: "" The main business phone number |
timezone_id | integer Default: 553 The account's set timezone ID |
fax | string Example: "(310) 123-4568" The main business fax number |
industry | string |
logo | string |
paragraph | string Example: "We are a...." The company's about us section. Optional content visitble to users during booking an appointment |
first_name | string Example: "" Personal info for the main/default employee |
last_name | string Example: "" Personal info for the main/default employee |
id | integer |
created_by | integer <int64> Example: "1242" The ID of the company owner/main employee |
address_city | string Example: "Los Angeles" The city in the account address |
address_country | string Example: "USA" The country of the account address. |
address_state | string Example: "California" The state of the account address |
address_street1 | string Example: "123 Street" The street address of the account address |
address_street2 | string Example: "Unit B" The street address line 2 of the account address |
addresszip | string Example: "90210" The zip code of the account address. |
send_to_contact | integer Default: 0 |
show_map_profile | boolean Default: false Shows or hides the company map view on the profile page |
splash | string |
map_url | string <uri> Example: "https://goo.gl/maps/qpuAvyPizfgP5FbN7" The Google map URL for the account address. |
return_url | string Example: "https://www.google.com/" The URL a user will be directed to after booking an appointment |
policies | string Example: "We accept bookings for specific services only and you're..." The company's booking policy. Optional content visitble to users during booking an appointment |
account_type | integer <int32> Enum: 0 1 2 4 5 6 Example: "0" The subscription plan of the account. |
date_created | string <date-time> The date the account was created |
no_views | string The number of times the account's booking widget was loaded/viewd. |
notify_app_unconfirmed | boolean Default: true Notify the staff/employees of new unconfirmed appointments |
notify_app_unpaid | boolean Default: true Notify the staff/employees of new unpaid appointments |
lang | string Default: "en" Enum: "en" "fr" "es" The language of the account |
enable_locations | boolean Default: true An account has multiple location creation previlidges |
capture_leads | string |
settings | string <json> |
status | integer Default: 0 |
directory | integer Default: 0 |
max_providers | integer <int32> Default: 0 The number of licenses the account is susubscribed/paying for. |
business_hours_label | string The label for the company's main business hours. |
policies_label | string The label for the company's booking policy. |
paragraph_label | string The label for the company's account section. |
timezone | integer <int32> Default: 0 Example: "-480" The GMT offset in minutes of the account's timezone |
object Microsoft Exchange calendar sync settings. |
{- "company_name": "Apple",
- "nick_name": "apple",
- "website": "www.example.com",
- "contact": "user@example.com",
- "facebook": "www.facebook.com/company",
- "linkedin": "www.linkedin.com/company",
- "twitter": "www.twitter.com/company",
- "skype_name": "nickname",
- "yelp": "www.yelp.com/company",
- "pinterest": "www.pinterest.com/company",
- "vimeo": "www.vimeo.com/company",
- "youtube": "www.youtube.com/company",
- "phone": "",
- "timezone_id": 553,
- "fax": "(310) 123-4568",
- "industry": "string",
- "logo": "string",
- "paragraph": "We are a....",
- "email": "user@example.com",
- "password": "i39j02ksnfj40f",
- "first_name": "",
- "last_name": "",
- "id": 0,
- "company_id": 2345,
- "created_by": 1242,
- "address_city": "Los Angeles",
- "address_country": "USA",
- "address_state": "California",
- "address_street1": "123 Street",
- "address_street2": "Unit B",
- "addresszip": "90210",
- "send_to_contact": 0,
- "show_map_profile": false,
- "splash": "string",
- "policies": "We accept bookings for specific services only and you're...",
- "account_type": "0",
- "date_created": "2019-08-24T14:15:22Z",
- "no_views": "string",
- "notify_app_unconfirmed": true,
- "notify_app_unpaid": true,
- "lang": "en",
- "enable_locations": true,
- "capture_leads": "string",
- "settings": "string",
- "status": 0,
- "directory": 0,
- "max_providers": 0,
- "business_hours_label": "string",
- "policies_label": "string",
- "paragraph_label": "string",
- "timezone": -480,
- "exchange_sync_settings": {
- "host": "string",
- "account": "string",
- "password": "pa$$word",
- "sync_period": 0
}
}
company_name required | string Example: "Apple" The name of the company |
nick_name required | string Example: "apple" The unique nickname of the account. Also create's the account's profile page |
website | string <uri> Example: "www.example.com" The company's website URL. |
contact | string <email> The company's main email address. |
string <uri> Example: "www.facebook.com/company" The Facebook company page URL. | |
string <uri> Example: "www.linkedin.com/company" The Linkedin company page URL. | |
string <uri> Example: "www.twitter.com/company" The Twitter account URL of the company. | |
skype_name | string Example: "nickname" The Skype nickname of the company Skype account. |
yelp | string Example: "www.yelp.com/company" The company's Yelp page URL |
string Example: "www.pinterest.com/company" The company's Pinterest page URL | |
vimeo | string Example: "www.vimeo.com/company" The company's Vimeo page URL |
youtube | string Example: "www.youtube.com/company" The company's YouTube channel URL |
phone | string Example: "(310) 123-4567" The main business phone number |
timezone_id | integer Default: 553 The account's set timezone ID |
fax | string Example: "(310) 123-4568" The main business fax number |
industry | string |
logo | string |
paragraph | string Example: "We are a...." The company's about us section. Optional content visitble to users during booking an appointment |
{- "company_name": "Apple",
- "nick_name": "apple",
- "website": "www.example.com",
- "contact": "user@example.com",
- "facebook": "www.facebook.com/company",
- "linkedin": "www.linkedin.com/company",
- "twitter": "www.twitter.com/company",
- "skype_name": "nickname",
- "yelp": "www.yelp.com/company",
- "pinterest": "www.pinterest.com/company",
- "vimeo": "www.vimeo.com/company",
- "youtube": "www.youtube.com/company",
- "phone": "(310) 123-4567",
- "timezone_id": 553,
- "fax": "(310) 123-4568",
- "industry": "string",
- "logo": "string",
- "paragraph": "We are a...."
}
company_id | integer Example: "654" |
currency | string Example: "USD" |
hide_contact | boolean Default: 0 |
hide_about | boolean Default: 0 |
show_email | boolean Default: 0 |
show_provider_image | boolean Default: 0 |
providers_tab_option | string Example: "2" |
select_single_service | boolean Default: 1 |
default_calendar_view | string Default: "d" Enum: "d" "w" |
month_view_availability | integer Example: "1" |
email_confirmation | integer Example: "1" |
book_another_appointment | boolean Default: 0 |
display_google_map_on_locations | boolean Default: 0 |
hide_timezone_alert | boolean Example: "0" |
select_single_location | boolean Default: 1 |
show_in_host_or_client_time | boolean Default: 0 |
email_timezone_alert | boolean Default: 0 |
widget_customBookingFields | string Example: "a:4:{s:13:\"provider_date\";i:1;s:13:\"provider_time\";i:1;s:8:\"location\";i:1;s:7:\"service\";i:1;}" |
enable_mobile_widget | boolean Default: 1 |
any_available_provider | string Example: "1" |
show_staff_photo | boolean Example: "1" |
auto_confirm | boolean Example: "0" |
prior_notice | integer Example: "0" |
prior_cancel_appointment | integer Example: "0" |
prior_reschedule_appointment | integer Example: "0" |
duration_padding | integer Example: "30" |
start_step | integer Example: "0" |
after_notice | integer Example: "0" |
allow_cash_payment | boolean Example: "0" |
waiting_list | boolean Example: "0" |
layout_params | string Example: "a:5:{s:14:\"overlay_option\";s:7:\"overlay\";s:8:\"position\";s:5:\"right\";s:11:\"button_name\";s:11:\"Appointment\";s:12:\"button_color\";s:6:\"ff0000\";s:13:\"locations_map\";i:0;}" |
style_params | string Default: "" |
new_style | integer Example: "1" |
new_mobile_style | integer Example: "1" |
widget_send_client_emails | boolean Example: "1" |
widget_send_provider_emails | boolean Example: "1" |
send_reminder | boolean Example: "24" |
notify_app_unconfirmed | boolean Example: "1" |
send_to_contact | boolean Example: "0" |
notify_app_unpaid | boolean Example: "1" |
lang | string Default: "en" |
timezone_id | integer Example: "553" |
currenciesStripe | Array of strings Example: "AED,AFN,ALL" |
currenciesPaypal | Array of strings Example: "AED,AFN,ALL" |
stripe_client_id | string Example: "ca_3zSQAHuNlO64Jsfg45Tk8vdfg2A" |
{- "company_id": 654,
- "currency": "USD",
- "hide_contact": 0,
- "hide_about": 0,
- "show_email": 0,
- "show_provider_image": 0,
- "providers_tab_option": "2",
- "select_single_service": 1,
- "default_calendar_view": "d",
- "month_view_availability": 1,
- "email_confirmation": 1,
- "book_another_appointment": 0,
- "display_google_map_on_locations": 0,
- "hide_timezone_alert": 0,
- "select_single_location": 1,
- "show_in_host_or_client_time": 0,
- "email_timezone_alert": 0,
- "widget_customBookingFields": "a:4:{s:13:\"provider_date\";i:1;s:13:\"provider_time\";i:1;s:8:\"location\";i:1;s:7:\"service\";i:1;}",
- "enable_mobile_widget": 1,
- "any_available_provider": "1",
- "show_staff_photo": 1,
- "auto_confirm": 0,
- "prior_notice": 0,
- "prior_cancel_appointment": 0,
- "prior_reschedule_appointment": 0,
- "duration_padding": 30,
- "start_step": 0,
- "after_notice": 0,
- "allow_cash_payment": 0,
- "waiting_list": 0,
- "layout_params": "a:5:{s:14:\"overlay_option\";s:7:\"overlay\";s:8:\"position\";s:5:\"right\";s:11:\"button_name\";s:11:\"Appointment\";s:12:\"button_color\";s:6:\"ff0000\";s:13:\"locations_map\";i:0;}",
- "style_params": "",
- "new_style": 1,
- "new_mobile_style": 1,
- "widget_send_client_emails": 1,
- "widget_send_provider_emails": 1,
- "send_reminder": 24,
- "notify_app_unconfirmed": 1,
- "send_to_contact": 0,
- "notify_app_unpaid": 1,
- "lang": "en",
- "timezone_id": 553,
- "currenciesStripe": [
- "AED",
- "AFN",
- "ALL"
], - "currenciesPaypal": [
- "AED",
- "AFN",
- "ALL"
], - "stripe_client_id": "ca_3zSQAHuNlO64Jsfg45Tk8vdfg2A"
}
string <email> Contact of the main and default employee. Together with the password is used as user name | |
password | string <password> Example: "i39j02ksnfj40f" Used along with the account email |
first_name | string Example: "" Personal info for the main/default employee |
last_name | string Example: "" Personal info for the main/default employee |
phone | string Example: "" Business phone |
{- "email": "user@example.com",
- "password": "i39j02ksnfj40f",
- "first_name": "",
- "last_name": "",
- "phone": ""
}
company_id required | integer <int64> Example: "3123" The ID of the company that the appointment belongs to. Field is writable when entity is owned by child account |
client_email required | string <email> The email of the client that made the appointment |
client_name required | string Example: "Test Client" The client name |
service_id required | integer <int64> Example: "453" The ID of the service that the appointment is made for |
start_date required | string Example: "2019-09-01 12:00" The date and time when the appointment is scheduled to start.
The time is local to the company timezone or the location timezone (if the location is in a different timezone).
The format of the date is |
id | integer <int64> Example: "2342" Unique ID of the appointment |
client_id | integer <int64> Example: "23113" The ID of the client that made the appointment |
client_phone | string Example: "12345678" The client phone number |
client_address | string The client address |
employee_id | integer <int64> Example: "12412" The ID of the employee (provider) that the appointment is made for |
provider_email | string <email> Example: "some-provider@setster.com" The email of the provider/employee that the appointment was made for |
location_id | integer <int64> Example: "54232" The ID of the location where the appointment will take place at |
end_date | string Example: "2019-09-01 13:00" The date and time when the appointment is scheduled to end.
The time is local to the company timezone or the location timezone (if the location is in a different timezone).
The format of the date is |
length | integer Example: "1800000" The duration of the appointment (in milliseconds). Example: 30 minutes = 1800000 milliseconds. |
duration_padding | integer Default: 0 The appointment time padding (in seconds) - the number of seconds, before and after an appointment, that cannon be used for another appointment |
note | string or null Custom client message |
status | integer Enum: 0 1 2 3 4 6 8 9 10 11 12 13 Appointment status. Possible values:
|
type | string The name of the service with ID service_id |
last_updated | string <date-time> Example: "2024-03-15 16:00:50" The date and time when the latest change was made to the appointment |
created_at | string <date-time> Example: "2024-03-15 16:00:50" |
subservices | string IDs of sub services that were selected for the appointment separated by comma |
paid | boolean Default: false Whether the appointment has been paid or not, if the service requires a payment. |
price | integer Default: 0 |
ews_id | string Deprecated Default: "" |
object Deprecated The values of the booking form fields filled by the client. Custom fields are tied to your Setster Booking Form. New custom data can be added by creating a new field in the Setster dashboard under Booking Form. | |
object Replaces the deprecated Custom data is tied to your Setster Booking Form. New custom data can be added by creating a new field in the Setster dashboard under Booking Form. Expects an object containing key values pairs where the | |
timezone_short | string Example: "GMT -05:00" The time zone short name (e.g. PST or GMT+4) |
timezone_offset_seconds | integer Example: "-18000" The time zone offset in seconds |
timezone_id | integer <int32> Example: "553" The ID of the time zone in our database |
{- "id": 2342,
- "client_id": 23113,
- "company_id": 3123,
- "client_email": "user@example.com",
- "client_name": "Test Client",
- "client_phone": "12345678",
- "client_address": "string",
- "employee_id": 12412,
- "provider_email": "some-provider@setster.com",
- "location_id": 54232,
- "service_id": 453,
- "start_date": "2019-09-01 12:00",
- "end_date": "2019-09-01 13:00",
- "length": 1800000,
- "duration_padding": 0,
- "note": "string",
- "status": 0,
- "type": "string",
- "last_updated": "2024-03-15 16:00:50",
- "created_at": "2024-03-15 16:00:50",
- "subservices": "string",
- "paid": false,
- "price": 0,
- "ews_id": "",
- "custom_fields": {
- "field index1": [
- "string",
- "string",
- "string"
], - "field index2": [
- "string",
- "string",
- "string"
]
}, - "custom_data": {
- "key1": "Lorem Ipsum",
- "key2": "Lorem Ipsum"
}, - "timezone_short": "GMT -05:00",
- "timezone_offset_seconds": -18000,
- "timezone_id": 553
}
interval | integer <int32> Example: "60" The length (in minutes) of the appointment |
boxInterval | integer <int32> Example: "5" Relevant only if return=boxes and represents the number of minutes in one box |
padding | integer <int32> Example: "0" Relevant only if return=boxes and represents the number of minutes between two adjacent appointments |
day | integer <int32> Example: "15" Selected day |
month | integer <int32> Example: "8" Selected month |
year | integer <int32> Example: "2012" Selected year |
times | Array of strings Example: "09:00:00" Hash table of the start times of the available appointment slots, grouped by date |
{- "interval": 60,
- "boxInterval": 5,
- "padding": 0,
- "day": 15,
- "month": 8,
- "year": 2012,
- "times": [
- "09:00:00"
]
}
company_id required | integer <int64> Example: "24232" The ID of the company that the client belongs to |
employee_id required | integer <int64> Example: "5323" The ID of the employee that the client is associated with |
email required | string <email> The email of the client |
name required | string Example: "Test Client" The full name of the client |
client_id | integer <int64> Example: "3213" Unique ID of the client |
phone | string Example: "3445323523" Client's phone number |
last_app_date | string <date-time> The date and time of the last appointment made by the client |
date_created | string <date-time> The date and time when the record was created. |
notes | string |
preferences | string |
address | string Example: "City country" Client's address |
address2 | string |
city | string |
state | string |
zip | string |
country | string |
gender | string or null Enum: "m" "f" The gender of the client |
birthday | string <date> Only the day and month are relevant |
cient_since | string <date> The date the client first scheduled an appointment or was created. This field is editable. |
accept_emails | boolean Whether or not the client accepts email marketing |
photo | string The base name of the photo file. If not null or empty, it can be used to get the client photo:
|
{- "client_id": 3213,
- "company_id": 24232,
- "employee_id": 5323,
- "email": "user@example.com",
- "name": "Test Client",
- "phone": "3445323523",
- "last_app_date": "2019-08-24T14:15:22Z",
- "date_created": "2019-08-24T14:15:22Z",
- "notes": "string",
- "preferences": "string",
- "address": "City country",
- "address2": "string",
- "city": "string",
- "state": "string",
- "zip": "string",
- "country": "string",
- "gender": "m",
- "birthday": "2019-08-24",
- "cient_since": "2019-08-24",
- "accept_emails": true,
- "photo": "string"
}
company_id required | integer <int64> The ID of the company that the custom field belongs to |
label required | string The label of the custom field |
length required | integer The max string length of the custom field |
type required | integer Default: 0 Enum: 0 1 2 3 4 5 6 Type of the custom field. Possible values:
|
required required | boolean Default: false If the custom field is mandatory in the booking form |
ord required | integer The order in layout |
status required | boolean The enabled/disabled status. |
visibility required | integer Enum: 1 2 3 Places where the custom field is visible. Possible values:
|
readonly required | boolean Default: false The readonly property of the custom field form. |
hint required | string The hint property of the custom field form |
id | integer <int64> Unique ID of the custom field |
removable | boolean Default: false |
readonly_type | integer |
{- "id": 0,
- "company_id": 0,
- "label": "string",
- "length": 0,
- "type": 0,
- "required": false,
- "ord": 0,
- "status": true,
- "visibility": 1,
- "readonly": false,
- "removable": false,
- "readonly_type": 0,
- "hint": "string"
}
company_id required | integer <int64> Example: "3214" The ID of the company of the employee. Field is writable when entity is owned by child account. |
email required | string <email> Unique Email address of the employee |
first_name required | string Example: "John" First Name |
last_name required | string Example: "Doe" Last Name |
id | integer <int64> Example: "1234" Unique ID of the employee |
job | string Example: "Accountant" Job name |
bio | string Bio |
phone | string Example: "" Phone number |
photo_url | string <uri> Example: "" Photo URL |
public_email | boolean Default: false Whether or not the employee's email will be displayed on the widget |
public_phone | boolean Default: false |
status | boolean Default: false Employee status: active / inactive |
username | string Example: "" Automatically generated based on the first and last names |
nickname | string Example: "" Unique nickname per company. May contain only letters, digits, the dot character and the underline character. |
string <uri> Default: "" LinkedIn URL | |
yelp | string <uri> |
string <uri> | |
vimeo | string <uri> |
youtube | string <uri> |
string <uri> Example: "" Twitter URL | |
string <uri> Example: "" Facebook URL | |
receivesms | boolean Default: false If true (1) then the employee will receive an SMS message informing them about new appointments |
sms_email | string <email> Example: "number@txt.att.net" The SMS service to be used in the following format: number@sms-service.com. Note: the number keyword will be replaced with the employee's phone number before the SMS is sent. |
intuit_user_id | string |
ipp_mode | integer |
intuit_auth_id | string |
intuit_db_id | string |
intuit_realm_id | string |
intuit_ticket_id | string |
newsletter | integer |
is_owner | boolean Default: false Whether the employee is the owner of the company (the employee created at signup). By updating the value for a created employee, areas from permissions can be managed for (all - 1/own - 0) account(s) |
ics_service | integer <int32> Default: 0 Enum: 0 1 2 3 Import calendar source type. Possible values: 0 - Not set 1 - Google 2 - Outlook or other public URL calendar source (ics) 3 - Exchange |
ics_export_service | integer <int32> Default: 0 Enum: 0 1 2 3 4 5 6 Export calendar source type. Possible values: 0 - Not set 1 - Outlook 2 - Ical 3 - Google 4 - Yahoo 5 - MSN 6 - ICalDav |
ics_url | string <uri> iCalendar public url used as import source. |
ics_export_hash | string |
google_export_canceled | integer Default: 0 |
google_export_add_pt | integer Default: 0 |
ord | integer Default: 0 |
ics_export_url | string iCalendar public url used as export source. |
permissions | string Example: "locations, providers" Lable(s) for different application sections. In order to set permission an employee must have a user(can_login - 1). Possible values: locations, providers, services, availability, appointments, get_widget, promote, clients, overview, calendar, settings, profile, account |
can_login | boolean Example: "1" Whether the employee can login to his account or not. An employee that cannot login will not have access to the API. |
{- "id": 1234,
- "company_id": 3214,
- "email": "user@example.com",
- "first_name": "John",
- "last_name": "Doe",
- "job": "Accountant",
- "bio": "string",
- "phone": "",
- "photo_url": "",
- "public_email": false,
- "public_phone": false,
- "status": false,
- "username": "",
- "nickname": "",
- "linkedin": "",
- "twitter": "",
- "facebook": "",
- "receivesms": false,
- "sms_email": "number@txt.att.net",
- "intuit_user_id": "string",
- "ipp_mode": 0,
- "intuit_auth_id": "string",
- "intuit_db_id": "string",
- "intuit_realm_id": "string",
- "intuit_ticket_id": "string",
- "newsletter": 0,
- "is_owner": false,
- "ics_service": 0,
- "ics_export_service": 0,
- "ics_export_hash": "string",
- "google_export_canceled": 0,
- "google_export_add_pt": 0,
- "ord": 0,
- "ics_export_url": "string",
- "permissions": "locations, providers",
- "can_login": 1
}
repeat required | integer Enum: 1 2 Example: "1" 1 - weekly/ 2 - Date interval |
type required | boolean Example: "0" 0 - Available/ 1 - Out of Office |
start_date required | string <date> Example: "12/1/2015" |
end_date required | string <date> Example: "12/31/2015" |
days required | object Example: "[object Object]" |
location_id | integer Example: "2144" optional for single location enabled |
{- "repeat": 1,
- "type": 0,
- "start_date": "12/1/2015",
- "end_date": "12/31/2015",
- "location_id": 2144,
- "days": {
- "mo": {
- "time": [
- [
- "10:00",
- "18:00"
], - [
- "22:00",
- "23:00"
]
]
}, - "tu": {
- "time": [
- [
- "14:00",
- "18:00"
], - [
- "20:00",
- "23:00"
]
]
}
}
}
company_id required | integer <int64> Example: "432" The ID of the company that owns the location. Field is writable when entity is owned by child accounts. |
name required | string Example: "Spa center" Name of the location |
id | integer <int64> Example: "12345" Unique ID of the location |
description | string Default: "" Description of the location |
is_main | boolean Default: false Whether this is the main location for the company (the location created on registration) |
virtual | boolean Default: false |
street1 | string Example: "13 Beverly" Address line 1 |
street2 | string Example: "" Address line 2 |
city | string Example: "New York" City |
state | string Example: "NY" State |
zip | string Example: "10501" Zip |
country | string Example: "" Country |
photo | string <uri> Example: "" Photo URL |
phone | string Default: "" Phone number |
string <email> Email address | |
website | string <uri> Example: "" Website URL |
tags | string Default: "" |
paypal_email | string <email> The PayPal account used for payments for the appointments that are booked on this location. If empty, the company account will be used. |
timezone_id | string Example: "553" The ID of the time zone |
lat | number <float> The latitude of the location automatically calculated based on its address |
lng | number <float> The longitude of the location automatically calculated based on its address |
ord | integer Default: 0 |
{- "id": 12345,
- "name": "Spa center",
- "description": "",
- "company_id": 432,
- "is_main": false,
- "virtual": false,
- "street1": "13 Beverly",
- "street2": "",
- "city": "New York",
- "state": "NY",
- "zip": "10501",
- "country": "",
- "photo": "",
- "phone": "",
- "email": "user@example.com",
- "website": "",
- "tags": "",
- "paypal_email": "user@example.com",
- "timezone_id": 553,
- "lat": 0.1,
- "lng": 0.1,
- "ord": 0
}
company_id required | integer <int64> Example: "5678" The ID of the company that the service belongs to. Field is writable when entity is owned by child account |
name required | string Example: "Default service" The name of the service |
duration required | integer <int32> multiple of 15 Default: 60 The duration of the service in minutes |
id | integer <int64> Example: "1234" Unique ID of the service |
description | string Example: "This service should be used in testing only" The description of the service |
auto_confirm | boolean Default: false If true (1) then the appointments made for the service will be automatically confirmed. If false (0) then the appointments must be confirmed by the provider. |
is_subservice | boolean Default: false If true (1) the service will be an additional service, otherwise it will be a base service. |
duration_padding | integer <int32> multiple of 5 Default: 0 The minimum number of minutes between two adjacent appointments |
max_clients | integer Default: 0 |
prior_notice | integer Default: 0 The minimum number of hours the appointment has to be scheduled before the scheduled time |
after_notice | integer Default: 0 The maximum number of days the appointment has to be scheduled after the scheduled time |
cancel_appointment | integer Default: 0 The minimum number of hours before the appointment until the client can cancel the appointment. If 0 the client cannot cancel the appointment. |
reschedule_appointment | integer Default: 0 The minimum number of hours before the appointment until the client can reschedule the appointment. If 0, the client cannot reschedule. |
send_reminder | integer Default: 0 The minimum number of hours before the appointment until the client can reschedule the appointment. If 0, the client cannot reschedule. |
start_step | integer multiple of 5 Default: 0 Number of minutes. If this field has a value different than 0, then the clients can choose any start time (in increments equal to the value of the field) for their appointment in the availability zone. If the value of the field is 0, then the clients can select only predefined time slots for the appointments. |
set_schedule | boolean Default: false If |
Array of objects The service can only be performed on the following times. The | |
price | number <float> Default: 0 The price of the service |
payment_min_amount | number <double> Default: 0 The minimum amount required for the payment to be valid |
allow_cash_payment | boolean Default: false Whether or not to allow the client to skip the online payment and pay with cash |
group_session | integer Default: 0 The number of appointments that can be scheduled in the same time slot. |
waiting_list | integer Default: 0 |
client_instructions | string The message sent to the client in the confirmation email (after the client verifies his/her email address) |
widget_message | string The message displayed on the widget after the client books an appointments |
password | string |
ord | integer The order number of the service |
created_at | string <date-time> The time when the service was created |
active_from | string or null <date> The date when the service starts to show up on the widget. If this field is null, then there will be no limit on the start date. To set the field to null, set it to the empty string when updating the service. |
active_until | string or null <date> The date when the service stops being displayed on the widget. If this field is null, then there will be no limit on the end date. To set the field to null, set it to the empty string when updating the service. |
active_interval_status | boolean Default: true |
status | boolean Default: true If 0 the service will not appear on the widget. |
active_rules | integer Default: 1 |
photo | string |
{- "id": 1234,
- "name": "Default service",
- "company_id": 5678,
- "duration": 60,
- "description": "This service should be used in testing only",
- "auto_confirm": false,
- "is_subservice": false,
- "duration_padding": 0,
- "max_clients": 0,
- "prior_notice": 0,
- "after_notice": 0,
- "cancel_appointment": 0,
- "reschedule_appointment": 0,
- "send_reminder": 0,
- "start_step": 0,
- "set_schedule": false,
- "schedule": [
- {
- "repeat": 1,
- "start_date": "01/06/2019",
- "start_time": {
- "hour": 9,
- "min": 0,
- "am": "am"
}, - "end_date": "01/12/2019",
- "end_time": {
- "hour": 5,
- "min": 0,
- "am": "pm"
}, - "days": {
- "2": 1,
- "3": 1,
- "4": 1,
- "5": 1,
- "6": 1
}
}
], - "price": 0,
- "payment_min_amount": 0,
- "allow_cash_payment": false,
- "group_session": 0,
- "waiting_list": 0,
- "client_instructions": "string",
- "widget_message": "string",
- "password": "string",
- "ord": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "active_from": "2019-08-24",
- "active_until": "2019-08-24",
- "active_interval_status": true,
- "status": true,
- "active_rules": 1,
- "photo": "string"
}
repeat | integer Enum: 0 1 2 Example: "1" 0 - one-time event / 1 - weekly / 2 - monthly |
start_date | string <date> Example: "01/06/2019" a date string with the format |
object Example: "[object Object]" the start hour in the day | |
end_date | string <date> Example: "01/12/2019" a date string with the format |
object Example: "[object Object]" the end hour in the day | |
object Example: "[object Object]" A list of day numbers for the days when the service is available, of the form: |
{- "repeat": 1,
- "start_date": "01/06/2019",
- "start_time": {
- "hour": 9,
- "min": 0,
- "am": "am"
}, - "end_date": "01/12/2019",
- "end_time": {
- "hour": 5,
- "min": 0,
- "am": "pm"
}, - "days": {
- "2": 1,
- "3": 1,
- "4": 1,
- "5": 1,
- "6": 1
}
}
gmt | integer <int32> Example: "-240" Offset value in seconds |
caption | string Example: "GMT -04:00 US/Canada/Eastern, Colombia, Peru (EDT)" Description |
dbName | string Example: "US/Eastern" Mysql standard name |
short | string Example: "GMT -04:00" Short description |
friendly | string Example: "GMT-04:00" Short/friendly description |
{- "gmt": -240,
- "caption": "GMT -04:00 US/Canada/Eastern, Colombia, Peru (EDT)",
- "dbName": "US/Eastern",
- "short": "GMT -04:00",
- "friendly": "GMT-04:00"
}
hour required | integer Example: "9" |
min required | integer Example: "0" |
am required | string Enum: "am" "pm" Example: "am" |
{- "hour": 9,
- "min": 0,
- "am": "am"
}
company_id required | integer <int64> Example: "24232" The ID of the company |
target_url required | string <uri> Default: "" |
Array of strings or objects Example: "appointment.created,[object Object]" The list of events. The currently supported events are:
The " | |
active | integer Default: 1 Enum: 0 1 |
{- "company_id": 24232,
- "target_url": "",
- "events": [
- "appointment.created",
- {
- "event": "appointment.rescheduled",
- "active": 0
}
], - "active": 0
}
company_id required | integer <int64> Example: "24232" The ID of the company |
target_url required | string <uri> Default: "" |
id | integer <int64> Example: "13425" Unique ID of the Webhook subscriber |
Array of objects The list of events | |
active | integer Default: 1 Enum: 0 1 |
verification_key | string |
created_at | string <date-time> |
updated_at | string <date-time> |
{- "id": 13425,
- "company_id": 24232,
- "target_url": "",
- "events": [
- {
- "id": 13425,
- "event": "appointment.created",
- "active": 0,
- "created_at": "2019-08-24T14:15:22Z"
}
], - "active": 0,
- "verification_key": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
id | integer <int64> Example: "13425" Unique ID of the Webhook event |
event | string Enum: "appointment.created" "appointment.updated" "appointment.deleted" "appointment.rescheduled" "appointment.reminder" "appointment.canceled" "*" Example: "appointment.created" |
active | integer Default: 1 Enum: 0 1 |
created_at | string <date-time> |
{- "id": 13425,
- "event": "appointment.created",
- "active": 0,
- "created_at": "2019-08-24T14:15:22Z"
}