Short review of Schedulebull Car rental software API

Short review of Schedulebull Car rental software API

Program Schedulebull allows connecting it with your webpage or any other system in order to improve and broaden their functionality. In most cases you will need to have an API key so that our program could identify company and database from which to take this data. To receive an API key please contact us via e-mail viktors@schedulebull.com.
Below you will find an outline of most used API requests.
Documentation is in a development stage and API options are and will be expanded.
In case of questions or proposals send an e-mail to the address written above and we will be honored to answer your questions, introduce new things into life and cooperate with you to create the perfect product.

All API requests are called through GET parameters or through browser’s address bar when they are tested. !NB When testing a request through address bar, then every request on api3.php ends any sessions with Schedulebull’s server in the same browser.
Now API version 3 is recommended, thereby all requests that are related to company’s data are being requested from the address http://schedulebull.com/api3.php with obligatory parameters key and q.
In exceptional cases, requests that are not related to company’s information (for example, images), could be done without api3.php but instead from index.php file or directly from http://schedulebull.com?REQUEST=X, where REQUEST is the necessary request with parameter.

Car Rental

All models available for rental

http://schedulebull.com/api3.php?key=KEY&q=carRental/carModels
Available parameters:
     typelight, bus, plus, lightAndBus : models by type, without this parameter - all models will be returned including accessories.
     code : **** : model type code, as saved from GUI.
     all : - : by default models without images will not be returned, set this parameter to get models also without pictures.
     order :  position, price, price15, price30, made, model, code, year, doors, seats : default ordering is by price, set this parameter to sort by another variable.
 

Cars available for rental 

http://schedulebull.com/api3.php?key=KEY&q=carRental/carList
Available parameters:
     type : light, bus, plus, lightAndBus : cars by type, without this parameter - all models will be returned including accessories.
     code : *** : model type code, as saved from GUI.
     all : - : by default models without images will not be returned, set this parameter to get models also without pictures.
     order :  position, price, price15, price30, made, model, code, year, doors, seats : default ordering is by price, set this parameter to sort by another variable.
     colorName : *** : color name, for example: black, white, brown...  (all color list available in GUI)
     colorCode : *** : color hex code, for example 000000, FFFFFF, 663300... (all color list available in GUI)
! Difference of this method and previous carList method is: this return car ID, not car model ID (usable below for other methods) and can return several cars of one model if available.
 

Cars available for rental in given period of time (with prices)

http://schedulebull.com/api3.php?key=KEY&q=carRental/carsToRent&from=2015-01-01%2012:00&till=2015-01-02%2012:00
Required parameters: 
     from : date and time of period start in format YYYY-MM-DD HH:MM:SS
     tilldate and time of period end in format YYYY-MM-DD HH:MM:SS
Available parameters:
     type : light, bus, plus, lightAndBus : cars by type, without this parameter - all models will be returned including accessories.
     code : **** :  model type code, as saved from GUI.
     all : - :  by default models without images will not be returned, set this parameter to get models also without pictures.
     anyState : - : with this param all cars - also booked will be returned
     order :  position, price, price15, price30, made, model, code, year, doors, seats : default ordering is by price, set this parameter to sort by another variable.
 
 
 

Car data request

http://schedulebull.com/api3.php?key=KEY&q=carRental/carList/carData
Required parameters: 
     carID : car ID, returned by method carList 
 

Car image request

http://schedulebull.com/?
Required parameters: 
     img: integer : number returned in requests as img or image 
Available parameters:
     x : 35, 50, 75, 90, 100, 120, 150, 200, 250, 300, 400, 500, 600, 800, 1000 : by setting this parameter, image will be resized to this width in pixels;
     y : 35, 50, 75, 90, 100, 120, 150, 200, 250, 300, 400, 500, 600, 800, 1000 :by setting this parameter, image will be resized to this height in pixels;
     xy : 35, 50, 75, 90, 100, 120, 150, 200, 250, 300, 400, 500, 600, 800, 1000 : by setting this parameter, image will be resized to this maximum width/height in pixels;
 

Configuration

http://schedulebull.com/?carRental/configuration
Required parameters: 
     tag: variable 
 

Create reservation

http://schedulebull.com/api3.php?key=KEY&q=carRental/shedule/save
Required parameters: 
     from : date and time of period start in format YYYY-MM-DD HH:MM:SS
     till : date and time of period end in format YYYY-MM-DD HH:MM:SS
     client : client name and surname
     phone client phone number
     price : price per day
     carID : car (not model) ID
     place_from : place to delivery car for client
     place_to : place where client will give car back
Available parameters:
     editID : previosly created rezervation ID
     priceIsFull : 0,1 : if this parameter is set to 1 - parameter price will be taken as price per perod, not per day
     paid_date : YYYY-MM-DD : payment date
     paid_with : payment type (usually paypal or FirstData
     paid_doc : transaction number
     comment : comment in free form. If comment first line is in format "email+space+[+language+]", for example "test@example.com [en]", application will use it for integrated email sending in GUI.
     plus[] : priceauxiliary / accessories in free format with price, for example &plus[delivery]=10 (delivery for 10$), this price must be one time fee or already multiplied to days. For example - if you want insurance to be as auxiliary to car rental and to be paid 1$ for every rental day for one week rental period, you need multiply insurance price by days in website side and send it as &plus[insurance]=7
! If request is correct - schedulebull will return rezervation ID
! If request is not correct - error description will be in parameter error
 

Client database - get client

http://schedulebull.com/api3.php?key=KEY&q=carRental/clientDatabase
Required parameters: 
     telnr : phone number as it is in database
 

Client database - new client

http://schedulebull.com/api3.php?key=KEY&q=carRental/clientDatabase&new
Required parameters: 
     new : empty
Available parameters:
     vadapl : varchar : driver licence number
     pk : varchar : client identity number
     name :  varchar : client name
     surname : varchar : client last name
     birthday : YYYY-MM-DD : client birthday
     driverSince :  YYYY-MM-DD : day, client got driver licence
     telnr : varchar : client phone number
     adress1 : varchar : client address
     zip : varchar : postal code
     pase : varchar : client passport number.
 

Client database - update client info

http://schedulebull.com/api3.php?key=KEY&q=carRental/clientDatabase&update
Required parameters: 
     update : empty
     
ID : client ID 
Available parameters:
     vadapl : varchar : driver licence number
     pk : varchar : client identity number
     name :  varchar : client name
     surname : varchar : client last name
     birthday : YYYY-MM-DD : client birthday
     driverSince :  YYYY-MM-DD : day, client got driver licence
     telnr : varchar : client phone number
     adress1 : varchar : client address
     zip : varchar : postal code
     pase : varchar : client passport number.
 

Hotel

List of rooms

http://schedulebull.com/api3.php?key=KEY&q=hotel/rooms
Available parameters:
     type : single, twin, lux, ... : rooms by type, without this parameter - all models will be returned including accessories.
     size : integer : count of berth in room
     order :  size,type,price : default ordering is by price, set this parameter to sort by another variable.
 

Seasons

https://schedulebull.com/api3.php?key=KEY&q=hotel/seasons
Required parameters:
     -
Available parameters
     -
 

Rooms free for rent in time period

http://schedulebull.com/api3.php?key=KEY&q=hotel/roomsToRent&from=2015-01-01%2012:00&till=2015-01-02%2012:00
Required parameters:
     from : datetime in format YYYY-MM-DD HH:MM:SS : period start date and time
     till : datetime in format YYYY-MM-DD HH:MM:SS : period end date and time
Available parameters:
     -
 
 

Create reservation

http://schedulebull.com/api3.php?key=KEY&q=hotel/shedule/save
Required parameters:
     rez_from_date : date in format YYYY-MM-DD : period start
     rez_from_time : time in format HH:MM:SS period start
     rez_to_date date in format YYYY-MM-DD  period end
     rez_to_time : time in format HH:MM:SS period end
     rez_client : client name and surname
     rez_telnr : client phone number
     rez_price : price per day
     rez_currency:  EUR, USD, etc : currency
     rez_room : room ID
Available parameters:
     priceIsFull : 0,1 if this parameter is set to 1 - parameter price will be taken as price per perod, not per day
     gender : male, female : gender
     email : email
     country : country
     address : client address
     reservedFrom : example.com : reservation made from
     breakfast : int : breakfast count to all rental period
     rez_comment comment in free form. If comment first line is in format "email+space+[+language+]", for example "test@example.com [en]", application will use it for integrated email sending in GUI.
     client_count: int : guest count for reservation in room
 

Universal

List of items

http://schedulebull.com/api3.php?key=KEY&q=uniscb/items
Available parameters: none
 

Schedule of item in requested day

http://schedulebull.com/api3.php?key=KEY&q=uniscb/itemDay
Required parameters:
     itemID : integer : item id from previous request
     date : YYYY-MM-DD : date