Round-Trip Flight Search

Search for round-trip flights. Includes outbound and return flight options with combined pricing.

Endpoint

GET /api/google-flights.round-trip

Generate Code with AI

Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.

Parameters

origin string Required

Origin airport IATA code

destination string Required

Destination airport IATA code

departure_date string Required

Departure date in Y-m-d format

return_date string Required

Return date in Y-m-d format

adults integer Optional

Number of adult passengers (1-9)

children integer Optional

Number of child passengers (0-9)

infants_in_seat integer Optional

Number of infants in seat (0-9)

infants_on_lap integer Optional

Number of infants on lap (0-9)

cabin_class string Optional

Cabin class: economy, premium_economy, business, first

max_stops string Optional

Maximum stops: any, nonstop, one_or_fewer, two_or_fewer

sort_by string Optional

Sort results by: top_flights, cheapest, departure_time, arrival_time, duration

airlines array Optional

Filter by airline IATA codes

Request Examples

<?php

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'https://scrappa.co/api/google-flights.round-trip?origin=JFK&destination=LAX&departure_date=2025-06-15&return_date=2025-06-22');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'x-api-key: YOUR_API_KEY_HERE',
]);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
<?php

use Illuminate\Support\Facades\Http;

$response = Http::withHeaders([
    'x-api-key' => 'YOUR_API_KEY_HERE',
])->get('https://scrappa.co/api/google-flights.round-trip?origin=JFK&destination=LAX&departure_date=2025-06-15&return_date=2025-06-22');

return $response->json();
fetch('https://scrappa.co/api/google-flights.round-trip?origin=JFK&destination=LAX&departure_date=2025-06-15&return_date=2025-06-22', {
  headers: {
    'x-api-key': 'YOUR_API_KEY_HERE'
  }
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));
const axios = require('axios');

axios.get('https://scrappa.co/api/google-flights.round-trip?origin=JFK&destination=LAX&departure_date=2025-06-15&return_date=2025-06-22', {
  headers: {
    'x-api-key': 'YOUR_API_KEY_HERE'
  }
})
  .then(response => console.log(response.data))
  .catch(error => console.error('Error:', error));
import requests

headers = {
    'x-api-key': 'YOUR_API_KEY_HERE'
}

response = requests.get('https://scrappa.co/api/google-flights.round-trip?origin=JFK&destination=LAX&departure_date=2025-06-15&return_date=2025-06-22', headers=headers)
print(response.json())
require 'net/http'
require 'uri'
require 'json'

uri = URI.parse('https://scrappa.co/api/google-flights.round-trip?origin=JFK&destination=LAX&departure_date=2025-06-15&return_date=2025-06-22')
request = Net::HTTP::Get.new(uri)
request['x-api-key'] = 'YOUR_API_KEY_HERE'

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(request)
end

puts JSON.parse(response.body)
package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
)

func main() {
    client := &http.Client{}
    req, _ := http.NewRequest("GET", "https://scrappa.co/api/google-flights.round-trip?origin=JFK&destination=LAX&departure_date=2025-06-15&return_date=2025-06-22", nil)
    req.Header.Set("x-api-key", "YOUR_API_KEY_HERE")

    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := ioutil.ReadAll(resp.Body)
    fmt.Println(string(body))
}
curl -X GET 'https://scrappa.co/api/google-flights.round-trip?origin=JFK&destination=LAX&departure_date=2025-06-15&return_date=2025-06-22' \
  -H 'x-api-key: YOUR_API_KEY_HERE'

Response Schema

JSON Response 200 OK
{
    "flights": [],
    "search_metadata": []
}

Try It Live

Test this endpoint in our interactive playground with real data.

Open in Playground