Back to top

Bravodriver API

With this API developers can search for places, tracks and drivers availability and optionally book transfers from bravodriver checkout page.

Discovery

Discovery Nations, Places and Tracks serviced. This results can be cached by client up to one day.

Nations

Nations serviced.

Get Nations
GET/api/v1/nations{?lang}

Get all Nations serviced. Example.

Example URI

GET https://www.bravodriver.com/api/v1/nations?lang=IT
URI Parameters
HideShow
lang
string (optional) Example: IT

Language of response

Choices: IT EN ES

Response  200
HideShow
Headers
Cache-Control: max-age=84600
Content-Type: application/json;charset=utf-8
Body
{
  "AT": "Austria",
  "FR": "Francia",
  "IT": "Italia",
  "LI": "Liechtenstein",
  "AD": "Principato di Andorra",
  "MC": "Principato di Monaco",
  "ES": "Spagna",
  "CH": "Svizzera"
}

Places

Places serviced

Get Places
GET/api/v1/places{?lang}

Get all Places serviced. Example.

Example URI

GET https://www.bravodriver.com/api/v1/places?lang=IT
URI Parameters
HideShow
lang
string (optional) Example: IT

Language of response

Choices: IT EN ES

Response  200
HideShow
Headers
Cache-Control: max-age=84600
Content-Type: application/json;charset=utf-8
Body
[
  {
    "code": 353,
    "name": "Abbiadori",
    "province": "Olbia-Tempio",
    "nationcode": "IT",
    "coordinate": {
      "latitude": 41.096639734881,
      "longitude": 9.5252966880798
    }
  },
  {
    "code": 948,
    "name": "Acantilados de los Gigantes",
    "province": "Santa Cruz de Tenerife",
    "nationcode": "ES",
    "coordinate": {
      "latitude": 28.243265719576,
      "longitude": -16.840238571167
    }
  },
  .. 
  ..
  ..
]

Tracks

Tracks serviced

Get Tracks
GET/api/v1/tracks{?lang}

Get all Tracks serviced. Example.

Example URI

GET https://www.bravodriver.com/api/v1/tracks?lang=IT
URI Parameters
HideShow
lang
string (optional) Example: IT

It needed for order the array of place destination by names

Choices: IT EN ES

Response  200
HideShow
Headers
Cache-Control: max-age=84600
Content-Type: application/json;charset=utf-8
Body
{
  "975": [
      947
    ],
  "974": [
    281,
    258,
    66,
    36,
    58,
    269,
    274,
    13
  ],
  "973": [
    947
    ..
    ..
    ..
  ],
  ..
  ..
  ..
}

Availability

Get availability of vehicles and drivers

Availability

Availability by Place
GET/api/v1/availabilitybyplace{?fromid,toid,pax,date,dater,agent,lang}

Get availability of vehicles and drivers.

Example URI

GET https://www.bravodriver.com/api/v1/availabilitybyplace?fromid=8&toid=13&pax=2&date=2016-12-27T15:00&dater=2016-12-31T15:00&agent=info@partner.com&lang=IT
URI Parameters
HideShow
fromid
integer (required) Example: 8

code of pick-up place

toid
integer (required) Example: 13

code of drop-off place

pax
integer (required) Example: 2

number of passenger, included children, on checkout page you can ask for infant seats

date
date (required) Example: 2016-12-27T15:00

date and time of pick-up, local to pick-up place

dater
date (optional) Example: 2016-12-31T15:00

return date and time of pick-up, local to pick-up place

agent
string (optional) Example: info@partner.com

the email of the agent who get the commission (ask to info@bravodriver.com for get Agent access)

lang
string (required) Example: IT

Language of response

Choices: IT EN ES

Response  200
HideShow

The response contains infos about places and the availability of vehicles.
Every item in results node represent a vehicle available.
Into a result, beyond the other info, there are:

  • percentpricetoreserve, that represent the percentage of price that needed to pay to book. The other part of the cost is given on site. For now is always 1, it’s need the payment of total cost to book.

  • cancellationpolicies, is an array of policies. Ex:

    {
      "daybefore": 15,
      "percentrefound": 1
    },
    {
      "daybefore": 7,
      "percentrefound": 0.8
    }

    means that if you cancel the reservation 15 days before the reservation date, the customer has a full refund. If the customer cancel between 15 and 7 day before, the customer has a refund of 80%. If he cancel less than 7 day before, there is’n any refund.

  • driver and company, for now are the same entity. We usually display only infos about company.

  • maxwaitingmin, is the time, in minutes, that the driver will wait che customer at pick-up point.

  • checkouturl, contain the url used to book.

Headers
Cache-Control: no-transform, no-store
Content-Type: application/json;charset=utf-8
Body
{
  "nationfrom": {
    "code": "IT",
    "name": "Italia"
  },
  "placefrom": {
    "code": 13,
    "name": "Castelbuono",
    "province": null,
    "nationcode": null,
    "coordinate": {
      "latitude": 37.934153764918,
      "longitude": 14.088603258133
    }
  },
  "placeto": {
    "code": 8,
    "name": "Catania, Aeroporto Fontanarossa",
    "province": null,
    "nationcode": null,
    "coordinate": {
      "latitude": 37.47090719543,
      "longitude": 15.06534576416
    }
  },
  "pax": 2,
  "resultremovedforlessnotice": 0,
  "distancekm": 166,
  "durationmin": 121,
  "results": [
    {
      "resource": {
        "concrete_class_type": "it.osys.reservation.server.rest.fe.dto.VehicleDto",
        "id": 4,
        "name": "Mercedes Classe E",
        "status": "RESERVABLE",
        "images": [
          {
            "image": {
              "href": "/reservation/services/images/resource/4/0"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/4/0/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/4/1"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/4/1/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/4/2"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/4/2/small",
              "rel": "thumbnail"
            }
          }
        ],
        "percentpricetoreserve": 1,
        "cancellationpolicies": [
          {
            "daybefore": 15,
            "percentrefound": 1
          }
        ],
        "luggagelt": 451,
        "classe": "COMFORT",
        "license": "NCC",
        "nationcode": "IT"
      },
      "company": {
        "userid": 7,
        "name": "Meditravel s.r.l.",
        "email": "info@meditravel.it",
        "mobile": "+393281114773",
        "image": {
          "href": "/reservation/services/images/user/7"
        }
      },
      "price": 260,
      "cancellationpolicy": [
        {
          "daybefore": 15,
          "percentrefound": 1
        }
      ],
      "checkouturl": "/it/prebooking1_recap.html?fromid=13&toid=8&date=2015-12-27T15%3A00%3A00&pax=2&resourceid=4&trackid=88",
      "trackid": 88,
      "maxwaitingmin": 45
    },
    {
      "resource": {
        "concrete_class_type": "it.osys.reservation.server.rest.fe.dto.VehicleDto",
        "id": 3,
        "name": "FIAT ULYSSE",
        "status": "RESERVABLE",
        "images": [
          {
            "image": {
              "href": "/reservation/services/images/resource/3/1"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/3/1/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/3/2"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/3/2/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/3/3"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/3/3/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/3/4"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/3/4/small",
              "rel": "thumbnail"
            }
          }
        ],
        "percentpricetoreserve": 1,
        "cancellationpolicies": [
          {
            "daybefore": 15,
            "percentrefound": 1
          }
        ],
        "luggagelt": 324,
        "classe": "COMFORT",
        "license": "NCC",
        "nationcode": "IT"
      },
      "company": {
        "userid": 6,
        "name": "Marco",
        "email": "m.santoro@email.it",
        "mobile": "+393343640981",
        "image": {
          "href": "/reservation/services/images/user/6"
        }
      },
      "price": 260,
      "cancellationpolicy": [
        {
          "daybefore": 15,
          "percentrefound": 1
        }
      ],
      "checkouturl": "/it/prebooking1_recap.html?fromid=13&toid=8&date=2015-12-27T15%3A00%3A00&pax=2&resourceid=3&trackid=24",
      "trackid": 24,
      "maxwaitingmin": 45
    },
    {
      "resource": {
        "concrete_class_type": "it.osys.reservation.server.rest.fe.dto.VehicleDto",
        "id": 27,
        "name": "Fiat Iveco",
        "description": "Monovolume comodo e spazioso, fino ad 8 posti, con sedili in pelle, aria condizionata, frigo e tv (DVD) adatto a brevi e lunghe tratte.",
        "status": "RESERVABLE",
        "images": [
          {
            "image": {
              "href": "/reservation/services/images/resource/27/0"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/27/0/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/27/1"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/27/1/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/27/2"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/27/2/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/27/3"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/27/3/small",
              "rel": "thumbnail"
            }
          }
        ],
        "percentpricetoreserve": 1,
        "cancellationpolicies": [
          {
            "daybefore": 15,
            "percentrefound": 1
          },
          {
            "daybefore": 7,
            "percentrefound": 0.8
          }
        ],
        "luggagelt": 800,
        "classe": "MEDIUM",
        "license": "NCC",
        "nationcode": "IT"
      },
      "company": {
        "userid": 12,
        "name": "Angelo",
        "email": "angelo.pata@alice.it",
        "mobile": "+393400659347",
        "image": {
          "href": "/reservation/services/images/user/12"
        }
      },
      "price": 300,
      "cancellationpolicy": [
        {
          "daybefore": 15,
          "percentrefound": 1
        },
        {
          "daybefore": 7,
          "percentrefound": 0.8
        }
      ],
      "checkouturl": "/it/prebooking1_recap.html?fromid=13&toid=8&date=2015-12-27T15%3A00%3A00&pax=2&resourceid=27&trackid=239",
      "trackid": 239,
      "maxwaitingmin": 45
    }
  ],
  "date": "2015-12-27T15:00:00"
}

AvailabilityByCoord

Availability by Coordinate
GET/api/v1/availabilitybycoord{?fromlat,fromlon,tolat,tolon,radius,pax,date,dater,agent,lang}

Get availability of vehicles and drivers.

Example URI

GET https://www.bravodriver.com/api/v1/availabilitybycoord?fromlat=45.631559&fromlon=8.720478&tolat=45.45139&tolon=9.27626&radius=5&pax=2&date=2016-12-27T15:00&dater=2016-12-31T15:00&agent=info@partner.com&lang=IT
URI Parameters
HideShow
fromlat
float (required) Example: 45.631559

latitude of pick-up place

fromlon
float (required) Example: 8.720478

longitude pick-up place

tolat
float (required) Example: 45.45139

latitude drop-off place

tolon
float (required) Example: 9.27626

longitude drop-off place

radius
float (optional) Example: 5

radius used to search for known place. Default is 25%, up to 7Km, of distance between pick-up place and drop-off place.

pax
integer (required) Example: 2

number of passenger, included children, on checkout page you can ask for infant seats

date
date (required) Example: 2016-12-27T15:00

date and time of pick-up, local to pick-up place

dater
date (optional) Example: 2016-12-31T15:00

return date and time of pick-up, local to pick-up place

agent
string (optional) Example: info@partner.com

the email of the agent who get the commission (ask to info@bravodriver.com for get Agent access)

lang
string (required) Example: IT

Language of response

Choices: IT EN ES

Response  200
HideShow

The response contains infos about places and the availability of vehicles.
Every item in results node represent a vehicle available.
Into a result, beyond the other info, there are:

  • percentpricetoreserve, that represent the percentage of price that needed to pay to book. The other part of the cost is given on site. For now is always 1, it’s need the payment of total cost to book.

  • cancellationpolicies, is an array of policies. Ex:

    {
      "daybefore": 15,
      "percentrefound": 1
    },
    {
      "daybefore": 7,
      "percentrefound": 0.8
    }

    means that if you cancel the reservation 15 days before the reservation date, the customer has a full refund. If the customer cancel between 15 and 7 day before, the customer has a refund of 80%. If he cancel less than 7 day before, there is’n any refund.

  • driver and company, for now are the same entity. We usually display only infos about company.

  • maxwaitingmin, is the time, in minutes, that the driver will wait che customer at pick-up point.

  • checkouturl, contain the url used to book.

Headers
Cache-Control: no-transform, no-store
Content-Type: application/json;charset=utf-8
Body
{
  "nationfrom": {
    "code": "IT",
    "name": "Italia"
  },
  "placefrom": {
    "code": 13,
    "name": "Castelbuono",
    "province": null,
    "nationcode": null,
    "coordinate": {
      "latitude": 37.934153764918,
      "longitude": 14.088603258133
    }
  },
  "placeto": {
    "code": 8,
    "name": "Catania, Aeroporto Fontanarossa",
    "province": null,
    "nationcode": null,
    "coordinate": {
      "latitude": 37.47090719543,
      "longitude": 15.06534576416
    }
  },
  "pax": 2,
  "resultremovedforlessnotice": 0,
  "distancekm": 166,
  "durationmin": 121,
  "results": [
    {
      "resource": {
        "concrete_class_type": "it.osys.reservation.server.rest.fe.dto.VehicleDto",
        "id": 4,
        "name": "Mercedes Classe E",
        "status": "RESERVABLE",
        "images": [
          {
            "image": {
              "href": "/reservation/services/images/resource/4/0"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/4/0/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/4/1"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/4/1/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/4/2"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/4/2/small",
              "rel": "thumbnail"
            }
          }
        ],
        "percentpricetoreserve": 1,
        "cancellationpolicies": [
          {
            "daybefore": 15,
            "percentrefound": 1
          }
        ],
        "luggagelt": 451,
        "classe": "COMFORT",
        "license": "NCC",
        "nationcode": "IT"
      },
      "company": {
        "userid": 7,
        "name": "Meditravel s.r.l.",
        "email": "info@meditravel.it",
        "mobile": "+393281114773",
        "image": {
          "href": "/reservation/services/images/user/7"
        }
      },
      "price": 260,
      "cancellationpolicy": [
        {
          "daybefore": 15,
          "percentrefound": 1
        }
      ],
      "checkouturl": "/it/prebooking1_recap.html?fromid=13&toid=8&date=2015-12-27T15%3A00%3A00&pax=2&resourceid=4&trackid=88",
      "trackid": 88,
      "maxwaitingmin": 45
    },
    {
      "resource": {
        "concrete_class_type": "it.osys.reservation.server.rest.fe.dto.VehicleDto",
        "id": 3,
        "name": "FIAT ULYSSE",
        "status": "RESERVABLE",
        "images": [
          {
            "image": {
              "href": "/reservation/services/images/resource/3/1"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/3/1/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/3/2"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/3/2/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/3/3"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/3/3/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/3/4"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/3/4/small",
              "rel": "thumbnail"
            }
          }
        ],
        "percentpricetoreserve": 1,
        "cancellationpolicies": [
          {
            "daybefore": 15,
            "percentrefound": 1
          }
        ],
        "luggagelt": 324,
        "classe": "COMFORT",
        "license": "NCC",
        "nationcode": "IT"
      },
      "company": {
        "userid": 6,
        "name": "Marco",
        "email": "m.santoro@email.it",
        "mobile": "+393343640981",
        "image": {
          "href": "/reservation/services/images/user/6"
        }
      },
      "price": 260,
      "cancellationpolicy": [
        {
          "daybefore": 15,
          "percentrefound": 1
        }
      ],
      "checkouturl": "/it/prebooking1_recap.html?fromid=13&toid=8&date=2015-12-27T15%3A00%3A00&pax=2&resourceid=3&trackid=24",
      "trackid": 24,
      "maxwaitingmin": 45
    },
    {
      "resource": {
        "concrete_class_type": "it.osys.reservation.server.rest.fe.dto.VehicleDto",
        "id": 27,
        "name": "Fiat Iveco",
        "description": "Monovolume comodo e spazioso, fino ad 8 posti, con sedili in pelle, aria condizionata, frigo e tv (DVD) adatto a brevi e lunghe tratte.",
        "status": "RESERVABLE",
        "images": [
          {
            "image": {
              "href": "/reservation/services/images/resource/27/0"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/27/0/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/27/1"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/27/1/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/27/2"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/27/2/small",
              "rel": "thumbnail"
            }
          },
          {
            "image": {
              "href": "/reservation/services/images/resource/27/3"
            },
            "thumb": {
              "href": "/reservation/services/images/resource/27/3/small",
              "rel": "thumbnail"
            }
          }
        ],
        "percentpricetoreserve": 1,
        "cancellationpolicies": [
          {
            "daybefore": 15,
            "percentrefound": 1
          },
          {
            "daybefore": 7,
            "percentrefound": 0.8
          }
        ],
        "luggagelt": 800,
        "classe": "MEDIUM",
        "license": "NCC",
        "nationcode": "IT"
      },
      "company": {
        "userid": 12,
        "name": "Angelo",
        "email": "angelo.pata@alice.it",
        "mobile": "+393400659347",
        "image": {
          "href": "/reservation/services/images/user/12"
        }
      },
      "price": 300,
      "cancellationpolicy": [
        {
          "daybefore": 15,
          "percentrefound": 1
        },
        {
          "daybefore": 7,
          "percentrefound": 0.8
        }
      ],
      "checkouturl": "/it/prebooking1_recap.html?fromid=13&toid=8&date=2015-12-27T15%3A00%3A00&pax=2&resourceid=27&trackid=239",
      "trackid": 239,
      "maxwaitingmin": 45
    }
  ],
  "date": "2015-12-27T15:00:00"
}

Checkout

Go to checkout page to book a transfer.

Checkout

Checkout using the “checkouturl” url contains in availability’s response.

Generated by aglio on 24 Feb 2016