The API gives access to carpool trips on BlaBlaCar.
The base URL of the API is:
https://public-api.blablacar.com
The path to search for trips is:
GET /api/v3/trips
Your API key must be provided as a query parameter in all your requests, like below:
curl https://public-api.blablacar.com/api/v3/trips?key=YOUR_API_KEY&from_coordinate=48.864716%2C2.349014&from_country=FR&to_coordinate=51.509865%2C-0.118092&to_country=GB&locale=fr-FR¤cy=EUR&from_cursor=cGFnZT0xOA%3D%3D&start_date_local=2019-01-10T08%3A55%3A00
Each trip result includes a link to get more details on this specific trip on BlaBlaCar's platform.
How to redirect to Blablacar website?
You should not try to rewrite the redirection link. You should use the one returned in the trip result and concatenate your marketing/campaign code.
?comuto_cmkt=MARKETING_CODE&utm_campaign=CAMPAIGN&utm_medium=API&utm_source=SOURCE&utm_content=WHATYOUWANT
This page is deep-linked and the website will detect if it's a mobile device and if the BlaBlaCar's app is on the device. In such a case, the user will be redirected to the app.
Query Parameters
Name | Type | Required | Description | Example |
---|---|---|---|---|
from_coordinate | String | Required | The departure coordinate.
Format: "latitude,longitude" url encoded. |
48.864716,2.349014 |
to_coordinate | String | Required |
The arrival coordinate. Format: "latitude,longitude" url encoded. |
48.864716,2.349014 |
locale | String | Optional | The locale in which the result will be displayed. Available locales and their possible currencies are detailed here. Defaults to the main locale of the departure country if supported or else to the UK locale. |
fr-FR |
currency | String | Optional | The ISO_4217 currency in which the price will be returned. Defaults to the currency of the country of the given or computed locale. |
EUR |
from_cursor | String | Optional | Results are returned using pagination. The cursor is a reference to the current page. The results for the next page, if any, can be fetched using the next_cursor attribute. If a request is made without specifying a from_cursor, the results of the first page will be returned. | cGFnZT0xOA== |
count | Integer | Optional |
The number of trips to return per page, up to a maximum of 100. Default value is 10. |
20 |
start_date_local | String(date-time) | Optional | Search for trips starting after this date. The time is supposed to be in the timezone of the departure point. Format: "yyyy-M-dTHH:mm:ss". Default value is current DateTime. |
2020-01-10T08:55:00 |
end_date_local | String(date-time) | Optional | Search for trips ending before this date. The time is supposed to be in the timezone of the arrival point.
Format: "yyyy-M-dTHH:mm:ss" Default value is end of the day of current DateTime. You cannot search for trips on more than 3 days in a row. |
2020-01-12T08:55:00 |
requested_seats | Integer | Optional | The minimum number of seats requested. Default value is 1. | 1 |
radius_in_meters | Integer | Optional |
Determines the radius of the circle around the given search coordinates in which trips will be searched from, up to a maximum of 50000 (in meters). If you're not sure of what value to use for this parameter, you can not send that parameter and the algorithm will rely on a calculation based on the distance of the trip (longer trips will have larger radiuses). |
5000 |
sort | String | Optional |
Determines the field (departure_datetime or price) and order (ascending or descending) trip results are sorted by. By default, results are sorted by departure datetime in ascending order. Allowed values: "departure_datetime:asc", "departure_datetime:desc", "price:asc", "price:desc" |
price:asc |
Response
Name | Type | Comment |
---|---|---|
link | String | The URL to redirect to the search results page on the BlaBlaCar website. |
search_info | Object | Information about the search |
trips | Array of trips | Detail of the trips found which match the query |
next_cursor | String | The reference to the next page. This parameter will be null for the last page of results returned. |
The format of each response object is detailed here.
In case of errors, look at this article.