Catalogue: Difference between revisions
No edit summary |
No edit summary |
||
| (2 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
<languages/> | <languages/> | ||
<translate> | <translate> | ||
<!--T:1--> | |||
{{#seo: | {{#seo: | ||
|title=Catalogue - SimplyBook.me | |title=Catalogue - SimplyBook.me | ||
| Line 9: | Line 10: | ||
</translate> | </translate> | ||
<translate> | |||
==General Information== <!--T:2--> | |||
<!--T:3--> | |||
SimplyBook.me API service build on [https://en.wikipedia.org/wiki/JSON-RPC JSON-RPC] remote procedure call protocol. A remote method is invoked by sending a request to a remote service using HTTPS. All transfer types are single objects, serialized using JSON. A request is a call to a specific method provided by a remote system. It must contain three certain properties: | SimplyBook.me API service build on [https://en.wikipedia.org/wiki/JSON-RPC JSON-RPC] remote procedure call protocol. A remote method is invoked by sending a request to a remote service using HTTPS. All transfer types are single objects, serialized using JSON. A request is a call to a specific method provided by a remote system. It must contain three certain properties: | ||
<!--T:4--> | |||
* <code>jsonrpc</code> - a version of JSON-RPC protocol. Always <code>"2.0"</code> | * <code>jsonrpc</code> - a version of JSON-RPC protocol. Always <code>"2.0"</code> | ||
* <code>method</code> - A String with the name of the method to be invoked. | * <code>method</code> - A String with the name of the method to be invoked. | ||
| Line 18: | Line 23: | ||
* <code>id</code> - A value of any type, which is used to match the response with the request that it is replying to. | * <code>id</code> - A value of any type, which is used to match the response with the request that it is replying to. | ||
<!--T:5--> | |||
The receiver of the request must reply with a valid response to all received requests. A response must contain the properties mentioned below. | The receiver of the request must reply with a valid response to all received requests. A response must contain the properties mentioned below. | ||
<!--T:6--> | |||
* <code>result</code> - The data returned by the invoked method. If an error occurred while invoking the method, this value must be null. | * <code>result</code> - The data returned by the invoked method. If an error occurred while invoking the method, this value must be null. | ||
* <code>error</code> - A specified error code if there was an error invoking the method, otherwise null. | * <code>error</code> - A specified error code if there was an error invoking the method, otherwise null. | ||
* <code>id</code> - The id of the request it is responding to. | * <code>id</code> - The id of the request it is responding to. | ||
</translate> | |||
<translate> | |||
<!--T:7--> | |||
Example | Example | ||
<!--T:8--> | |||
<pre> | <pre> | ||
Request | Request | ||
| Line 40: | Line 51: | ||
"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 61: | Line 72: | ||
</pre> | </pre> | ||
<!--T:9--> | |||
All calls of public service methods should have additional HTTP header: | All calls of public service methods should have additional HTTP header: | ||
* <code>X-Token</code> an authentication token. See [[#Authentication|authentication]] section. | <!--T:10--> | ||
* <code>X-Token</code> an authentication token. See [[Catalogue#Authentication|authentication]] section. | |||
</translate> | |||
===Endpoint=== | <translate> | ||
===Endpoint=== <!--T:11--> | |||
Use URL <code>https://user-api.simplybook.me/catalogue</code> for all service API calls listed in [[#Methods|methods section]]. | <!--T:12--> | ||
Use URL <code>https://user-api.simplybook.me/catalogue</code> for all service API calls listed in [[Catalogue#Methods|methods section]]. | |||
===Authentication=== | ===Authentication=== <!--T:13--> | ||
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#getUserToken|getUserToken]]</code> or <code>[[Authentication#getToken|getToken]]</code> API methods 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 [[ | <!--T:14--> | ||
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#getUserToken|getUserToken]]</code> or <code>[[Authentication#getToken|getToken]]</code> API methods 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 == <!--T:15--> | ||
=== getCategories === | === getCategories === <!--T:16--> | ||
<!--T:17--> | |||
<code>getCategories()</code> | <code>getCategories()</code> | ||
<!--T:18--> | |||
No arguments. | No arguments. | ||
Returns Array. | Returns Array. | ||
<!--T:19--> | |||
Get lsit of ALL categories | Get lsit of ALL categories | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getCities === <!--T:20--> | |||
<!--T:21--> | |||
<code>getCities($country)</code> | <code>getCities($country)</code> | ||
<!--T:22--> | |||
Parameters: | Parameters: | ||
<!--T:23--> | |||
* '''$country''' String | * '''$country''' String | ||
<!--T:24--> | |||
Returns Array. | Returns Array. | ||
<!--T:25--> | |||
Returns city list as Array order by name | Returns city list as Array order by name | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getCompanyCount === <!--T:26--> | |||
<!--T:27--> | |||
<code>getCompanyCount($filter)</code> | <code>getCompanyCount($filter)</code> | ||
<!--T:28--> | |||
Parameters: | Parameters: | ||
<!--T:29--> | |||
* '''$filter''' Object - filter object | * '''$filter''' Object - filter object | ||
<!--T:30--> | |||
Returns array. | Returns array. | ||
<!--T:31--> | |||
Returns total companies count with specified filter$filter filter params. Object that contains following params | Returns total companies count with specified filter$filter filter params. Object that contains following params | ||
<pre> | <pre> | ||
| Line 131: | Line 161: | ||
</pre> | </pre> | ||
Use tag_ids OR tags | Use tag_ids OR tags | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getCompanyInfo === <!--T:32--> | |||
<!--T:33--> | |||
<code>getCompanyInfo($login)</code> | <code>getCompanyInfo($login)</code> | ||
<!--T:34--> | |||
Parameters: | Parameters: | ||
<!--T:35--> | |||
* '''$login''' String | * '''$login''' String | ||
<!--T:36--> | |||
Returns Object. | Returns Object. | ||
<!--T:37--> | |||
Returns company information by company login | Returns company information by company login | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getCompanyList === <!--T:38--> | |||
<!--T:39--> | |||
<code>getCompanyList($filter, $from, $limit)</code> | <code>getCompanyList($filter, $from, $limit)</code> | ||
<!--T:40--> | |||
Parameters: | Parameters: | ||
<!--T:41--> | |||
* '''$filter''' Object - filter object | * '''$filter''' Object - filter object | ||
* '''$from''' Integer - from position | * '''$from''' Integer - from position | ||
* '''$limit''' Integer - rows limit | * '''$limit''' Integer - rows limit | ||
<!--T:42--> | |||
Returns array. | Returns array. | ||
<!--T:43--> | |||
Returns companies list$filter filter params. Object that contains following params | Returns companies list$filter filter params. Object that contains following params | ||
<pre> | <pre> | ||
| Line 181: | Line 221: | ||
</pre> | </pre> | ||
Use tag_ids OR tags | Use tag_ids OR tags | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getCompanyMarkers === <!--T:44--> | |||
<!--T:45--> | |||
<code>getCompanyMarkers($filter, $bounds, $zoom, $clustering)</code> | <code>getCompanyMarkers($filter, $bounds, $zoom, $clustering)</code> | ||
<!--T:46--> | |||
Parameters: | Parameters: | ||
<!--T:47--> | |||
* '''$filter''' Object - filter object | * '''$filter''' Object - filter object | ||
* '''$bounds''' | * '''$bounds''' | ||
| Line 196: | Line 239: | ||
* '''$clustering''' | * '''$clustering''' | ||
<!--T:48--> | |||
Returns array. | Returns array. | ||
<!--T:49--> | |||
Returns company markers$filter filter params. Object that contains following params | Returns company markers$filter filter params. Object that contains following params | ||
<pre> | <pre> | ||
| Line 218: | Line 263: | ||
Use tag_ids OR tags | Use tag_ids OR tags | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getCompanyReviews === <!--T:50--> | |||
<!--T:51--> | |||
<code>getCompanyReviews($login)</code> | <code>getCompanyReviews($login)</code> | ||
<!--T:52--> | |||
Parameters: | Parameters: | ||
<!--T:53--> | |||
* '''$login''' String | * '''$login''' String | ||
<!--T:54--> | |||
Returns Object. | Returns Object. | ||
<!--T:55--> | |||
Returns company reviews list | Returns company reviews list | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getCountries === | === getCountries === <!--T:56--> | ||
<!--T:57--> | |||
<code>getCountries()</code> | <code>getCountries()</code> | ||
<!--T:58--> | |||
No arguments. | No arguments. | ||
Returns Array. | Returns Array. | ||
<!--T:59--> | |||
Returns country list as Array order by name | Returns country list as Array order by name | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getFeedbackList === | === getFeedbackList === <!--T:60--> | ||
<!--T:61--> | |||
<code>getFeedbackList()</code> | <code>getFeedbackList()</code> | ||
<!--T:62--> | |||
No arguments. | No arguments. | ||
Returns Array. | Returns Array. | ||
<!--T:63--> | |||
Get lsit of ALL simplybook feedbacks | Get lsit of ALL simplybook feedbacks | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getPromotionCount === | === getPromotionCount === <!--T:64--> | ||
<!--T:65--> | |||
<code>getPromotionCount($filter)</code> | <code>getPromotionCount($filter)</code> | ||
<!--T:66--> | |||
Parameters: | Parameters: | ||
<!--T:67--> | |||
* '''$filter''' Object - filter object | * '''$filter''' Object - filter object | ||
<!--T:68--> | |||
Returns array. | Returns array. | ||
<!--T:69--> | |||
Returns total active promotions count with specified filter$filter filter params. Object that contains following params | Returns total active promotions count with specified filter$filter filter params. Object that contains following params | ||
<pre> | <pre> | ||
| Line 291: | Line 358: | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getPromotionInfo === | === getPromotionInfo === <!--T:70--> | ||
<!--T:71--> | |||
<code>getPromotionInfo($id, $feedbackFrom, $feedbackCount)</code> | <code>getPromotionInfo($id, $feedbackFrom, $feedbackCount)</code> | ||
<!--T:72--> | |||
Parameters: | Parameters: | ||
<!--T:73--> | |||
* '''$id''' Integer | * '''$id''' Integer | ||
* '''$feedbackFrom''' Integer = 0 | * '''$feedbackFrom''' Integer = 0 | ||
* '''$feedbackCount''' Integer = 100 | * '''$feedbackCount''' Integer = 100 | ||
<!--T:74--> | |||
Returns Object. | Returns Object. | ||
<!--T:75--> | |||
Returns promotion information by id | Returns promotion information by id | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getPromotionList === | === getPromotionList === <!--T:76--> | ||
<!--T:77--> | |||
<code>getPromotionList($filter, $from, $limit)</code> | <code>getPromotionList($filter, $from, $limit)</code> | ||
<!--T:78--> | |||
Parameters: | Parameters: | ||
<!--T:79--> | |||
* '''$filter''' Object - filter object | * '''$filter''' Object - filter object | ||
* '''$from''' Integer - from position | * '''$from''' Integer - from position | ||
* '''$limit''' Integer - rows limit | * '''$limit''' Integer - rows limit | ||
<!--T:80--> | |||
Returns array. | Returns array. | ||
<!--T:81--> | |||
Returns active promotion list$filter filter params. Object that contains following params | Returns active promotion list$filter filter params. Object that contains following params | ||
<pre> | <pre> | ||
| Line 342: | Line 423: | ||
Use tag_ids OR tags | Use tag_ids OR tags | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getPromotionListByIds === | === getPromotionListByIds === <!--T:82--> | ||
<!--T:83--> | |||
<code>getPromotionListByIds($ids)</code> | <code>getPromotionListByIds($ids)</code> | ||
<!--T:84--> | |||
Parameters: | Parameters: | ||
<!--T:85--> | |||
* '''$ids''' | * '''$ids''' | ||
<!--T:86--> | |||
Returns array. | Returns array. | ||
<!--T:87--> | |||
Returns active promotion list | Returns active promotion list | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getPromotionReviews === | === getPromotionReviews === <!--T:88--> | ||
<!--T:89--> | |||
<code>getPromotionReviews($promotionId)</code> | <code>getPromotionReviews($promotionId)</code> | ||
<!--T:90--> | |||
Parameters: | Parameters: | ||
<!--T:91--> | |||
* '''$promotionId''' Integer | * '''$promotionId''' Integer | ||
<!--T:92--> | |||
Returns Object. | Returns Object. | ||
<!--T:93--> | |||
Returns promotion reviews list | Returns promotion reviews list | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getRecentCompanies === | === getRecentCompanies === <!--T:94--> | ||
<!--T:95--> | |||
<code>getRecentCompanies($count)</code> | <code>getRecentCompanies($count)</code> | ||
<!--T:96--> | |||
Parameters: | Parameters: | ||
<!--T:97--> | |||
* '''$count''' Integer | * '''$count''' Integer | ||
<!--T:98--> | |||
Returns Array. | Returns Array. | ||
<!--T:99--> | |||
Returns list of companies ordered by date DESC | Returns list of companies ordered by date DESC | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getRecentFeedbacks === | === getRecentFeedbacks === <!--T:100--> | ||
<!--T:101--> | |||
<code>getRecentFeedbacks($count)</code> | <code>getRecentFeedbacks($count)</code> | ||
<!--T:102--> | |||
Parameters: | Parameters: | ||
<!--T:103--> | |||
* '''$count''' Integer | * '''$count''' Integer | ||
<!--T:104--> | |||
Returns Array. | Returns Array. | ||
<!--T:105--> | |||
Returns list of feedbacs ordered by date DESC | Returns list of feedbacs ordered by date DESC | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getRecentPromotions === | === getRecentPromotions === <!--T:106--> | ||
<!--T:107--> | |||
<code>getRecentPromotions($count)</code> | <code>getRecentPromotions($count)</code> | ||
<!--T:108--> | |||
Parameters: | Parameters: | ||
<!--T:109--> | |||
* '''$count''' Integer | * '''$count''' Integer | ||
<!--T:110--> | |||
Returns Array. | Returns Array. | ||
<!--T:111--> | |||
Returns list of promotions ordered by date DESC | Returns list of promotions ordered by date DESC | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getRelatedPromotions === | === getRelatedPromotions === <!--T:112--> | ||
<!--T:113--> | |||
<code>getRelatedPromotions($id, $count)</code> | <code>getRelatedPromotions($id, $count)</code> | ||
<!--T:114--> | |||
Parameters: | Parameters: | ||
<!--T:115--> | |||
* '''$id''' Integer | * '''$id''' Integer | ||
* '''$count''' Integer = 10 | * '''$count''' Integer = 10 | ||
<!--T:116--> | |||
Returns Array. | Returns Array. | ||
<!--T:117--> | |||
Returns related promotions by given promotion id | Returns related promotions by given promotion id | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getTags === | === getTags === <!--T:118--> | ||
<!--T:119--> | |||
<code>getTags($filter)</code> | <code>getTags($filter)</code> | ||
<!--T:120--> | |||
Parameters: | Parameters: | ||
<!--T:121--> | |||
* '''$filter''' Object - filter object | * '''$filter''' Object - filter object | ||
<!--T:122--> | |||
Returns Array. | Returns Array. | ||
<!--T:123--> | |||
Returns tags list$filter filter params. Object that contains following params | Returns tags list$filter filter params. Object that contains following params | ||
<pre> | <pre> | ||
| Line 455: | Line 578: | ||
Use tag_ids OR tags | Use tag_ids OR tags | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getTopCities === | === getTopCities === <!--T:124--> | ||
<!--T:125--> | |||
<code>getTopCities()</code> | <code>getTopCities()</code> | ||
<!--T:126--> | |||
No arguments. | No arguments. | ||
Returns Array. | Returns Array. | ||
<!--T:127--> | |||
Returns city list as Array order by company count in city | Returns city list as Array order by company count in city | ||
</translate> | |||
---- | ---- | ||
<translate> | |||
=== getTopCountries === | === getTopCountries === <!--T:128--> | ||
<!--T:129--> | |||
<code>getTopCountries()</code> | <code>getTopCountries()</code> | ||
<!--T:130--> | |||
No arguments. | No arguments. | ||
Returns Array. | Returns Array. | ||
<!--T:131--> | |||
Returns country list as Array order by company count in country | Returns country list as Array order by company count in country | ||
</translate> | |||