Transfers
Search for ground transfers
POST
/v1/return_transfersSearch for available ground transportation between locations.
Location Types:
airport: Use IATA code iniatafield (e.g., “DUB”)cruise port: Use UNLOCODE inidfield (e.g., “IEDUB”)train station: Use numeric ID inidfieldaddress: Useaddress,latitude,longitude, and optionallyplace_id(Google Places)
The response includes a search field (base64 encoded) required for booking.
Request Body
Required
{ "from": { "type": "airport", "title": "Dublin Airport", "iata": "DUB" }, "to": { "type": "address", "title": "The Shelbourne Hotel", "address": "27 St Stephen's Green, Dublin 2, Ireland", "latitude": 53.3388, "longitude": -6.2576 }, "start_time_local": "2025-03-15T10:00", "adults": 2, "children": 2, "infants": 0, "currency": "EUR"}Code Examples
curl -X POST \ -H "access-token: {{token}}" \ -H "Content-Type: application/json" \ -d '{ "from": { "type": "airport", "title": "Dublin Airport", "iata": "DUB" }, "to": { "type": "address", "title": "The Shelbourne Hotel", "address": "27 St Stephens Green, Dublin 2, Ireland", "latitude": 53.3388, "longitude": -6.2576, "place_id": "ChIJO4iKqC8OZ0gRBL4HzjBi7C0" }, "start_time_local": "2025-03-15T10:00", "adults": 2, "children": 2, "infants": 0, "currency": "EUR", "vehicle_class": "Economy", "sort_by": "Price-Low" }' \ "https://apistage.projectexpedition.com/v1/return_transfers"const response = await fetch('https://apistage.projectexpedition.com/v1/return_transfers', { method: 'POST', headers: { 'access-token': 'YOUR_TOKEN', 'Content-Type': 'application/json' }, body: JSON.stringify({ "from": { "type": "airport", "title": "Dublin Airport", "iata": "DUB" }, "to": { "type": "address", "title": "The Shelbourne Hotel", "address": "27 St Stephens Green, Dublin 2, Ireland", "latitude": 53.3388, "longitude": -6.2576, "place_id": "ChIJO4iKqC8OZ0gRBL4HzjBi7C0" }, "start_time_local": "2025-03-15T10:00", "adults": 2, "children": 2, "infants": 0, "currency": "EUR", "vehicle_class": "Economy", "sort_by": "Price-Low" })});
const data = await response.json();<?php$data = json_encode({ 'from': { 'type': 'airport', 'title': 'Dublin Airport', 'iata': 'DUB' }, 'to': { 'type': 'address', 'title': 'The Shelbourne Hotel', 'address': '27 St Stephens Green, Dublin 2, Ireland', 'latitude': 53.3388, 'longitude': -6.2576, 'place_id': 'ChIJO4iKqC8OZ0gRBL4HzjBi7C0' }, 'start_time_local': '2025-03-15T10:00', 'adults': 2, 'children': 2, 'infants': 0, 'currency': 'EUR', 'vehicle_class': 'Economy', 'sort_by': 'Price-Low' });
$context = stream_context_create([ 'http' => [ 'method' => 'POST', 'header' => "Content-Type: application/json\r\naccess-token: YOUR_TOKEN\r\nContent-Type: application/json", 'content' => $data ]]);
$response = file_get_contents('https://apistage.projectexpedition.com/v1/return_transfers', false, $context);$result = json_decode($response, true);curl -X POST \ -H "access-token: {{token}}" \ -H "Content-Type: application/json" \ -d '{ "from": { "type": "cruise port", "title": "Dublin Cruise Port", "id": "IEDUB" }, "to": { "type": "airport", "title": "Dublin Airport", "iata": "DUB" }, "start_time_local": "2025-06-16T09:00", "adults": 2, "currency": "EUR" }' \ "https://apistage.projectexpedition.com/v1/return_transfers"const response = await fetch('https://apistage.projectexpedition.com/v1/return_transfers', { method: 'POST', headers: { 'access-token': 'YOUR_TOKEN', 'Content-Type': 'application/json' }, body: JSON.stringify({ "from": { "type": "cruise port", "title": "Dublin Cruise Port", "id": "IEDUB" }, "to": { "type": "airport", "title": "Dublin Airport", "iata": "DUB" }, "start_time_local": "2025-06-16T09:00", "adults": 2, "currency": "EUR" })});
const data = await response.json();<?php$data = json_encode({ 'from': { 'type': 'cruise port', 'title': 'Dublin Cruise Port', 'id': 'IEDUB' }, 'to': { 'type': 'airport', 'title': 'Dublin Airport', 'iata': 'DUB' }, 'start_time_local': '2025-06-16T09:00', 'adults': 2, 'currency': 'EUR' });
$context = stream_context_create([ 'http' => [ 'method' => 'POST', 'header' => "Content-Type: application/json\r\naccess-token: YOUR_TOKEN\r\nContent-Type: application/json", 'content' => $data ]]);
$response = file_get_contents('https://apistage.projectexpedition.com/v1/return_transfers', false, $context);$result = json_decode($response, true);curl -X POST \ -H "access-token: {{token}}" \ -H "Content-Type: application/json" \ -d '{ "from": { "type": "airport", "title": "Paris Charles de Gaulle Airport", "iata": "CDG" }, "to": { "type": "address", "title": "Hotel du Louvre", "address": "Place Andre Malraux, 75001 Paris, France", "latitude": 48.8613, "longitude": 2.3364 }, "start_time_local": "2025-06-20T14:00", "adults": 2, "children": 0, "infants": 0, "currency": "EUR", "vehicle_class": "Economy", "sort_by": "Price-Low" }' \ "https://apistage.projectexpedition.com/v1/return_transfers"const response = await fetch('https://apistage.projectexpedition.com/v1/return_transfers', { method: 'POST', headers: { 'access-token': 'YOUR_TOKEN', 'Content-Type': 'application/json' }, body: JSON.stringify({ "from": { "type": "airport", "title": "Paris Charles de Gaulle Airport", "iata": "CDG" }, "to": { "type": "address", "title": "Hotel du Louvre", "address": "Place Andre Malraux, 75001 Paris, France", "latitude": 48.8613, "longitude": 2.3364 }, "start_time_local": "2025-06-20T14:00", "adults": 2, "children": 0, "infants": 0, "currency": "EUR", "vehicle_class": "Economy", "sort_by": "Price-Low" })});
const data = await response.json();<?php$data = json_encode({ 'from': { 'type': 'airport', 'title': 'Paris Charles de Gaulle Airport', 'iata': 'CDG' }, 'to': { 'type': 'address', 'title': 'Hotel du Louvre', 'address': 'Place Andre Malraux, 75001 Paris, France', 'latitude': 48.8613, 'longitude': 2.3364 }, 'start_time_local': '2025-06-20T14:00', 'adults': 2, 'children': 0, 'infants': 0, 'currency': 'EUR', 'vehicle_class': 'Economy', 'sort_by': 'Price-Low' });
$context = stream_context_create([ 'http' => [ 'method' => 'POST', 'header' => "Content-Type: application/json\r\naccess-token: YOUR_TOKEN\r\nContent-Type: application/json", 'content' => $data ]]);
$response = file_get_contents('https://apistage.projectexpedition.com/v1/return_transfers', false, $context);$result = json_decode($response, true);Responses
200 Available transfer options
{ "search": "eyJmcm9tIjp7InR5cGUiOiJhaXJwb3J0IiwidGl0bGUiOiJEdWJsaW4gQWlycG9ydCJ9fQ==", "count": 3, "results": [ { "quote_id": "a1b2c3d4e5f6789012345678901234ab", "price": 45, "image": "https://cdn.projectexpedition.com/vehicles/sedan-standard.jpg", "supplier": "Dublin Executive Travel", "vehicle": "Mercedes E-Class or similar", "vehicle_class": "Economy", "currency": "EUR", "price_detail": "Fixed price, no hidden fees", "inclusions": "Meet & greet, flight tracking, 60 min wait time included", "additional_info": "Max 3 passengers, 2 standard bags", "cancellation": "Free cancellation up to 24 hours before pickup" }, { "quote_id": "b2c3d4e5f6789012345678901234abcd", "price": 75, "image": "https://cdn.projectexpedition.com/vehicles/sedan-premium.jpg", "supplier": "Dublin Executive Travel", "vehicle": "Mercedes S-Class or similar", "vehicle_class": "Premium", "currency": "EUR", "price_detail": "Fixed price, no hidden fees", "inclusions": "Meet & greet, flight tracking, 60 min wait time, complimentary water", "additional_info": "Max 3 passengers, 2 standard bags", "cancellation": "Free cancellation up to 24 hours before pickup" } ]}