getPaymentProcessorConfig ($paymentProcessor)

validatePayment ($paymentInfo, $cartId)

getBookingCart ($bookingIds)

Returns cart information by bookings ids.cart_id and cart_hash is used to create secure signature to confirm cart payment.

status - current cart statusamount - is total amount to paymentcurrency - cart currencycart - contains cart items. You can use them to provide information for payment system. Each item is object with following fields:id - booking idevent_id - service idname - event name + start date time (use it to provide cart information for payment system)price - booking priceqty - qty of bookings

@paramArray$bookingIds

@returnObject

getBookingCartInfo ($cartId, $sign)

Returns current cart informationcart_id and cart_hash is used to create secure signature to confirm cart payment.

amount - is total amount to paymentcurrency - cart currencycart - contains cart items. You can use them to provide information for payment system. Each item is object with following fields:id - booking idevent_id - service idname - event name + start date time (use it to provide cart information for payment system)price - booking priceqty - qty of bookings

@paramInteger$cartIdcart id

@paramString$signsignature. (md5($cartId . $cartHash . $secretKey))

@returnObject

getBookingCartStatus ($id)

Returns current cart status
Possible result values:

cancel - user has canceled paymentpaid - user has paiderror - error has been occurred on validation paymentnot_paid - cart is not paid yet or payment status is pending

@paramInteger$id

@returnString

confirmBookingCart ($cartId, $paymentProcessor, $sign)

Confirm booking cart. Use it to confirm payment. Signature is required.

cancelBooking ($id, $sign)

Cancels a booking. $sign parameter must be a string created with formula: md5($bookingId . $bookingHash . $secretKey). You can get $bookingHash value as result of [[#book|book]] 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 (Signature error) if $sign parameter is wrong.

@paramInteger$id

@paramString$sign

@returnBoolean

getBooking ($id, $sign)

Returns an object with details information about booking. $sign parameter must be a string created
with formula: md5($bookingId . $bookingHash . $secretKey). You can get $bookingHash

value as result of [[#book|book]] 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
(Signature error) if $sign parameter is wrong.

@paramInteger$id

@paramString$sign

@returnObject

getBookingDetails ($id, $sign)

Returns an object with details information about booking. $sign parameter must be a string created
with formula: md5($bookingId . $bookingHash . $secretKey). You can get $bookingHash

value as result of [[#book|book]] 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
(Signature error) if $sign parameter is wrong.

@paramInteger$id

@paramString$sign

@returnObject

isPaymentRequired ($eventId)

Returns true if [[Plugins#Accept_payments|Accept payments]] plugin activated and event with specified id has
configured price. If no paramentes specified then method returns true if payments plugin activated and at least

Creates new booking record. Returns an object with appointment information or throw exception if booking time not
available or any of required parameters missed. If appointment requires confirmation, in result object will be

require_confirm = true. $startDate and $startTime specifies a date of
booking and time slot. Time value should be multiple to 'timeframe' configuration of company (see[[#getTimeframe|getTimeframe]] API method). $endDate and $endTime parameters
should be calculated according to service duration. However you can specify different values to make appointment
longer or shorter then service configuration. Note that $endDate and $endTime should be
later in time than $startDate and $startTime. If your clients located in different time
zone you should specify 'client_time_offset' value in $clientData object as difference
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 $clientTimeOffset will be 60 minutes. You
can get information about company's time zone using [[#getCompanyInfo|getCompanyInfo]] API method. To
create batch booking you can specify either count more then 1 or valid batchId (only one
parameter can be specified). You should specify an $additionalFields 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: {"name": "promocode", "value": "some code", "type": "text"}

getMembershipPaymentHistory ($clientId, $sign)

getProductList ($filter)

Returns product list with filter.
At this time filter can accept only service_id parameter

@paramobject$filter

@returnarray

getClassesList ($filter)

Returns company's classes list. Ordered by position

@paramArray$filter

@returnArray

getCompanyParam ($key)

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_params|list of available keys]].

@paramString$key

@returnmixed

getCompanyParams ($keys)

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

getWorkCalendar ($year, $month, )

getReservedTime ($from, $to, $eventId, $unitId, $count)

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 reserved_time and type

not_worked_time. reserved_time type represents time slots working time but already booked
by clients. Nobody knows what kind of data represented by not_worked_time type. Please don't use it.

getWorkDaysInfo ($from, $to, $unitId, $eventId, $count)

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:

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.

@paramString$from

@paramString$to

@paramInteger$unitId(optional)

@paramInteger$eventId(optional)

@paramInteger$count(optional)

@returnObject

getFirstWorkingDay ()

Returns first working date for unit

@paramInteger

@returnString

getStartTimeMatrix ($from, $to, $eventId, $unitId, $count)

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 [[Plugins#Unit_location|Unit location]] plugin description for
more details.

Returns available time intervals for all service providers for given period, taking into account breaktimes, start and end working time
Eg.: {['2016-03-04': ['1': [['09:00:00','09:30:00'], ['11:15:00','14:45:00']] , ...], ...]}

Returns available time intervals for all servics for given period, taking into account breaktimes, start and end working time
Eg.: {['2016-03-04': ['1': [['09:00:00','09:30:00'], ['11:15:00','14:45:00']] , ...], ...]}

getPluginStatuses ($pluginNames)

getCompanyInfo ()

Returns an object with detailed information about company. See [[#getCompanyInfo response|example of response]].

@returnObject

createBatch ()

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

@returnInteger

getCountryPhoneCodes ()

Returns country phone code list

@returnArray

getPluginPromoInfoByCode ()

Returns an object with detailed information about promotion by promotion code. You can get promotion code
using [[Catalogue#getPromotionList|getPromotionList]] API method. If promotion record with specified

code not found then method returns an empty array (an empty object). If [[Plugins#Simply Smart Promotions|Simply Smart Promotions plugin]]
not enabled then method returns an error with code -32001 (Plugin is not activated). Use[[#isPluginActivated|isPluginActivated('promo')]] API method call to check if plugin enabled.

See [[#getPromotionList response|example]] of getPromotionList API method response. Please note that
response contains a list of services for wich promotion discount can be applied (service_ids key).

@paramString

@returnArray

getCompanyTimezoneOffset ()

Returns company timezone offset and company timezone

@returnarray

URL сервиса https://user-api.simplybook.me/admin

getBookings ()

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 [[Plugins#Approve booking|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 field depends on Approve booking plugin status.
*: 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)

getGoogleCalendarBusyTime ($startDateTime, $endDateTime, $unitId)

Returns a list of objects represented a time intervals marked as busy in Google Calendar. Each object of result
contains from and to properties with datetime string as value. This method only actual if

[Plugins#Google calendar sync plugin|Google calendar sync plugin] enabled. If plugin not enabled an empty list will
be returned. You should call [[#isPluginActivated|isPluginActivated('google_calendar_export')]] to
check status of the plugin. Each object of result contains from and to properties with
datetime string as value. Please note that this method may return not actual data because data synchronization
between server and Google Calendar may take some time and synchronized data are cached for 15 minutes.

getGoogleCalendarBusyTimeAvailableUnits ()

Returns time intervals not available for bookings because of configuration of [[Plugins#Limit bookings|Limit bookings]]
plugin for period of time. Returns empty array if plugin not available.

@paramstring$startDateTimea date and time string in format 'Y-m-d H:i:s'

@paramstring$endDateTimea date and time string in format 'Y-m-d H:i:s'

@paramint$eventId

@returnArray

getUnitWorkingDurations ($dateStart, $dateEnd, $unitGroupId)

Return working durations

@paramstring$dateStart

@paramstring$dateEnd

@paramint$unitGroupId

@returnArray

getWorkload ($dateStart, $dateEnd, $unitGroupId)

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.

getBookingRevenue ($dateStart, $dateEnd, $unitGroupId, $serviceId)

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. Set $dateStart and $dateEnd to null to get data for current week.

getUnitWorkdayInfo ($dateStart, $dateEnd, $unitGroupId)

cancelBooking ($id)

Cancels booking. Returns true on success. Returns an error with code -32080 (Appointment couldn't be found) if
no booking with specified id were found.

@paramInteger$id

@returnBoolean

cancelBatch ($id, $bookingIds)

Cancel batch of bookings. Returns true on success. Returns an error with code -32080 (Appointment couldn't be found)
if no booking with specified id were found. A booking with first id in $bookingIds list is used for

Creates new booking record. Returns an object with appointment information or throw exception if booking time not
available or any of required parameters missed. If appointment requires confirmation, in result object will be

require_confirm = true. $startDate and $startTime specifies a date of
booking and time slot. Time value should be multiple to 'timeframe' configuration of company (see[[#getTimeframe|getTimeframe]] API method). $endDate and $endTime parameters
should be calculated according to service duration. However you can specify different values to make appointment
longer or shorter then service configuration. Note that $endDate and $endTime should be
later in time than $startDate and $startTime. If your clients located in different time
zone you should specify 'client_time_offset' value in $clientData object as difference
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 $clientTimeOffset will be 60 minutes.
You can get information about company's
time zone using [[#getCompanyInfo|getCompanyInfo]] API method. To create batch booking you can
specify either count more then 1 or valid batchId (only one parameter can be
specified). You should specify an $additionalFields 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: {"promocode": "some code"}

If [[Plugins#Unit location|Unit location]] enabled you need to pass locations ID parameter as additional fieldlocation_id. For example: {"location_id": "1"}. Use [[#isPluginActivated|isPluginActivated('location')]]
to check if plugin active and [[#getLocationsList|getLocationsList()]] method to get list of
available locations.

@paramInteger$shedulerIdan id of booking to edit. See [[#book|book]] or [[#getBookings|getBookings]] API methods.

@paramInteger$eventId

@paramInteger$unitId

@paramInteger$clientId

@paramString$startDatein Y-m-d format

@paramString$startTimein H:i:s format

@paramString$endDatein Y-m-d format

@paramString$endTimein H:i:s format

@paramInteger$clientTimeOffset

@paramarray

@returnObject

addClient ($clientData)

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 callgetCompanyParam('require_fields') method to check which fields are required.

addDeviceToken ($token, $device)

Subscribe a mobile device to push notifications service. Device will recieve notifications about new bookings or
changes in already created bookings. Use either 'apple' or 'android' for device

parameter.

@paramString$tokena device token string

@paramString$devicea device type ('android' or 'apple')

@returnbool

deleteDeviceToken ($token)

Unsubscribe from push notifications service.

@paramString$tokendevice token

@returnbool

getCountryList ()

Get list of all countries

@returnArray

getFeedbacks ($approvedOnly, $reviewsOnly, $lastOnly, $limit)

Get list of feedbacks

@paramBoolean$approvedOnly

@paramBoolean$reviewsOnly

@paramBoolean$lastOnly

@paramInteger$limit

@returnArray

getRecentActions ($lastOnly, $limit)

Returns latest actions

@paramBoolean$lastOnly

@paramInteger$limit

@returnArray

getWarnings ($lastObly)

Returns a list of objects represented system warnings. Each warning contains warning_type and warning_text
properties. warning_text property contains localized message. warning_type can be one of the values:

updateNotification ($type)

Mark notifications as readed

@paramString$type

getLastNotificationUpdate ($type)

Returns last update datetime

@paramString$type

@returnString

getBookingCancellationsInfo ($dateStart, $dateEnd)

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.

call to check if plugin enabled. Results can be grouped by 'day', 'week' or 'month'. A time period depends on
selected grouping parameter:

* for 'day' methods returns statistics for last 31 days
* for 'week' methods returns data last 10 weeks period
* for 'month' time period is last 12 months

@paramString$groupBy

@returnArray

getSocialCounterStats ($provider)

Returns social counters value for your domain

@paramString$provider

@returnInteger

getCompanyCurrency ()

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

@returnString

getClientComments ($clientId, $shedulerId)

Returns list of all comments for given client

@paramInteger$clientId

@paramInteger$shedulerId

@returnArray

getCurrentUserDetails ()

Returns an object with information about logged in user. Note: you are responsible for implementation of some
access rights based on group property value. Most of API methods returns an error if user has low access

rights but not all. There are 4 roles:

* '''Administrator''' - have full access to the system
* '''Senior Employee''' - have access to calendar, services and providers, and can modify bookings related with user
* '''Junior Employee''' - can access caledar (but only to own bookings), services associated with user
* '''Viewer''' - have only access to calendar and services in read only mode

deleteServices ($services)

deletePerformers ($performers)

deleteCategories ($categories)

Delete given set of categories if it is possible
Returns an error with code -32001 if plugin is not activated. Use [[#isPluginActivated|isPluginActivated('event_category')]]

API method to check if plugin activated.
Returns an error with code -32101 if trying to delete default category and
an error with code -32102 if trying to delete all categories
Return an error with code -32002 if no $categories provided

@paramarray$categories

@returnbool

deleteLocations ($locations)

Delete given set of locations if it is possible
Returns an error with code -32001 if plugin is not activated.

Use [[#isPluginActivated|isPluginActivated('location')]] API method to check if plugin activated.
Returns an error with code -32074 if trying to delete default location and
an error with code -32075 if trying to delete all locations
Returns an error with code -32002 if no $locations provided

index is 1-7 for Monday - Sunday (used for weekly settings)
date is used to set worktime for special date
unit_group_id is provider id
event_id is service id
if unit_group_id and event_id not passed then it set data for company

deleteCompanyVacation ($vacationId)

Delete company vacation with all it's bindings
(including created special days in work_day_special table)

@paramInteger$vacationId

deleteServiceVacation ($vacationId, $serviceId)

Delete service vacation with all it's bindings
(including created special days in work_day_special table)

@paramInteger$vacationId

@paramInteger$serviceId

deletePerformerVacation ($vacationId, $unigGroupId)

Delete performer vacation with all it's bindings
(including created special days in work_day_special table)

@paramInteger$vacationId

@paramInteger$unigGroupId

getClassesList ($isVisibleOnly, $asArray)

Returns company's classes list. If $asArray 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

class's details object.

@paramBoolean$isVisibleOnly

@paramBoolean$asArray

@returnArray

deleteClasses ($services)

@internalDelete given classes if it is possible

@paramarray$services

@returnbool

getProductList ($filter)

Returns product list with filter.
At this time filter can accept only service_id parameter

@paramobject$filter

@returnarray

deleteProduct ()

Delete given product or products if it is possible, otherwise set it as inactive
The $id param can be int or array of int

@paraminteger

@returnbool

getCompanyParam ($key)

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_params|list of available keys]].

@paramString$key

@returnmixed

getCompanyParams ($keys)

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_params|list of available keys]].

@paramArray$keys

@returnArray

getTimelineType ()

Returns company timeline type

@returnString

getEventList ($isVisibleOnly, $asArray, $handleClasses)

Returns company's events list. If $asArray 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

addPluginDataToServiceList ($events, $isVisibleOnly)

@internalChange $events data, add plugins info to each event

@paramarray$events

@parambool$isVisibleOnly

@returnarray$events

getUnitList ($isVisibleOnly, $asArray, $handleClasses)

Returns list of service performers. If $asArray 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

getCategoriesList ($isPublic)

Returns company categories list if [[Plugins#Service categories|Service categories plugin]] is activated. Returns
an error with code -32001 if plugin is not activated. Use [[#isPluginActivated|isPluginActivated('event_category')]]

API method to check if plugin activated.

@paramBoolean$isPublic

@returnArray

getLocationsList ($isPublic, $asArray)

Returns available locations for company if plugin [[Plugins#Unit location|Unit location plugin]] is activated. Return
an error with code -32001 if plugin is not activated. Use [[#isPluginActivated|isPluginActivated('location')]]

API method to check if plugin 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.

getWorkCalendar ($year, $month, )

getReservedTime ($from, $to, $eventId, $unitId, $count)

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 reserved_time and type

not_worked_time. reserved_time type represents time slots working time but already booked
by clients. Nobody knows what kind of data represented by not_worked_time type. Please don't use it.

getWorkDaysInfo ($from, $to, $unitId, $eventId, $count)

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:

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.

@paramString$from

@paramString$to

@paramInteger$unitId(optional)

@paramInteger$eventId(optional)

@paramInteger$count(optional)

@returnObject

getFirstWorkingDay ()

Returns first working date for unit

@paramInteger

@returnString

getStartTimeMatrix ($from, $to, $eventId, $unitId, $count)

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 [[Plugins#Unit_location|Unit location]] plugin description for
more details.

Returns available time intervals for all service providers for given period, taking into account breaktimes, start and end working time
Eg.: {['2016-03-04': ['1': [['09:00:00','09:30:00'], ['11:15:00','14:45:00']] , ...], ...]}

Returns available time intervals for all servics for given period, taking into account breaktimes, start and end working time
Eg.: {['2016-03-04': ['1': [['09:00:00','09:30:00'], ['11:15:00','14:45:00']] , ...], ...]}

getPluginStatuses ($pluginNames)

getCompanyInfo ()

Returns an object with detailed information about company. See [[#getCompanyInfo response|example of response]].

@returnObject

createBatch ()

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

@returnInteger

getCountryPhoneCodes ()

Returns country phone code list

@returnArray

getPluginPromoInfoByCode ()

Returns an object with detailed information about promotion by promotion code. You can get promotion code
using [[Catalogue#getPromotionList|getPromotionList]] API method. If promotion record with specified

code not found then method returns an empty array (an empty object). If [[Plugins#Simply Smart Promotions|Simply Smart Promotions plugin]]
not enabled then method returns an error with code -32001 (Plugin is not activated). Use[[#isPluginActivated|isPluginActivated('promo')]] API method call to check if plugin enabled.

See [[#getPromotionList response|example]] of getPromotionList API method response. Please note that
response contains a list of services for wich promotion discount can be applied (service_ids key).

@paramString

@returnArray

getCompanyTimezoneOffset ()

Returns company timezone offset and company timezone

@returnarray

URL сервиса https://user-api.simplybook.me/login

getServiceUrl ($companyLogin)

Returns API url for given company login

@paramString$companyLogin

@returnString

getToken ($companyLogin, $apiKey)

Returns an application's token string for a company. You should use this token to authenticate all calls of
[[Company public service methods|Company public service API methods]] and [[Catalogue|Catalogue API methods]]. To

get application API key you need to enable [[Plugins#API|API plugin]].

@paramString$companyLogin

@paramString$apiKey

@returnString

getUserToken ($companyLogin, $userLogin, $userPassword)

Returns an authentication token string for certain user registered for company. You should use this token to
authenticate all calls of [[Company administration service methods|Company administration service API methods]] and

[[Catalogue|Catalogue API methods]].

@paramString$companyLogina company identifier (login)

@paramString$userLoginuser's login associated with company

@paramString$userPassworduser's password

@returnString

getApplicationToken ($applicationApiKey)

Returns an application's token string for an application. You should use this token to authenticate all calls of
[[Company public service methods|Company public service API methods]] and [[Catalogue|Catalogue API methods]]. To

getTopCities ()

getCountries ()

Returns a list of objects with just two properties each: id and country. An id
is a two character string with ISO 3166-1 country code.

@returnArray[{'id': ..., 'country': ...., 'count': ....}, ...]

getCities ($country)

Returns a list of objects. If $country parametr specified then method returns only cities of this
country. Each object in list has 4 properties:

* id - number. A unique identificator of city. You should use it as filter options in methods getCompanyList.
* city - string. A city name.
* count_id - string. Two chars ISO 3166-1 country code.
* count - number.

getPromotionReviews ($promotionId)

getRecentPromotions ($count)

getRecentFeedbacks ($count)

Returns list of feedbacs ordered by date DESC

@paramInteger$count

@returnArray

getRecentCompanies ($count)

Returns list of companies ordered by date DESC

@paramInteger$count

@returnArray

getCategories ()

Returns all categories as list of objects. Each category can have a subcategories. Each subcategory contains parent
category id in company_category_id field. For top level categories this field is null and

getFeedbackList ()

Get list of ALL simplybook feedbacks

@returnArray

getCompanyPromotionList ($promotionCompanyLogin, $count)

Returns a list of promotions objects associated with specified company. If company doesn't have any promotions or
[[Plugins#Simply_Smart_Promotions|Simply Smart Promotions plugin]] not active for this company method returns an