Company public service methods: Difference between revisions
No edit summary |
No edit summary |
||
| (27 intermediate revisions by one other user not shown) | |||
| Line 1: | Line 1: | ||
{{#seo: | |||
|title=Company public service methods - SimplyBook.me | |||
|description=Explore public-facing service methods to improve client access. Manage service visibility with ease. Learn more now! | |||
|titlemode=append | |||
|keywords=faq, frequently asked questions, booking software, appointment system questions, appointments online, calendar software, booking system, booking calendar, scheduling software, online appointment scheduling, online scheduling, setup, setup help, support, help content | |||
}} | |||
==General Information== | ==General Information== | ||
| Line 30: | Line 37: | ||
"1": { | "1": { | ||
"id": "1", | "id": "1", | ||
"name": " | "name": "Hourly photoshoot", | ||
"duration": "60", | "duration": "60", | ||
"hide_duration": "0", | "hide_duration": "0", | ||
"description": "<p> | "description": "<p>If you want to try yourself as a model but haven't decided on an image. <br /> 5-7 retouched and print-ready photos + the raw footage on a disc </p>", | ||
"picture": "a200edab10b669225e22d2b3803a38b5.jpg", | "picture": "a200edab10b669225e22d2b3803a38b5.jpg", | ||
"is_public": "1", | "is_public": "1", | ||
| Line 76: | Line 83: | ||
* <code>X-Company-Login</code> | * <code>X-Company-Login</code> | ||
* <code>X-Token</code> an authentication token. See [[#Authentication|authentication]] section. | * <code>X-Token</code> an authentication token. See [[Company public service methods#Authentication|authentication]] section. | ||
===Endpoint=== | ===Endpoint=== | ||
| Line 84: | Line 91: | ||
===Authentication=== | ===Authentication=== | ||
Using Simplybook API methods require an authentification. To authorize in Simplybook API you need to get an access key — access-token. In order to get this access-token you should call the JSON-RPC method <code>[[Authentication#getToken|getToken]]</code> API method on https://user-api.simplybook.me/login service passing your personal API-key. You can copy your API-key at admin interface: go to the ' | Using Simplybook API methods require an authentification. To authorize in Simplybook API you need to get an access key — access-token. In order to get this access-token you should call the JSON-RPC method <code>[[Authentication#getToken|getToken]]</code> API method on https://user-api.simplybook.me/login service passing your personal API-key. You can copy your API-key at admin interface: go to the 'Custom Features' link and select [[Custom Features#API|API Custom Feature]] 'Settings'. | ||
== Methods == | == Methods == | ||
| Line 110: | Line 117: | ||
<code>require_confirm = true</code>. <code>$startDate</code> and <code>$startTime</code> specifies a date of | <code>require_confirm = true</code>. <code>$startDate</code> and <code>$startTime</code> specifies a date of | ||
booking and time slot. Time value should be multiple to 'timeframe' configuration of company (see | booking and time slot. Time value should be multiple to 'timeframe' configuration of company (see | ||
<code>[[#getTimeframe|getTimeframe]]</code> API method). <code>$endDate</code> and <code>$endTime</code> parameters | <code>[[Company public service methods#getTimeframe|getTimeframe]]</code> API method). <code>$endDate</code> and <code>$endTime</code> parameters | ||
should be calculated according to service duration. However you can specify different values to make appointment | should be calculated according to service duration. However you can specify different values to make appointment | ||
longer or shorter then service configuration. Note that <code>$endDate</code> and <code>$endTime</code> should be | longer or shorter then service configuration. Note that <code>$endDate</code> and <code>$endTime</code> should be | ||
later in time than <code>$startDate</code> and <code>$startTime</code>. If your clients located in different time | later in time than <code>$startDate</code> and <code>$startTime</code>. If your clients located in different time | ||
zone you should specify <code>'client_time_offset'</code> value in <code>$clientData</code> object as difference | zone you should specify <code>'client_time_offset'</code> value in <code>$clientData</code> object as difference | ||
between | between client's time zone and company's time zone in minutes. For example if company located in city with time | ||
zone GMT+2 and customer located in city with GMT+3 then <code>$clientTimeOffset</code> will be | zone GMT+2 and customer located in city with GMT+3 then <code>$clientTimeOffset</code> will be 60 minutes. You | ||
can get information about company's time zone using <code>[[#getCompanyInfo|getCompanyInfo]]</code> API method. To | can get information about company's time zone using <code>[[Company public service methods#getCompanyInfo|getCompanyInfo]]</code> API method. To | ||
create batch booking you can specify either <code>count</code> more then 1 or valid <code>batchId</code> (only one | create batch booking you can specify either <code>count</code> more then 1 or valid <code>batchId</code> (only one | ||
parameter can be specified). You should specify an <code>$additionalFields</code> parameter if service requires | parameter can be specified). You should specify an <code>$additionalFields</code> parameter if service requires | ||
some | some intake forms (see [[Custom Features#Intake Forms|Intake Forms Custom feature]]). To create a booking with promo code you | ||
should pass it as additional field. For example: <code>{"name": "promocode", "value": "some code", "type": "text"}</code>See [[#book response|example]] of <code>book</code> API method response. | should pass it as additional field. For example: <code>{"name": "promocode", "value": "some code", "type": "text"}</code>See [[Company public service methods#book response|example]] of <code>book</code> API method response. | ||
See also: | See also: | ||
* [ | * [https://help.simplybook.me/index.php/Need_to_change_interval_(timeframe) Timeframe information] | ||
---- | |||
=== calculateEndTime === | |||
<code>calculateEndTime($startDateTime, $eventId, $unitId)</code> | |||
Parameters: | |||
* '''$startDateTime''' String a 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 | |||
---- | ---- | ||
| Line 141: | Line 165: | ||
Cancels a booking. <code>$sign</code> parameter must be a string created with formula: <code>md5($bookingId . $bookingHash . $secretKey) | Cancels a booking. <code>$sign</code> parameter must be a string created with formula: <code>md5($bookingId . $bookingHash . $secretKey) | ||
</code>. You can get <code>$bookingHash</code> value as result of <code>[[#book|book]]</code> API method call. Method | </code>. You can get <code>$bookingHash</code> value as result of <code>[[Company public service methods#book|book]]</code> API method call. Method | ||
return an error with code -32080 (Appointment couldn't be found) if record with specified id not exists. Methods returns | return an error with code -32080 (Appointment couldn't be found) if record with specified id not exists. Methods returns | ||
an error with code -32085 (Signature error) if <code>$sign</code> parameter is wrong. | an error with code -32085 (Signature error) if <code>$sign</code> parameter is wrong. | ||
| Line 219: | Line 243: | ||
---- | ---- | ||
=== confirmBookingPayment === | === confirmBookingPayment !Deprecated!=== | ||
<code>confirmBookingPayment($id, $paymentProcessor, $sign)</code> | <code>confirmBookingPayment($id, $paymentProcessor, $sign)</code> | ||
| Line 233: | Line 257: | ||
Confirm booking payment. Signature is required.$sign = md5($bookingId . $bookingHash . $secretKey); | Confirm booking payment. Signature is required.$sign = md5($bookingId . $bookingHash . $secretKey); | ||
Call this method from server side only | Call this method from server side only | ||
---- | |||
=== createBatch === | |||
<code>createBatch()</code> | |||
No arguments. | |||
Returns Integer. | |||
Creates new booking batch record. Returns newly created batch id. You can use this id in <code>[[Company public service methods#book|book]]</code> | |||
API method. | |||
---- | |||
=== filterAvailableUnits === | |||
<code>filterAvailableUnits($eventId, $dateTime, $unitIds, $count)</code> | |||
Parameters: | |||
* '''$eventId''' Integer | |||
* '''$dateTime''' String a date and time string in format 'Y-m-d H:i:s' | |||
* '''$unitIds''' | |||
* '''$count''' Integer | |||
Returns Array. | |||
Returns list of available unit ids for specified date and service from provided $unitIds list.You can use this method with locations Custom feature. | |||
Returns empty array if all units are not allowed. | |||
Eg.: <code>[1, 2, 3]</code> | |||
---- | |||
=== getAdditionalFields === | |||
<code>getAdditionalFields($eventId)</code> | |||
Parameters: | |||
* '''$eventId''' Integer | |||
Returns Array. | |||
Return intake forms for certain event if [[Custom Features#Intake Forms|Intake Forms Custom feature]] is | |||
activated. Returns empty array otherwise. Call <code>[[Company public service methods#isPluginActivated|isPluginActivated('event_field')]]</code> | |||
API method to check if 'event_field' Custom Feature activated. | |||
---- | |||
=== getAnyUnitData === | |||
<code>getAnyUnitData()</code> | |||
No arguments. | |||
Returns Object|null. | |||
Returns information about [[Custom Features#Any Employee Selector|Any Employee Selector Custom Feature]] configuration. Returns | |||
null if Custom Feature 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 | |||
} | |||
---- | |||
=== getAvailableTimeIntervals === | |||
<code>getAvailableTimeIntervals($dateFrom, $dateTo, $eventId, $unitId, $count)</code> | |||
Parameters: | |||
* '''$dateFrom''' String | |||
* '''$dateTo''' String | |||
* '''$eventId''' Integer | |||
* '''$unitId''' Mixed can be Integer or Array of Integers | |||
* '''$count''' Integer | |||
Returns Object. | |||
Returns available time intervals for all service providers for given period, taking into account breaktimes, start and end working time | |||
Eg.: <code>{['2016-03-04': ['1': [['09:00:00','09:30:00'], ['11:15:00','14:45:00']] , ...], ...]}</code> | |||
---- | |||
=== getAvailableUnits === | |||
<code>getAvailableUnits($eventId, $dateTime, $count)</code> | |||
Parameters: | |||
* '''$eventId''' Integer | |||
* '''$dateTime''' String a date and time string in format 'Y-m-d H:i:s' | |||
* '''$count''' Integer | |||
Returns Array. | |||
Returns list of available unit ids for specified date and service or empty array if all units are not allowed.Eg.: <code>[1, 2, 3]</code> | |||
| Line 250: | Line 382: | ||
Returns an object with details information about booking. <code>$sign</code> parameter must be a string created | Returns an object with details information about booking. <code>$sign</code> parameter must be a string created | ||
with formula: <code>md5($bookingId . $bookingHash . $secretKey)</code>. You can get <code>$bookingHash</code> | with formula: <code>md5($bookingId . $bookingHash . $secretKey)</code>. You can get <code>$bookingHash</code> | ||
value as result of <code>[[#book|book]]</code> API method call. Method return an error with code -32080 | value as result of <code>[[Company public service methods#book|book]]</code> API method call. Method return an error with code -32080 | ||
(Appointment couldn't be found) if record with specified id not exists. Methods returns an error with code -32085 | (Appointment couldn't be found) if record with specified id not exists. Methods returns an error with code -32085 | ||
(Signature error) if <code>$sign</code> parameter is wrong. | (Signature error) if <code>$sign</code> parameter is wrong. | ||
| Line 267: | Line 399: | ||
Returns Object. | Returns Object. | ||
Returns cart information by bookings ids.<code>cart_id</code> and <code>cart_hash</code> is used to create secure signature to confirm cart payment. | Returns cart information by bookings ids. | ||
<code>amount</code> - is total amount to payment | |||
<code>currency</code> - cart currency | * <code>cart_id</code> and <code>cart_hash</code> is used to create secure signature to confirm cart payment. | ||
<code>cart</code> - contains cart items. You can use them to provide information for payment system. Each item is object with following fields: | * <code>amount</code> - is total amount to payment | ||
<code>id</code> - booking id | * <code>currency</code> - cart currency | ||
<code>event_id</code> - service id | * <code>cart</code> - contains cart items. You can use them to provide information for payment system. Each item is object with following fields: | ||
<code>name</code> - event name + start date time (use it to provide cart information for payment system) | * <code>id</code> - booking id | ||
<code>price</code> - booking price | * <code>event_id</code> - service id | ||
<code>qty</code> - qty of bookings | * <code>name</code> - event name + start date time (use it to provide cart information for payment system) | ||
* <code>price</code> - booking price | |||
* <code>qty</code> - qty of bookings | |||
| Line 293: | Line 427: | ||
Returns an object with details information about booking. <code>$sign</code> parameter must be a string created | Returns an object with details information about booking. <code>$sign</code> parameter must be a string created | ||
with formula: <code>md5($bookingId . $bookingHash . $secretKey)</code>. You can get <code>$bookingHash</code> | with formula: <code>md5($bookingId . $bookingHash . $secretKey)</code>. You can get <code>$bookingHash</code> | ||
value as result of <code>[[#book|book]]</code> API method call. Method return an error with code -32080 | value as result of <code>[[Company public service methods#book|book]]</code> API method call. Method return an error with code -32080 | ||
(Appointment couldn't be found) if record with specified id not exists. Methods returns an error with code -32085 | (Appointment couldn't be found) if record with specified id not exists. Methods returns an error with code -32085 | ||
(Signature error) if <code>$sign</code> parameter is wrong. | (Signature error) if <code>$sign</code> parameter is wrong. | ||
| Line 310: | Line 444: | ||
Returns Array. | Returns Array. | ||
Returns company categories list if [[Custom Features#Service Categories|Service Categories Custom Feature]] is activated. Returns | |||
an error with code -32001 if Custom Feature is not activated. Use <code>[[Company public service methods#isPluginActivated|isPluginActivated('event_category')]]</code> | |||
API method to check if Custom Feature activated. | |||
---- | |||
=== getCompanyInfo === | |||
<code>getCompanyInfo()</code> | |||
No arguments. | |||
Returns Object. | |||
Returns an object with detailed information about company. See [[Company public service methods#getCompanyInfo response|example of response]]. | |||
---- | |||
=== getCompanyParam === | |||
<code>getCompanyParam($key)</code> | |||
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 [[Company public service methods#Company params|list of available keys]]. | |||
---- | |||
=== getCompanyParams === | |||
<code>getCompanyParams($keys)</code> | |||
Parameters: | |||
* '''$keys''' Array | |||
Returns Array. | |||
Returns company's config values for specified keys as key-value map. For non-existent and not-allowed param keys | |||
it will return '''false''' as result. A different set of keys available for public API and for company | |||
administration API. See [[Company public service methods#Company params|list of available keys]]. | |||
---- | |||
=== getCompanyTimezoneOffset === | |||
<code>getCompanyTimezoneOffset()</code> | |||
No arguments. | |||
Returns array. | |||
Returns company timezone offset and company timezone | |||
---- | |||
=== getCountryPhoneCodes === | |||
<code>getCountryPhoneCodes()</code> | |||
No arguments. | |||
Returns Array. | |||
Returns country phone code list | |||
| Line 326: | Line 531: | ||
Returns Array. | Returns Array. | ||
Returns company's events list. If <code>$asArray</code> is false then method returns a map with event id as key | |||
and details object as value. If parameter set to true then method returns a list sorted by 'position' property of | |||
event's details object. | |||
---- | |||
=== getFirstWorkingDay === | |||
<code>getFirstWorkingDay($unitId)</code> | |||
Parameters: | |||
* '''$unitId''' Integer | |||
Returns String. | |||
Returns first working date for unit | |||
| Line 337: | Line 559: | ||
Parameters: | Parameters: | ||
* '''$isPublic''' Boolean | * '''$isPublic''' Boolean Optional. Default value is '''false'''. | ||
* '''$asArray''' | * '''$asArray''' boolean Optional. Default value is '''false'''. | ||
Returns Array. | Returns Array. | ||
Returns available locations for company if Custom Feature [[Custom Features#Multiple Locations|Multiple locations Custom Feature]] is activated. Return | |||
an error with code -32001 if Custom Feature is not activated. Use <code>[[Company public service methods#isPluginActivated|isPluginActivated('location')]]</code> | |||
API method to check if Custom Feature activated. | |||
This method accepts two boolean flags as parameters. If '''isPublic''' flag is '''true''' then method returns only | |||
public locations. If '''asArray''' flag is '''true''' method returns list of objects. Otherwise method returns | |||
map of objects with object id as key. You can omit both parameters. | |||
---- | ---- | ||
| Line 358: | Line 585: | ||
Returns payment processor config | Returns payment processor config | ||
---- | |||
<!----=== getPluginPromoInfoByCode === | |||
<code>getPluginPromoInfoByCode($code)</code> | |||
Parameters: | |||
* '''$code''' | |||
Returns Array. | |||
Returns an object with detailed information about Rewards and referrals promotion by promotion code. You can get promotion code | |||
using <code>[[Catalogue#getPromotionList|getPromotionList]]</code> API method. If promotion record with specified | |||
code not found then method returns an empty array (an empty object). If [[Rewards_and_Referrals_custom_feature|Rewards and Referrals Custom Feature]] | |||
not enabled then method returns an error with code -32001 (Custom Feature is not activated). Use | |||
<code>[[#isPluginActivated|isPluginActivated('promo')]]</code> API method call to check if Custom Feature enabled.See [[#getPromotionList response|example]] of <code>getPromotionList</code> API method response. Please note that | |||
response contains a list of services for wich promotion discount can be applied (<code>service_ids</code> key).--> | |||
---- | |||
=== getPluginStatuses === | |||
<code>getPluginStatuses($pluginNames)</code> | |||
Parameters: | |||
* '''$pluginNames''' Array | |||
Returns Array. | |||
Return Custom Feature status true if status active, else false. See [[Company public service methods#Custom Features.27 identifiers|list of available Custom Feature's names]]. | |||
| Line 378: | Line 640: | ||
---- | ---- | ||
=== getPromotionRewardInfo === | <!---=== getPromotionRewardInfo === | ||
<code>getPromotionRewardInfo($commonPromotionId, $clientId, $hash)</code> | <code>getPromotionRewardInfo($commonPromotionId, $clientId, $hash)</code> | ||
| Line 392: | Line 654: | ||
Returns promotion reward by common promotion id, client id and hash. | Returns promotion reward by common promotion id, client id and hash. | ||
--> | |||
---- | ---- | ||
| Line 410: | Line 672: | ||
Get list of dates for recurring booking | Get list of dates for recurring booking | ||
---- | |||
=== getReservedTime === | |||
<code>getReservedTime($from, $to, $eventId, $unitId, $count)</code> | |||
Parameters: | |||
* '''$from''' String | |||
* '''$to''' String | |||
* '''$eventId''' Integer | |||
* '''$unitId''' Integer | |||
* '''$count''' Integer | |||
Returns Object. | |||
Returns map of objects for each day in specified date range. The key of the result mps is a date string. The value | |||
is an array of two objects. Both objects contains list of time slots for type <code>reserved_time</code> and type | |||
<code>not_worked_time</code>. <code>reserved_time</code> type represents time slots working time but already booked | |||
by clients. Nobody knows what kind of data represented by <code>not_worked_time</code> type. Please don't use it.If [[Custom Features#Calendar Sync|Calendar Sync Custom Feature]] is enabled then object with | |||
<code>reserved_time</code> type will contain not empty list of time slots marked as busy in Google calendar. Call | |||
<code>[[Company public service methods#isPluginActivated|isPluginActivated('google_calendar_export')]]</code> API method to check if Calendar Sync Custom Feature activated. | |||
Example: | |||
<pre> | |||
{ | |||
"2016-02-05": [ | |||
{ | |||
"dd": [], // time slots from Google calendar | |||
"events": [ // reserved time slots | |||
{ "from": "16:00", "to": "16:30" }, | |||
{ "from": "16:30", "to": "17:00" }, | |||
... ], | |||
"type": "reserved_time", | |||
}, | |||
{ | |||
"events": [ | |||
{ "from": "09:00", "to": "09:30" }, | |||
{ "from": "09:30", "to": "10:00" }, | |||
... ], | |||
"type": "not_worked_time" | |||
}], | |||
... | |||
} | |||
</pre> | |||
---- | |||
=== getReservedTimeIntervals === | |||
<code>getReservedTimeIntervals($dateFrom, $dateTo, $eventId, $unitId, $count)</code> | |||
Parameters: | |||
* '''$dateFrom''' String | |||
* '''$dateTo''' String | |||
* '''$eventId''' Integer | |||
* '''$unitId''' Integer|Array | |||
* '''$count''' Integer | |||
Returns Object. | |||
Returns not available time | |||
Eg.: <code>{'2014-05-14': [{'reserved_time': [{'from': '14:00', 'to': '16:30'}], 'type': "reserved_time"}, ...], ...}</code> | |||
---- | |||
=== getStartTimeMatrix === | |||
<code>getStartTimeMatrix($from, $to, $eventId, $unitId, $count)</code> | |||
Parameters: | |||
* '''$from''' String | |||
* '''$to''' String | |||
* '''$eventId''' Integer | |||
* '''$unitId''' Mixed can be Integer or Array of Integers | |||
* '''$count''' Integer | |||
Returns Object. | |||
Returns available start time, taking into account breaktimes, start and end working time | |||
Eg.: <code>{'2014-05-14': ['09:00:00', ...], ...}</code> | |||
If locations Custom Feature activated for company you should pass a list as $unitID parameter for filter results with | |||
units available only for selected location. See [[Custom Features#Multiple Locations|Multiple Locations]] Custom Feature description for | |||
more details. | |||
---- | |||
=== getTimeframe === | |||
<code>getTimeframe()</code> | |||
No arguments. | |||
Returns Integer. | |||
Returns company's timeframe configuration (in minutes). Timeframe can be either 5, 10, 15, 20, 30 or 60 minutes.You can find more details about timeframe [[Need to change interval (timeframe)|here]]. | |||
---- | |||
=== getTimelineType === | |||
<code>getTimelineType()</code> | |||
No arguments. | |||
Returns String. | |||
Returns company calendar layout type | |||
| Line 425: | Line 803: | ||
Returns Array. | Returns Array. | ||
Returns list of service performers. If <code>$asArray</code> is false then method returns a map with event id as | |||
key and details object as value. If parameter set to true then method returns a list sorted by 'position' property | |||
of event's details object. | |||
| Line 437: | Line 817: | ||
Returns String. | Returns String. | ||
Returns user license text if user license | Returns user license text if user license Custom Feature is turned on, | ||
otherwise throws exception | otherwise throws exception | ||
---- | |||
=== getWorkCalendar === | |||
<code>getWorkCalendar($year, $month, $unitId)</code> | |||
Parameters: | |||
* '''$year''' Integer | |||
* '''$month''' Integer | |||
* '''$unitId''' Integer | |||
Returns Object. | |||
Returns company work schedule as array | |||
Eg.: <code>{'2014-05-01': {'from': '09:00:00', 'to': '21:00:00', 'is_day_off': '0'}, '2014-05-02': ...}</code> | |||
---- | |||
=== getWorkDaysInfo === | |||
<code>getWorkDaysInfo($from, $to, $unitId, $eventId, $count)</code> | |||
Parameters: | |||
* '''$from''' String | |||
* '''$to''' String | |||
* '''$unitId''' Integer (optional) | |||
* '''$eventId''' Integer (optional) | |||
* '''$count''' Integer (optional) | |||
Returns Object. | |||
Returns an information about working hours and break times for specified service and performer for a period | |||
between two dates. If only service specified then information about performer (or performers) will be taken from | |||
service configuration. Method returns a list of objects for each date in specified period. Count of objects in | |||
list depends on break times. For example if performer works from 9:00 till 19:00 with one hour break at 13:00 method | |||
returns: | |||
<pre> | |||
{'2014-05-14' : [ | |||
{'from': '09:00:00', 'to': '13:00:00'}, | |||
{'from': '14:00:00', 'to': '19:00:00'} | |||
] } | |||
</pre> | |||
Warning! Method can return a time string '24:00:00' as right edge of time range. This happens in case if time | |||
range finishes on midnight. | |||
| Line 465: | Line 896: | ||
Returns Boolean. | Returns Boolean. | ||
Returns true if [[Custom Features#Accept Payments|Accept Payments]] Custom Feature activated and event with specified id has | |||
else | configured price. If no parameters specified then method returns true if payments Custom Feature activated and at least | ||
one event has configured price. Otherwise returns false. | |||
---- | |||
=== isPluginActivated === | |||
<code>isPluginActivated($pluginName)</code> | |||
Parameters: | |||
* '''$pluginName''' String | |||
Returns Boolean. | |||
Return Custom Feature status true if status active, else false. <var>$pluginName</var> parameter is a Custom Feature identifier.See [[Custom Features]] page for full Custom Features description. See [[Company public service methods#Custom Features.27 identifiers|list of available Custom Features' names]]. | |||
| Line 512: | Line 958: | ||
See [[Errors handling]] for details. | See [[Errors handling]] for details. | ||
* -32001 | * -32001 Custom Feature is not activated | ||
* -32010 Some required params are missed | * -32010 Some required params are missed | ||
* -32011 Params is not array | * -32011 Params is not array | ||
| Line 534: | Line 980: | ||
* -32062 Client email value is wrong | * -32062 Client email value is wrong | ||
* -32063 Client phone value is wrong | * -32063 Client phone value is wrong | ||
* -32070 | * -32070 Intake forms values are wrong | ||
* -32080 Appointemnt couldn't be found | * -32080 Appointemnt couldn't be found | ||
* -32085 Signature error | * -32085 Signature error | ||
| Line 552: | Line 998: | ||
---- | ---- | ||
===Company params=== | |||
Use these values to get configuration params for company with <code>[[#getCompanyParam|getCompanyParam]]</code> API method. | Use these values to get configuration params for company with <code>[[Company public service methods#getCompanyParam|getCompanyParam]]</code> API method. | ||
=====General params===== | |||
* allow_event_breaktime_break | * allow_event_breaktime_break | ||
*: <code>true</code> if service can extend over breaktime | *: <code>true</code> if service can extend over breaktime | ||
| Line 565: | Line 1,012: | ||
* date_format | * date_format | ||
* fixed_country_prefix | * fixed_country_prefix | ||
* max_group_bookings | * max_group_bookings | ||
*: [[Custom Features#Group Bookings|Group Bookings Custom Feature]] configuration. Integer. | |||
* max_time_till_event | * max_time_till_event | ||
* min_time_till_event | * min_time_till_event | ||
* monday_is_first_day | * monday_is_first_day | ||
*: <code>true</code> if monday specified as first day of the week in company's settings | *: <code>true</code> if monday specified as first day of the week in company's settings | ||
* require_fields | * require_fields | ||
*: | *: Client's data fields required for booking. String. Possible values: | ||
** phone - phone number is required | ** phone - phone number is required | ||
** email - email address is required | ** email - email address is required | ||
** email_phone - phone number and email address are required | ** email_phone - phone number and email address are required | ||
* send_notifications_in_client_timezone | * send_notifications_in_client_timezone | ||
* show_booking_page_in_client_timezone | * show_booking_page_in_client_timezone | ||
* time_format | * time_format | ||
* timeframe | * timeframe | ||
*: Returns company's timeframe configuration (in minutes). Timeframe can be either 5, 10, 15, 20, 30 or 60 minutes. You can find more details about timeframe [[ | *: Returns company's timeframe configuration (in minutes). Timeframe can be either 5, 10, 15, 20, 30 or 60 minutes. You can find more details about timeframe [[Need to change interval (timeframe)|here]] | ||
* user_public_timeline_type | * user_public_timeline_type | ||
*: String. Can be one of the following values: | *: String. Can be one of the following values: | ||
| Line 589: | Line 1,034: | ||
** flexible_week | ** flexible_week | ||
** modern_week | ** modern_week | ||
** classes | |||
** classic | ** classic | ||
*: Please note that <code>classic</code> timeline type is deprecated and not supported anymore. | *: Please note that <code>classic</code> timeline type is deprecated and not supported anymore. | ||
=====Accept Payments Custom Feature params===== | |||
Read more about [[Custom Features#Accept Payments|Accept Payments Custom Feature configuration]]. | |||
* allow_delay_payment | |||
*: Allow delay payment option. Boolean. | |||
* hide_sale_tax | |||
*: Hide sales tax option. Boolean. | |||
* payment_timeout | |||
*: Payment timeout option. String ("5 minutes", "1 hour", ...) | |||
* sale_tax | |||
*: Sales tax option. Integer. You should divide by 100 to get percent value. | |||
=====Cancellation Policy Custom Feature params===== | |||
Read more about [[Custom Features#Cancellation Policy|Cancellation Policy Custom Feature configuration]]. | |||
* cancelation_policy_text | |||
*: Full policy text. String. | |||
* cancelation_policy_label | |||
*: Short label for confirmation control. String. | |||
* cancelation_policy_period | |||
*: Time period value. String ("5 minutes", "1 hour", ...) | |||
---- | ---- | ||
==== | ====Custom Features' identifiers==== | ||
Custom Feature identifier is a string constant which represents a Custom Feature in system. These constants used in <code>[[Company public service methods#isPluginActivated|isPluginActivated]]</code> and <code>[[Company public service methods#getPluginStatuses|getPluginStatuses]]</code> API methods. | |||
* advanced_notification | * advanced_notification | ||
*:Book Soon notification system | *:Book Soon notification system | ||
* any_unit | * any_unit | ||
*:Any Employee selector | *:Any Employee selector | ||
* api | * api | ||
*:API | *:API | ||
* approve_booking | * approve_booking | ||
*:Approve booking | *:Approve booking | ||
* back_to_site | * back_to_site | ||
*:Take me back home | *:Take me back home | ||
* contact_widget | * contact_widget | ||
*:Contact widget | *:Contact widget | ||
* counter | * counter | ||
*:Visitor Counter | *:Visitor Counter | ||
* custom_css | * custom_css | ||
*:Custom CSS | *:Custom CSS | ||
* data_security | * data_security | ||
*:Clean history | *:Clean history | ||
* description | * description | ||
*:HTML description field for events | *:HTML description field for events | ||
* event_category | * event_category | ||
*:Service categories | *:Service categories | ||
* event_field | * event_field | ||
*: | *:Intake forms | ||
* facebookImage | * facebookImage | ||
*:Facebook client info | *:Facebook client info | ||
* financial_dashboard | * financial_dashboard | ||
*:Insights | *:Insights | ||
* google_analytics | * google_analytics | ||
*:Google Adwords and analytics | *:Google Adwords and analytics | ||
* google_calendar_export | * google_calendar_export | ||
*: | *:Calendar sync | ||
* group_booking | * group_booking | ||
*:Group bookings | *:Group bookings | ||
* hipaa | * hipaa | ||
*:HIPAA | *:HIPAA | ||
* limit_bookings | * limit_bookings | ||
*:Limit bookings | *:Limit bookings | ||
* location | * location | ||
*: | *:Multiple locations | ||
* mobile_app_backend | * mobile_app_backend | ||
*:Mobile application | *:Mobile application | ||
* multiple_booking | * multiple_booking | ||
*:Multiple bookings | *:Multiple bookings | ||
* news | * news | ||
*:News | *:News | ||
* paid_events | * paid_events | ||
*:Accept payments | *:Accept payments | ||
* promo | <!--* promo | ||
*: | *:Rewards and Referrals--> | ||
* recap | * recap | ||
*:Daily report | *:Daily report | ||
* secure | * secure | ||
*:SSL | *:SSL | ||
* status | * status | ||
*:Status | *:Status | ||
* unit_colors | * unit_colors | ||
*:Providers color coding | *:Providers color coding | ||
* user_license | * user_license | ||
*:Terms and conditions | *:Terms and conditions | ||
* cancelation_policy | |||
*:Cancellation Policy | |||
See [[ | See [[Custom Features]] page for description for each . | ||
---- | ---- | ||
| Line 668: | Line 1,140: | ||
====book response==== | ====book response==== | ||
[[#book|<code>book</code>]] API method returns an object which contains list of objects with short description of newly create bookings. Method returns only one item in 'bookings' array for regular appointment and more than one item for recurring or batch bookings. | [[Company public service methods#book|<code>book</code>]] API method returns an object which contains list of objects with short description of newly create bookings. Method returns only one item in 'bookings' array for regular appointment and more than one item for recurring or batch bookings. | ||
{ | { | ||
| Line 727: | Line 1,199: | ||
====getCompanyInfo response==== | ====getCompanyInfo response==== | ||
An example of data returned by [[#getCompanyInfo|getCompanyInfo]] API method. | An example of data returned by [[Company public service methods#getCompanyInfo|getCompanyInfo]] API method. | ||
{ | { | ||
| Line 768: | Line 1,240: | ||
<code>description</code> field contains raw data of company's description which can include HTML tags. <code>description_text</code> field contains only text information without HTML tags. | <code>description</code> field contains raw data of company's description which can include HTML tags. <code>description_text</code> field contains only text information without HTML tags. | ||
For information about <code>timeframe</code>, <code>timezone</code>, <code>allow_event_day_break</code> and <code>allow_event_breaktime_break</code> see [[#Company params|Company params section]]. | For information about <code>timeframe</code>, <code>timezone</code>, <code>allow_event_day_break</code> and <code>allow_event_breaktime_break</code> see [[Company public service methods#Company params|Company params section]]. | ||
---- | ---- | ||
====getPluginPromoInfoByCode response==== | <!----====getPluginPromoInfoByCode response==== | ||
{ | { | ||
| Line 798: | Line 1,270: | ||
} | } | ||
<code>service_ids</code> contains a list of services for wich promotion discount can be applied. | <code>service_ids</code> contains a list of services for wich promotion discount can be applied.--> | ||
---- | ---- | ||