Company administration service methods: Difference between revisions

No edit summary
No edit summary
Line 7: Line 7:
Parameters:
Parameters:


* '''$clientData''' Object
* '''$clientData''' Object  


Returns Integer.
Returns Integer.
Line 44: Line 44:
Parameters:
Parameters:


* '''$token''' String- device token
* '''$token''' String a device token string
* '''$device''' String- device type (android or apple)
* '''$device''' String a device type ('android' or 'apple')


Returns boolean.
Returns boolean.


Subscribe a mobile device to push notifications about new bookings or changes in already created bookings.Use <code>'apple'</code> or <code>'android'</code> for <code>device</code> parameter.
Subscribe a mobile device to push notifications about new bookings or changes in already created bookings. Use
<code>'apple'</code> or <code>'android'</code> for <code>device</code> parameter.




Line 60: Line 61:
Parameters:
Parameters:


* '''$eventId''' Integer
* '''$eventId''' Integer  
* '''$unitId''' Integer
* '''$unitId''' Integer  
* '''$clientId''' Integer
* '''$clientId''' Integer  
* '''$startDate'''  
* '''$startDate'''
* '''$startTime'''  
* '''$startTime'''
* '''$endDate''' null
* '''$endDate''' null  
* '''$endTime''' null
* '''$endTime''' null  
* '''$clientTimeOffset''' Integer
* '''$clientTimeOffset''' Integer  
* '''$additional''' array|Object- additional params and fields.
* '''$additional''' array|Object - additional params and fields.
* '''$count''' Integer- bookings count, min. 1 (using for group bookings batch). (optional)
* '''$count''' Integer - bookings count, min. 1 (using for group bookings batch). (optional)
* '''$batchId''' Integer- add booking to multiple bookings batch. (optional)
* '''$batchId''' Integer - add booking to multiple bookings batch. (optional)
* '''$recurringData''' Array- make booking recurrent. (optional)
* '''$recurringData''' Array - make booking recurrent. (optional)


Returns Object.
Returns Object.


Book service. Returns object with appointment information or throw exception
Creates new booking record. Returns an object with appointment information or throw exception if booking time not
If appointment requires confirm, in result object will be require_confirm = true
available or any of required parameters missed. If appointment requires confirmation, in result object will be
You can use $count > 1 or $batchId != null at the same time.
<code>require_confirm = true</code>. To 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 some additional fields (see [[Plugins#Additional fields|Additional fields plugin]]). 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>




Line 88: Line 93:
Parameters:
Parameters:


* '''$startDateTime''' Stringa date and time string in format &#039;Y-m-d H:i:s&#039;, eg. &#039;2001-10-02 13:30:00&#039;.
* '''$startDateTime''' String a date and time string in format &#039;Y-m-d H:i:s&#039;, eg. &#039;2001-10-02 13:30:00&#039;.
* '''$eventId''' Integer
* '''$eventId''' Integer  
* '''$unitId''' Integer
* '''$unitId''' Integer  


Returns String|Boolean.
Returns String|Boolean.
Line 105: Line 110:
Parameters:
Parameters:


* '''$id''' Integer
* '''$id''' Integer  
* '''$bookingIds''' Array
* '''$bookingIds''' Array  


Returns boolean.
Returns boolean.
Line 121: Line 126:
Parameters:
Parameters:


* '''$id''' Integer
* '''$id''' Integer  


Returns Boolean.
Returns Boolean.
Line 137: Line 142:
Returns Integer.
Returns Integer.


Create booking batch
Creates new booking batch record. Returns newly created batch id. You can use this id in <code>[[#book|book]]</code>
Returns batch id
API method.




Line 149: Line 154:
Parameters:
Parameters:


* '''$token''' String- device token
* '''$token''' String - device token


Returns boolean.
Returns boolean.
Line 164: Line 169:
Parameters:
Parameters:


* '''$shedulerId''' Integer
* '''$shedulerId''' Integer  
* '''$eventId''' Integer
* '''$eventId''' Integer  
* '''$unitId''' Integer
* '''$unitId''' Integer  
* '''$clientId''' Integer
* '''$clientId''' Integer  
* '''$startDate''' String- in Y-m-d format
* '''$startDate''' String - in Y-m-d format
* '''$startTime''' String- in H:i:s format
* '''$startTime''' String - in H:i:s format
* '''$endDate''' String- in Y-m-d format
* '''$endDate''' String - in Y-m-d format
* '''$endTime''' String- in H:i:s format
* '''$endTime''' String - in H:i:s format
* '''$clientTimeOffset''' Integer
* '''$clientTimeOffset''' Integer  
* '''$additional''' array|Object- additional params and fields.
* '''$additional''' array|Object - additional params and fields.


Returns Object.
Returns Object.


Edit existing booking
Edit existing booking record. See [[#book|book]] API method description for more details about additional fields.




Line 188: Line 193:
Parameters:
Parameters:


* '''$clientId''' Integer
* '''$clientId''' Integer  
* '''$clientData''' Object
* '''$clientData''' Object  


Returns Integer.
Returns Integer.
Line 204: Line 209:
Parameters:
Parameters:


* '''$eventId''' Integer
* '''$eventId''' Integer  


Returns Array.
Returns Array.
Line 242: Line 247:
Parameters:
Parameters:


* '''$eventId''' Integer
* '''$eventId''' Integer  
* '''$dateTime''' Stringa date and time string in format Y-m-d H:i:s
* '''$dateTime''' String a date and time string in format &#039;Y-m-d H:i:s&#039;
* '''$count''' Integer
* '''$count''' Integer  


Returns Array.
Returns Array.


Returns available unit ids for present data or empty array if all units are not allowed
Returns list of available unit ids for present data or empty array if all units are not allowed.Eg.: <code>[1, 2, 3]</code>
Eg.: <code>[1, 2, 3]</code>




Line 260: Line 264:
Parameters:
Parameters:


* '''$dateStart''' Stringa date string in format &#039;Y-m-d&#039;. Pass null to get data from first day of current week.
* '''$dateStart''' String a date string in format &#039;Y-m-d&#039;. Pass null to get data from first day of current week.
* '''$dateEnd''' Stringa date string in format &#039;Y-m-d&#039;. Pass null to get data filtered to last day of current week.
* '''$dateEnd''' String a date string in format &#039;Y-m-d&#039;. Pass null to get data filtered to last day of current week.


Returns Array.
Returns Array.
Line 296: Line 300:
Parameters:
Parameters:


* '''$id''' Integer
* '''$id''' Integer  


Returns String.
Returns String.
Line 311: Line 315:
Parameters:
Parameters:


* '''$id''' integerbooking id
* '''$id''' integer booking id


Returns Array.
Returns Array.
Line 326: Line 330:
Parameters:
Parameters:


* '''$startDateTime''' stringa date and time string in format &#039;Y-m-d H:i:s&#039;
* '''$startDateTime''' string a date and time string in format &#039;Y-m-d H:i:s&#039;
* '''$endDateTime''' stringa date and time string in format &#039;Y-m-d H:i:s&#039;
* '''$endDateTime''' string a date and time string in format &#039;Y-m-d H:i:s&#039;
* '''$eventId''' integer
* '''$eventId''' integer  


Returns Array.
Returns Array.
Line 344: Line 348:
Parameters:
Parameters:


* '''$dateStart''' null
* '''$dateStart''' null  
* '''$dateEnd''' null
* '''$dateEnd''' null  
* '''$unitGroupId''' integer
* '''$unitGroupId''' integer  
* '''$serviceId''' integer
* '''$serviceId''' integer  


Returns Array.
Returns Array.
Line 369: Line 373:
Parameters:
Parameters:


* '''$groupBy''' String
* '''$groupBy''' String  


Returns Array.
Returns Array.
Line 384: Line 388:
Parameters:
Parameters:


* '''$params'''  
* '''$params'''


Returns Array.
Returns Array.
Line 443: Line 447:
Parameters:
Parameters:


* '''$isPublic''' Boolean
* '''$isPublic''' Boolean  


Returns Array.
Returns Array.
Line 460: Line 464:
Parameters:
Parameters:


* '''$clientId'''  
* '''$clientId'''


Returns Array.
Returns Array.


Get client by id
Returns client's data object. See <code>[[#addClient|addClient]]</code> API method for list of available fields
of client data object.




Line 475: Line 480:
Parameters:
Parameters:


* '''$clientId''' Integer
* '''$clientId''' Integer  
* '''$shedulerId''' Integer
* '''$shedulerId''' Integer  


Returns Array.
Returns Array.
Line 491: Line 496:
Parameters:
Parameters:


* '''$searchString''' String
* '''$searchString''' String  
* '''$limit''' Integer
* '''$limit''' Integer  


Returns Array.
Returns Array.


Get list of clients
Returns list of clients associated with company. You can use either phone number, email address or name as value
for <code>$searchString</code>. Pass an empty string for <code>$searchString</code> and null for <code>$limit</code>
parameters to get all records. See <code>[[#addClient|addClient]]</code> API method for list of available fields
of client data object.




Line 508: Line 516:
Returns String.
Returns String.


Returns company currency
Returns company's currency as three chars code (ISO 4217).




Line 531: Line 539:
Parameters:
Parameters:


* '''$key''' String
* '''$key''' String  


Returns mixed.
Returns mixed.
Line 573: Line 581:
Returns Array.
Returns Array.


Return all information about current tariff
Returns all information about current tariff (subscription). For example:{
    "name" : "gold",
    "expire_date" : "2016-02-11 12:32:00",
    "rest" : 41, // number of days until subscription expiration
    "color" : "#fcb322"
  }




Line 596: Line 609:
Parameters:
Parameters:


* '''$isVisibleOnly''' Boolean
* '''$isVisibleOnly''' Boolean  
* '''$asArray''' Boolean
* '''$asArray''' Boolean  


Returns Array.
Returns Array.
Line 612: Line 625:
Parameters:
Parameters:


* '''$approvedOnly''' Boolean
* '''$approvedOnly''' Boolean  
* '''$reviewsOnly''' Boolean
* '''$reviewsOnly''' Boolean  
* '''$lastOnly''' Boolean
* '''$lastOnly''' Boolean  
* '''$limit''' Integer
* '''$limit''' Integer  


Returns Array.
Returns Array.
Line 630: Line 643:
Parameters:
Parameters:


* '''$unitId''' Integer
* '''$unitId''' Integer  


Returns String.
Returns String.
Line 645: Line 658:
Parameters:
Parameters:


* '''$startDateTime''' string
* '''$startDateTime''' string  
* '''$endDateTime''' string
* '''$endDateTime''' string  
* '''$unitId''' integer
* '''$unitId''' integer  


Returns Array.
Returns Array.
Line 674: Line 687:
Parameters:
Parameters:


* '''$type''' String
* '''$type''' String  


Returns String.
Returns String.
Line 689: Line 702:
Parameters:
Parameters:


* '''$isPublic''' Boolean
* '''$isPublic''' Boolean  


Returns Array.
Returns Array.
Line 707: Line 720:
Returns Array.
Returns Array.


Get list of plugins with status
Returns a list of all plugins associated with company with status.




Line 718: Line 731:
Parameters:
Parameters:


* '''$pluginNames''' Array
* '''$pluginNames''' Array  


Returns Array.
Returns Array.
Line 733: Line 746:
Parameters:
Parameters:


* '''$lastOnly''' Boolean
* '''$lastOnly''' Boolean  
* '''$limit''' Integer
* '''$limit''' Integer  


Returns Array.
Returns Array.
Line 749: Line 762:
Parameters:
Parameters:


* '''$eventId''' Integer
* '''$eventId''' Integer  
* '''$unitId''' Integer
* '''$unitId''' Integer  
* '''$date''' String
* '''$date''' String  
* '''$time''' String
* '''$time''' String  
* '''$recurringData''' Array
* '''$recurringData''' Array  
* '''$endDateTime''' null
* '''$endDateTime''' null  


Returns Array.
Returns Array.
Line 769: Line 782:
Parameters:
Parameters:


* '''$eventId''' Integer
* '''$eventId''' Integer  


Returns Array.
Returns Array.
Line 784: Line 797:
Parameters:
Parameters:


* '''$groupBy''' String
* '''$groupBy''' String  


Returns Array.
Returns Array.
Line 799: Line 812:
Parameters:
Parameters:


* '''$from''' String
* '''$from''' String  
* '''$to''' String
* '''$to''' String  
* '''$eventId''' Integer
* '''$eventId''' Integer  
* '''$unitId''' Integer
* '''$unitId''' Integer  
* '''$count''' Integer
* '''$count''' Integer  


Returns Object.
Returns Object.
Line 819: Line 832:
Parameters:
Parameters:


* '''$provider''' String
* '''$provider''' String  


Returns Integer.
Returns Integer.
Line 834: Line 847:
Parameters:
Parameters:


* '''$from''' String
* '''$from''' String  
* '''$to''' String
* '''$to''' String  
* '''$eventId''' Integer
* '''$eventId''' Integer  
* '''$unitId''' Mixedcan be Integer or Array of Integers
* '''$unitId''' Mixed can be Integer or Array of Integers
* '''$count''' Integer
* '''$count''' Integer  


Returns Object.
Returns Object.
Line 859: Line 872:
Returns Array.
Returns Array.


Return list of available statuses
Returns list of available statuses or an empty list if [[Plugins#Status|Status plugin]] not enabled.




Line 883: Line 896:
Returns Array.
Returns Array.


Get list of performers with number of bookings and revenues per service
Returns a list with statistics for performers. This data contains number of bookings and revenues value for each performer.




Line 894: Line 907:
Parameters:
Parameters:


* '''$dateStart''' String
* '''$dateStart''' String  
* '''$dateEnd''' String
* '''$dateEnd''' String  


Returns Array.
Returns Array.


Get list of services with number of bookings and revenues per service
Returns a list with statistics for services for a period of time. This data contains number of bookings and
revenues value for each service.




Line 910: Line 924:
Parameters:
Parameters:


* '''$isVisibleOnly''' Boolean
* '''$isVisibleOnly''' Boolean  
* '''$asArray''' Boolean
* '''$asArray''' Boolean  


Returns Array.
Returns Array.
Line 926: Line 940:
Parameters:
Parameters:


* '''$dateStart'''  
* '''$dateStart'''
* '''$dateEnd'''  
* '''$dateEnd'''
* '''$unitGroupId''' integer
* '''$unitGroupId''' integer  


Returns Array.
Returns Array.
Line 943: Line 957:
Parameters:
Parameters:


* '''$dateStart''' null
* '''$dateStart''' null  
* '''$dateEnd''' null
* '''$dateEnd''' null  
* '''$unitGroupId''' integer
* '''$unitGroupId''' integer  


Returns Array.
Returns Array.
Line 960: Line 974:
Parameters:
Parameters:


* '''$groupBy''' String
* '''$groupBy''' String  


Returns Array.
Returns Array.
Line 975: Line 989:
Parameters:
Parameters:


* '''$year''' Integer
* '''$year''' Integer  
* '''$month''' Integer
* '''$month''' Integer  
* '''$unitId''' Integer
* '''$unitId''' Integer  


Returns Object.
Returns Object.
Line 993: Line 1,007:
Parameters:
Parameters:


* '''$from''' String
* '''$from''' String  
* '''$to''' String
* '''$to''' String  
* '''$unitId''' Integer
* '''$unitId''' Integer  
* '''$eventId''' null
* '''$eventId''' null  


Returns Object.
Returns Object.
Line 1,012: Line 1,026:
Parameters:
Parameters:


* '''$startDateTime''' string
* '''$startDateTime''' string  
* '''$endDateTime''' string
* '''$endDateTime''' string  


Returns Array.
Returns Array.
Line 1,028: Line 1,042:
Parameters:
Parameters:


* '''$dateStart''' null
* '''$dateStart''' null  
* '''$dateEnd''' null
* '''$dateEnd''' null  
* '''$unitGroupId''' integer
* '''$unitGroupId''' integer  


Returns Array.
Returns Array.
Line 1,052: Line 1,066:
Parameters:
Parameters:


* '''$pluginName''' String
* '''$pluginName''' String  


Returns Boolean.
Returns Boolean.
Line 1,067: Line 1,081:
Parameters:
Parameters:


* '''$id''' Integer
* '''$id''' Integer  


Returns Array.
Returns Array.
Line 1,083: Line 1,097:
Parameters:
Parameters:


* '''$id''' Integer
* '''$id''' Integer  


Returns Boolean.
Returns Boolean.
Line 1,122: Line 1,136:
Parameters:
Parameters:


* '''$id''' Integer
* '''$id''' Integer  
* '''$comment''' String
* '''$comment''' String  


Returns Integer.
Returns Integer.
Line 1,138: Line 1,152:
Parameters:
Parameters:


* '''$bookingId''' Integer
* '''$bookingId''' Integer  
* '''$statusId''' Integer
* '''$statusId''' Integer  


Returns Boolean.
Returns Boolean.


Set status
Sets specified status for booking. Returns an error with code -32020 if logged in user don't have access to edit
bookings. This method does nothing if [[Plugins#Status|Status plugin]] not enabled.




Line 1,154: Line 1,169:
Parameters:
Parameters:


* '''$type''' String
* '''$type''' String  


Returns .
Returns .
Line 1,506: Line 1,521:
Promo field is present in response only if [[Plugins#Simply Smart Promotions|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.
Promo field is present in response only if [[Plugins#Simply Smart Promotions|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.


<code>additional_fields</code> fields is present in response only if [[Plugins#Additional fields|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.
<code>additional_fields</code> field is present in response only if [[Plugins#Additional fields|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.