Company administration service methods
Methods
addClient
addClient($clientData)
Parameters:
- $clientData Object
Returns Integer.
Adds new client with specified data. You can specify name, email, phone, address1, address2, city, zip,
country_id. If client record with specified data exists method will return an id of this record. Otherwise data
will be stored to database and method will return an id of newly created record. NOTE: name is mandatory field.Also email, phone number or both of them can be mandatory fields. You should call
getCompanyParam('require_fields')
method to check which fields are required.
Method returns an error:
- -32061 Client name value is wrong
- -32062 Client email value is wrong
- -32063 Client phone value is wrong
Example:
{ name: "Frances T. Perez", phone: "+1502-810-4521", email: "FrancesTPerez@teleworm.us", address1: "3872 Earnhardt Drive", address2: "Louisville, KY 40219", city: Louisville, zip: 3872 }
addDeviceToken
addDeviceToken($token, $device)
Parameters:
- $token String- device token
- $device String- device type (android or apple)
Returns boolean.
Subscribe a mobile device to push notifications about new bookings or changes in already created bookings.Use 'apple'
or 'android'
for device
parameter.
book
book($eventId, $unitId, $clientId, $startDate, $startTime, $endDate, $endTime, $clientTimeOffset, $additional, $count, $batchId, $recurringData)
Parameters:
- $eventId Integer
- $unitId Integer
- $clientId Integer
- $startDate
- $startTime
- $endDate null
- $endTime null
- $clientTimeOffset Integer
- $additional array|Object- additional params and fields.
- $count Integer- bookings count, min. 1 (using for group bookings batch). (optional)
- $batchId Integer- add booking to multiple bookings batch. (optional)
- $recurringData Array- make booking recurrent. (optional)
Returns Object.
Book service. Returns object with appointment information or throw exception If appointment requires confirm, in result object will be require_confirm = true You can use $count > 1 or $batchId != null at the same time.
calculateEndTime
calculateEndTime($startDateTime, $eventId, $unitId)
Parameters:
- $startDateTime Stringa date and time string in format 'Y-m-d H:i:s', eg. '2001-10-02 13:30:00'.
- $eventId Integer
- $unitId Integer
Returns String|Boolean.
Returns end datetime if booking is available, else return false
cancelBatch
cancelBatch($id, $bookingIds)
Parameters:
- $id Integer
- $bookingIds Array
Returns boolean.
Cancel batch of bookings. Signature is NOT required.First id is used for information in notifications
cancelBooking
cancelBooking($id)
Parameters:
- $id Integer
Returns Boolean.
Cancel booking. Signature is NOT required
createBatch
createBatch()
No arguments. Returns Integer.
Create booking batch Returns batch id
deleteDeviceToken
deleteDeviceToken($token)
Parameters:
- $token String- device token
Returns boolean.
Unsubscribe to push notifications gloabl or company
editBook
editBook($shedulerId, $eventId, $unitId, $clientId, $startDate, $startTime, $endDate, $endTime, $clientTimeOffset, $additional)
Parameters:
- $shedulerId Integer
- $eventId Integer
- $unitId Integer
- $clientId Integer
- $startDate String- in Y-m-d format
- $startTime String- in H:i:s format
- $endDate String- in Y-m-d format
- $endTime String- in H:i:s format
- $clientTimeOffset Integer
- $additional array|Object- additional params and fields.
Returns Object.
Edit existing booking
editClient
editClient($clientId, $clientData)
Parameters:
- $clientId Integer
- $clientData Object
Returns Integer.
Edits client's record. See addClient
method description for list of available fields.Method returns an id of client's record.
getAdditionalFields
getAdditionalFields($eventId)
Parameters:
- $eventId Integer
Returns Array.
Return additional fields for certain event if Additional fields plugin is activated. Returns empty array otherwise. Call isPluginActivated('event_field') API method to check if 'event_field' plugin activated.
getAnyUnitData
getAnyUnitData()
No arguments. Returns Object|null.
Returns information about Any Employee selector plugin configuration. Returns null if plugin not enabled.Example:
{ "description" : "Select this option, if you want to find an available time with any of the employees", "hide_other_units" : 1, // 1 or 0 "image" : null, "name" : "Any employee", "picture_path" : null, "random_selection" : 0 // 1 or 0 }
getAvailableUnits
getAvailableUnits($eventId, $dateTime, $count)
Parameters:
- $eventId Integer
- $dateTime Stringa date and time string in format Y-m-d H:i:s
- $count Integer
Returns Array.
Returns available unit ids for present data or empty array if all units are not allowed
Eg.: [1, 2, 3]
getBookingCancellationsInfo
getBookingCancellationsInfo($dateStart, $dateEnd)
Parameters:
- $dateStart Stringa date string in format 'Y-m-d'. Pass null to get data from first day of current week.
- $dateEnd Stringa date string in format 'Y-m-d'. Pass null to get data filtered to last day of current week.
Returns Array.
Returns statistics about created bookings and cancellations for a time period. Data presented as array of hashes for
each type of operation (created or cancelled booking) groped by clients. "type"
field can be either
"create", "cancel" or "nopayment_cancel". If "user_id"
not specified then bookings where created or
cancelled by admin or employee. Data with type "nopayment_cancel"
represents bookings cancelled
automatically by system.Example:
3 bookings where created by admin or employee and 2 bookings where automatically cancelled by system. [{ "cnt" : 3, "firstname" : null, "lastname" : null, "login" : null, "type" : "create", "user_id"" : null }, { "cnt" : 2, "firstname" : null, "lastname" : null, "login" : null, "type" : "nopayment_cancel", "user_id"" : null }]
getBookingComment
getBookingComment($id)
Parameters:
- $id Integer
Returns String.
Returns booking comment
getBookingDetails
getBookingDetails($id)
Parameters:
- $id integerbooking id
Returns Array.
Returns detailed bookings object by booking id. See response example.
getBookingLimitUnavailableTimeInterval($startDateTime, $endDateTime, $eventId)
Parameters:
- $startDateTime stringa date and time string in format 'Y-m-d H:i:s'
- $endDateTime stringa date and time string in format 'Y-m-d H:i:s'
- $eventId integer
Returns Array.
Returns time intervals not available for bookings because of configuration of Limit bookings plugin for period of time. Returns empty array if plugin not available.
getBookingRevenue
getBookingRevenue($dateStart, $dateEnd, $unitGroupId, $serviceId)
Parameters:
- $dateStart null
- $dateEnd null
- $unitGroupId integer
- $serviceId integer
Returns Array.
Return bookings count and revenue value for each date in specified period. Data grouped by unit id and represented as array with bookings count at index 0 and revenue amount at index 1. You can filter data either by unit or by service.Example:
['2015-11-12' : { 3 : [ 11, // bookings count 128.53 // revenue ]}
getBookingStats
getBookingStats($groupBy)
Parameters:
- $groupBy String
Returns Array.
Get bookings stats
getBookings
getBookings($params)
Parameters:
- $params
Returns Array.
Returns list of bookings filtered by given params. Filter params represented as object with following fields:* date_from a date of booking in string format 'Y-m-d'
- time_from a time string in format 'H:i:s'
- date_to a date string in format 'Y-m-d'
- time_to a time string in format 'H:i:s'
- created_date_from a date string in format 'Y-m-d'
- created_date_to a date string in format 'Y-m-d'
- unit_group_id an integer. Use it to get bookings assigned for certain service provider.
- event_id an integer. Use it to get bookings only for certain service.
- is_confirmed 1 or 0. If Approve booking plugin enabled then method will return confirmed bookings with approve status 'new'.
- client_id an integer. Use it to get bookings only for certain client.
- order string either 'record_date', 'date_start' or 'date_start_asc'. By default used 'date_start' value.
- booking_type a string. Value of this fiend depends on Approve booking plugin.
If plugin not active:
- all for all bookings (default value)
- cancelled alias to 'is_confirmed' equal to 0
- non_cancelled alias to 'is_confirmed' equal to 1
If plugin active:
- all for all bookings (default value)
- cancelled returns bookings with 'is_confirmed' field equals to 0 and approve booking status equals to 'cancelled' (or booking does not have any approve status)
- non_cancelled returns bookings with either 'is_confirmed' field equals to 1 or approve booking status equals to 'new'
- cancelled_by_client returns bookings approved by admin but cancelled by client
- cancelled_by_admin returns bookings cancelled by admin
- non_approved_yet returns bookings with approve status 'new'
- approved returns bookings with either 'is_confirmed' field equals to 1 and approve booking status equals to 'approved' (or booking does not have any approve status)
Example:
{ "date_from":"2015-12-29", "date_to":"2015-12-29", "booking_type":"cancelled", "event_id":"5", "order":"start_date" }
getBookingsZapier
getBookingsZapier()
No arguments. Returns Array.
Returns list of bookings filtered by given params
getCategoriesList
getCategoriesList($isPublic)
Parameters:
- $isPublic Boolean
Returns Array.
Returns company categories list if Service categories plugin is activated. Returns an error with code -32001 if plugin is not activated. Use isPluginActivated('event_category') API method to check if plugin activated.
getClient
getClient($clientId)
Parameters:
- $clientId
Returns Array.
Get client by id
getClientComments
getClientComments($clientId, $shedulerId)
Parameters:
- $clientId Integer
- $shedulerId Integer
Returns Array.
Returns list of all comments for given client
getClientList
getClientList($searchString, $limit)
Parameters:
- $searchString String
- $limit Integer
Returns Array.
Get list of clients
getCompanyCurrency
getCompanyCurrency()
No arguments. Returns String.
Returns company currency
getCompanyInfo
getCompanyInfo()
No arguments. Returns Object.
Returns company information
getCompanyParam
getCompanyParam($key)
Parameters:
- $key String
Returns mixed.
Returns company config value for key. A different set of keys available for public API and for company administration API. Method return 'invalid params' error (code -32602) in case if access to specified key not allowed. See list of available keys.
getCountryList
getCountryList()
No arguments. Returns Array.
Get list of all countries
getCountryPhoneCodes
getCountryPhoneCodes()
No arguments. Returns Array.
Returns country phone code list
getCurrentTariffInfo
getCurrentTariffInfo()
No arguments. Returns Array.
Return all information about current tariff
getCurrentUserDetails
getCurrentUserDetails()
No arguments. Returns Array.
Returns current logged user info
getEventList
getEventList($isVisibleOnly, $asArray)
Parameters:
- $isVisibleOnly Boolean
- $asArray Boolean
Returns Array.
Returns company events list
getFeedbacks
getFeedbacks($approvedOnly, $reviewsOnly, $lastOnly, $limit)
Parameters:
- $approvedOnly Boolean
- $reviewsOnly Boolean
- $lastOnly Boolean
- $limit Integer
Returns Array.
Get list of feedbacks
getFirstWorkingDay
getFirstWorkingDay($unitId)
Parameters:
- $unitId Integer
Returns String.
Returns first working date for unit
getGoogleCalendarBusyTime
getGoogleCalendarBusyTime($startDateTime, $endDateTime, $unitId)
Parameters:
- $startDateTime string
- $endDateTime string
- $unitId integer
Returns Array.
Return busy time by unit id by GoogleCalendar plugin if enabled.If cache is not expired will return from cache, else load from google and save to cache
getGoogleCalendarBusyTimeAvailableUnits
getGoogleCalendarBusyTimeAvailableUnits()
No arguments. Returns Array.
Returns configured unit ids, allowed to sync busy time
getLastNotificationUpdate
getLastNotificationUpdate($type)
Parameters:
- $type String
Returns String.
Returns last update datetime
getLocationsList
getLocationsList($isPublic)
Parameters:
- $isPublic Boolean
Returns Array.
Returns available locations for company if plugin Unit location plugin is activated. Return an error with code -32001 if plugin is not activated. Use isPluginActivated('location') API method to check if plugin activated.
getPluginList
getPluginList()
No arguments. Returns Array.
Get list of plugins with status
getPluginStatuses
getPluginStatuses($pluginNames)
Parameters:
- $pluginNames Array
Returns Array.
Return plugin status true if status active, else false. See list of available plugin's names.
getRecentActions
getRecentActions($lastOnly, $limit)
Parameters:
- $lastOnly Boolean
- $limit Integer
Returns Array.
Returns latest actions
getRecurringDatetimes
getRecurringDatetimes($eventId, $unitId, $date, $time, $recurringData, $endDateTime)
Parameters:
- $eventId Integer
- $unitId Integer
- $date String
- $time String
- $recurringData Array
- $endDateTime null
Returns Array.
Get list of dates for recurring booking
getRecurringSettings
getRecurringSettings($eventId)
Parameters:
- $eventId Integer
Returns Array.
Get recurring settings for event
getRegistrations
getRegistrations($groupBy)
Parameters:
- $groupBy String
Returns Array.
Get number of registration grouped by day/week/month
getReservedTime
getReservedTime($from, $to, $eventId, $unitId, $count)
Parameters:
- $from String
- $to String
- $eventId Integer
- $unitId Integer
- $count Integer
Returns Object.
Returns not available time
Eg.: {'2014-05-14': [{'events': [{'from': '14:00', 'to': '14:30'}], 'type': "reserved_time"}, ...], ...}
getSocialCounterStats
getSocialCounterStats($provider)
Parameters:
- $provider String
Returns Integer.
Returns social counters value for your domain
getStartTimeMatrix
getStartTimeMatrix($from, $to, $eventId, $unitId, $count)
Parameters:
- $from String
- $to String
- $eventId Integer
- $unitId Mixedcan be Integer or Array of Integers
- $count Integer
Returns Object.
Returns available start time, taking into account breaktimes, start and end working time
Eg.: {'2014-05-14': ['09:00:00', ...], ...}
If locations plugin activated for company you should pass a list as $unitID parameter for filter results with units available only for selected location. See Unit location plugin description for more details.
getStatuses
getStatuses()
No arguments. Returns Array.
Return list of available statuses
getTimeframe
getTimeframe()
No arguments. Returns Integer.
Returns company timeframe
getTopPerformers
getTopPerformers()
No arguments. Returns Array.
Get list of performers with number of bookings and revenues per service
getTopServices
getTopServices($dateStart, $dateEnd)
Parameters:
- $dateStart String
- $dateEnd String
Returns Array.
Get list of services with number of bookings and revenues per service
getUnitList
getUnitList($isVisibleOnly, $asArray)
Parameters:
- $isVisibleOnly Boolean
- $asArray Boolean
Returns Array.
Returns service performrs list
getUnitWorkdayInfo
getUnitWorkdayInfo($dateStart, $dateEnd, $unitGroupId)
Parameters:
- $dateStart
- $dateEnd
- $unitGroupId integer
Returns Array.
Return workday info (date_start and date_end)
getUnitWorkingDurations
getUnitWorkingDurations($dateStart, $dateEnd, $unitGroupId)
Parameters:
- $dateStart null
- $dateEnd null
- $unitGroupId integer
Returns Array.
Return working durations
getVisitorStats
getVisitorStats($groupBy)
Parameters:
- $groupBy String
Returns Array.
Get visitor stats
getWorkCalendar
getWorkCalendar($year, $month, $unitId)
Parameters:
- $year Integer
- $month Integer
- $unitId Integer
Returns Object.
Returns company work schedule as array
Eg.: {'2014-05-01': {'from': '09:00:00', 'to': '21:00:00', 'is_day_off': '0'}, '2014-05-02': ...}
getWorkDaysInfo
getWorkDaysInfo($from, $to, $unitId, $eventId)
Parameters:
- $from String
- $to String
- $unitId Integer
- $eventId null
Returns Object.
Returns working time for date period, taking into account breaktimes
Eg.: {'2014-05-14': [{'from': '09:00:00', 'to': '10:00:00'}, ...], ...}
getWorkDaysTimes
getWorkDaysTimes($startDateTime, $endDateTime)
Parameters:
- $startDateTime string
- $endDateTime string
Returns Array.
Return busy time by unit id by GoogleCalendar plugin if enabled.If cache is not expired will return from cache, else load from google and save to cache
getWorkload
getWorkload($dateStart, $dateEnd, $unitGroupId)
Parameters:
- $dateStart null
- $dateEnd null
- $unitGroupId integer
Returns Array.
Return workload data for units in period of time. Workload for each unit represented as array with work hours at index 0, confirmed booking hours as load at index 1 and cancelled bookings hours at index 2.Example:
['2015-10-21' : { 5 : [ 10, // working hours 10, // load hours (confirmed bookings hours) 0 // cancelled bookings hours ] }]
isPluginActivated
isPluginActivated($pluginName)
Parameters:
- $pluginName String
Returns Boolean.
Return plugin status true if status active, else false. $pluginName parameter is a plugin identifier.See plugins page for full plugins description. See list of available plugin's names.
pluginApproveBookingApprove
pluginApproveBookingApprove($id)
Parameters:
- $id Integer
Returns Array.
Approve booking (approve booking plugin) Return approved booking ids
pluginApproveBookingCancel
pluginApproveBookingCancel($id)
Parameters:
- $id Integer
Returns Boolean.
Cancel booking (approve booking plugin)
pluginApproveGetPendingBookings
pluginApproveGetPendingBookings()
No arguments. Returns array.
Return list of all pending bookings
pluginApproveGetPendingBookingsCount
pluginApproveGetPendingBookingsCount()
No arguments. Returns Integer.
Return count of pending bookings
setBookingComment
setBookingComment($id, $comment)
Parameters:
- $id Integer
- $comment String
Returns Integer.
Set booking comment
setStatus
setStatus($bookingId, $statusId)
Parameters:
- $bookingId Integer
- $statusId Integer
Returns Boolean.
Set status
updateNotification
updateNotification($type)
Parameters:
- $type String
Returns .
Mark notifications as readed
Constants
Error codes
- ERROR_BOOKING_ACCESS_DENIED
- ERROR_PLUGIN_DISABLED
- ERROR_EVENT_ID_VALUE
- ERROR_UNIT_ID_VALUE
- ERROR_DATE_VALUE
- ERROR_TIME_VALUE
- ERROR_RECURRENT_BOOKING
- ERROR_LIMIT_BOOKING
- ERROR_CLIENT_NAME_VALUE
- ERROR_CLIENT_EMAIL_VALUE
- ERROR_CLIENT_PHONE_VALUE
- ERROR_CLIENT_ID
- ERROR_ADDITIONAL_FIELDS
- ERROR_APPOINTMENT_NOT_FOUND
- ERROR_SIGN
- ERROR_APPLICATION_CONFIRMATION
- ERROR_BATCH_NOT_FOUND
- ERROR_UNSUPPORTED_PAYMENT_SYSTEM
- ERROR_PAYMENT_FAILED
- ERROR_REQUIRED_PARAMS_MISSED
- ERROR_PARAMS_IS_NOT_ARRAY
- ERROR_PARAMS_SHEDULER_ID
- ERROR_PROMOCODE_INVALID
- ERROR_PROMOCODE_EXPIRED
- ERROR_PROMOCODE_NOT_ACTIVE_YET
- ERROR_PROMOCODE_INVALID_SERVICE
- ERROR_PROMOCODE_COUNT_EXCEED
- ERROR_PROMOCODE_COUNT_PER_CUSTOMER_EXCEED
- ERROR_PROMOCODE_INVALID_BOOKING_DATETIME
- DATETIME_FORMAT
- DATE_FORMAT
- RECURRENT_BOOKING_BATCH
- GROUP_BOOKING_BATCH
- MULTIPLE_BOOKING_BATCH
Company params
Use these values to get configuration params for company with getCompanyParam
API method.
Administration API inherits all keys allowed for public API and extends this list with keys:
- attach_ical
- auto_redirect
- auto_redirect_text
- blockchain_address
- blockchain_secret
- borgun_merchant_id
- borgun_payment_gateway_id
- borgun_secret_code
- changable_prefix_by_client
- client_batch_cancel_template
- client_batch_cancel_template_email
- client_batch_cancel_template_email_subject
- client_event_cancel_template
- client_event_cancel_template_email
- client_event_cancel_template_email_subject
- client_event_change_template
- client_event_change_template_email
- client_event_change_template_email_subject
- client_event_creation_template
- client_event_creation_template_email
- client_event_creation_template_email_subject
- client_event_group_creation_template
- client_event_group_creation_template_email
- client_event_group_creation_template_email_subject
- client_event_multiple_creation_template
- client_event_multiple_creation_template_email
- client_event_multiple_creation_template_email_subject
- client_group_notification_template
- client_group_notification_template_email
- client_group_notification_template_email_subject
- client_multiple_notification_template
- client_multiple_notification_template_email
- client_multiple_notification_template_email_subject
- client_notification_template
- client_notification_template_email
- client_notification_template_email_subject
- client_notification_time
- client_recurring_event_creation_template
- client_recurring_event_creation_template_email
- client_recurring_event_creation_template_email_subject
- common_limit_booking
- company_currency
- company_ga_tracking_id
- default_phone
- disconnect_on_timeout
- dwolla_application_key
- dwolla_id
- dwolla_secret_key
- email_event_list
- email_events_list_template
- email_group_events_list_template
- event_list_style
- feed_back_interval
- feedback_invite_template_email
- feedback_invite_template_email_subject
- google_conversion_color
- google_conversion_currency
- google_conversion_format
- google_conversion_id
- google_conversion_label
- google_conversion_language
- google_conversion_value
- hide_working_hours_block
- include_cancel_link
- kortais_merchant
- kortais_secret_code
- kortais_terminal
- layout_background
- layout_background_repeat
- liqpay_merchant_id
- liqpay_merchant_pass
- mobile_site_link
- mobile_site_link_title
- no_show_period
- on_success_button_link
- on_success_button_text
- paypal_account
- recap_interval
- recap_send_after_time
- recap_send_canceled_bookings
- recap_send_new_bookings
- recap_send_upcomming_bookings
- send_cancel_to_client
- send_cancel_to_client_email
- send_cancel_to_unit
- send_cancel_to_unit_email
- send_contact_widget_email_notification
- send_contact_widget_sms_notification
- send_notify_to_client
- send_notify_to_client_email
- send_notify_to_unit
- send_notify_to_unit_email
- send_onchange_to_client
- send_onchange_to_client_email
- send_onchange_to_unit
- send_onchange_to_unit_email
- send_oncreate_to_client
- send_oncreate_to_client_email
- send_oncreate_to_unit
- send_oncreate_to_unit_email
- send_sms_if_push_enabled
- site_link
- site_link_title
- skip_limits_for_admin
- skip_show_mobile_app_ads
- skip_show_on_success_button
- skrill_account
- skrill_secret
- sms_event_list
- sms_events_list_template
- sms_group_events_list_template
- unit_batch_cancel_template
- unit_batch_cancel_template_email
- unit_batch_cancel_template_email_subject
- unit_event_cancel_template
- unit_event_cancel_template_email
- unit_event_cancel_template_email_subject
- unit_event_change_template
- unit_event_change_template_email
- unit_event_change_template_email_subject
- unit_event_creation_template
- unit_event_creation_template_email
- unit_event_creation_template_email_subject
- unit_event_group_creation_template
- unit_event_group_creation_template_email
- unit_event_group_creation_template_email_subject
- unit_group_notification_template
- unit_group_notification_template_email
- unit_group_notification_template_email_subject
- unit_notification_template
- unit_notification_template_email
- unit_notification_template_email_subject
- unit_notification_time
- unit_recurring_event_creation_template
- unit_recurring_event_creation_template_email
- unit_recurring_event_creation_template_email_subject
- use_common_client_db
- user_confirmation
- user_license_text
- user_public_layout
- user_public_theme
- waiting_video
- zooz_app_id
- zooz_app_key
Plugin's identifiers
Plugin identifier is a string constant which represents a plugin in system. These constants used in isPluginActivated
and getPluginStatuses
API methods.
- advanced_notification
- Book Soon notification system plugin
- any_unit
- Any Employee selector plugin
- api
- API plugin
- approve_booking
- Approve booking plugin
- back_to_site
- Take me back home plugin
- contact_widget
- Contact widget plugin
- counter
- Visitor Counter plugin
- custom_css
- Custom CSS plugin
- data_security
- Clean history plugin
- description
- HTML description field for events
- event_category
- Service categories plugin
- event_field
- Additional fields plugin
- facebookImage
- Facebook client info plugin
- financial_dashboard
- Insights plugin
- google_analytics
- Google Adwords and analytics plugin
- google_calendar_export
- Google calendar sync plugin
- group_booking
- Group bookings plugin
- hipaa
- HIPAA plugin
- limit_bookings
- Limit bookings plugin
- location
- Unit location plugin
- mobile_app_backend
- Mobile application plugin
- multiple_booking
- Multiple bookings plugin
- news
- News plugin
- paid_events
- Accept payments plugin
- promo
- Simply Smart Promotions plugin
- recap
- Daily report plugin
- secure
- SSL plugin
- status
- Status plugin
- unit_colors
- Providers color coding plugin
- user_license
- Terms and conditions plugin
See Plugins page for description for each plugin.
Examples
getBookingDetails response
An example of data returned by getBookingDetails API method.
{ "id": "321", "event_id": "5", "event_name": "Massage", "unit_id": "3", "unit_name": "John", "client_id": "1", "client_name": "Bob", "start_date_time": "2015-11-25 15:00:00", "end_date_time": "2015-11-25 16:00:00", "is_confirmed": "1", "code": "h8v8w5ls", "record_date": "2015-11-19 04:06:38", "comment": null, "company_login": "testzt", "company_name": "My Cool Company", "company_phone": "+1-555-55-55", "company_email": "into@mycoolcompany.com", "additional_fields": [{ "value": "on", "field_name": "201a89517de509f6b3a60858918faac3", "field_title": "Include washing", "field_position": "4", "field_type": "checkbox", "field_id": "4" }], "comments": [], "history": [{ "id": "536", "sheduler_id": "321", "datetime": "2015-11-19 11:06:38", "type": "create", "user_id": "1", "agent": "SimplyBook.me\/55 CFNetwork\/758.0.2 Darwin\/15.0.0", "ip": "213.174.0.53, 158.69.224.50:127.0.0.1", "referer": "", "login": "admin", "firstname": "Mikhail", "lastname": "" }], "status": { "id": "3", "name": "Fancy Status", "description": null, "color": "4cbadb", "is_default": "1" }, "location": { "id": "1", "title": "location", "description": null, "picture": "e1e9409fe9682c78b2f8f294dc151af0.jpg", "address1": null, "address2": "Saint Margaret Street", "city": "\u041b\u043e\u043d\u0434\u043e\u043d", "zip": null, "country_id": "GB", "lat": "51.50013000000000000000", "lng": "-0.12630500000000000000", "phone": "44", "position": "1", "is_default": "1" }, "price": [], "promo": false }
Location field is present in response only if Unit location plugin is enabled. Otherwise this field will be an empty array. If locations plugin is enabled but booking doesn't have any locations this fields also will be an empty array.
Status field is present in response only if Status plugin is enabled. Otherwise this field will be an empty array. If plugin enabled but booking doesn't have any statues specified the default status returned.
Price field is present in response only if Accept payments plugin is enabled. Otherwise this field will be an empty array. This field contains an empty array if plugin is enabled but booking was created for a free service.
Promo field is present in response only if Simply Smart Promotions plugin is enabled. Otherwise this field will be an empty array. This field contains false if plugin is enabled but booking was created without any promo codes.
additional_fields
fields is present in response only if Additional fields plugin is enabled. Otherwise this field will be an empty array. This field contains an empty array if plugin is enabled but booking was created for a service with no additional fields.