Flight Services

A FlightService cannot yet be booked via the API and has no underlying product.

XML Schema:

GET: get-flight-service

Fields

Name Type Description
id read-only String  
href read-only Field  
name read-only String The name of this service.
status String

The current status of the service:

  • Option: The service is being held on option until the option_expiry_date. No deposit or payment is required to hold an option. Options cannot be held on departures with flags NO_OPTIONS. An Option service can be Expired or Confirmed.
  • On Request: The service has been requested by the client, but the request has not been sent to the local office. All departures with availability status REQUEST_SPACE can not be put on Option, but must be requested. Full payment is required. An On Request service can be Expired with no cancellation fees applied.
  • Request Confirmation: The service has been requested by the client, and the request has been sent by G Adventures to the local office. A Request Confirmation service can be Cancelled with cancellation fees applied.
  • Confirmed: The service is confirmed. Deposit is always required to confirm, and full payment will be required for a departure where FULL_PAYMENT_REQUIRED_TO_BOOK is present in the flags field. A Confirmed service can be Cancelled with cancellation fees applied.
  • Waitlisted: The service is in a waitlist queue. A cancellation on the product will cause the service to automatically be moved to Option. Only product with availability status WAIT_LIST can be Waitlisted. A Waitlisted service can be Cancelled with no cancellation fees applied.
  • Expired: The service is expired. An Option or On Request service is Expired at midnight EST when it reaches its option_expiry_date. A Waitlisted service can be Expired at any time, but will automatically be Expired when a departure reaches availability status REQUEST_SPACE. No cancellation fees will be applied.
  • Request Cancellation: The service has been requested to be Cancelled. Cancellation fees will be applied when it is Cancelld by G Adventures staff (if applicable).
  • Cancelled: The service is cancelled. A Request Confirmation or Confirmed service can be cancelled with cancellation fees applied.

Active service status transitions:

  • Option –> Confirmed/Expired
  • On Request –> Request Confirmation/Expired
  • Request Confirmation –> Request Cancellation
  • Confirmed –> Request Cancellation
  • Waitlisted –> Expired
status_transitions read-only List A list of status values to which this service can transition.
type read-only String The type of this resource.
sub_type read-only String A brief description of the service type.
start_date read-only Date The start date of the service.
finish_date read-only Date The finish date of the service.
customers Field  
  • id read-only
String  
  • href read-only
Field  
  • name
Nested Object  
    • legal_first_name required
String Legal first name as it appears on a passport.
    • legal_middle_name
String Legal middle name as it appears on a passport.
    • legal_last_name required
String Legal last name as it appears on a passport.
    • common_name
String The name this person likes to be called if different from their legal name.
    • title required
String The title. Valid values are: Mr, Mrs, Ms, and Miss
date_created read-only Datetime The date this service had its service status set to Confirmed, in the standard dates-time.
date_confirmed read-only Datetime The date this service had its service status set to Confirmed, in the standard dates-time.
date_cancelled read-only Datetime The date this service had its service status set to Cancelled, in the standard dates-time.
option_expiry_date read-only Datetime The date/time at which an Option service status will automatically be set to Expired, in the standard dates-time.
purchase_price read-only Decimal The currency-specific purchase price this service was Confirmed at, in the standard currencies. The price is not locked until the service has its service status set to Confirmed (i.e. the price could change when the service status is on Option).
applied_promotion Nested Object  
  • id read-only
String  
  • href read-only
Field  
  • name
String The name of the promotion used.
  • promotion_code
String A unique code for this promotion.
  • discount_amount
Decimal The currency-specific amount that has been discounted from the purchase_price. Add the discount_amount and purchase_price to see the original non-discounted price.
  • commission_rate
Integer The commission rate for this promotion.
  • terms_and_conditions
String The promotion applied to this service.
flags read-only List

A list of codes that, when present, require special considerations for a booked service.

The list of departure service flags related to the current status af a request to hike the Inca Trail, or the option booked for services on these special departures:

  • ON_INCA_TRAIL: Inca Trail permits have been obtained for all travellers on this service.
  • REQUESTING_INCA_TRAIL: A request to hike the Inca Trail has been submitted. The permits have not yet been obtained for travellers on this service.
  • ON_LARES_TREK: All travellers on this service will be hiking the Lares Trek as the Inca Trail is not available.
  • CUZCO_STAY: All travellers on this service will stay in Cuzco, as either they have chosen this option or the Inca Trail permits are not available for this departure.
  • INCA_TRAIL_UNKNOWN: A request to the local office has been made to confirm availability and additional local intricacies. This is an intermediary state which can occur before REQUESTING_INCA_TRAIL and any of the other states.
booking read-only Nested Object  
documents read-only Field  
  • id read-only
String  
  • href read-only
Field  
  • date_created required
Datetime The time when the resource was created, in the standard dates-time.
  • type read-only
String The document type, currently: INVOICE, ATOL_CERTIFICATE, VOUCHER.
  • audience read-only
String The intended audience of this document. Either AGENT or CUSTOMER.
  • booking read-only
Nested Object The related booking resource.
  • mime_type read-only
String The Internet media type.
declined_reason read-only Nested Object The related declined reason resource.
record_locator required String The record locator for this flight service.
itinerary_url required String A link to detailed information about the flight itinerary.
segments required Field  
  • id read-only
String  
  • href read-only
Field  
  • airline_record_locator required
String Record Locator for this specific segment
  • flight_number required
String The flight number of the segment.
  • booking_class required
String A brief description of the airfare booking class.
  • departure_date required
Datetime The local departure date/tiome of the segment.
  • arrival_date required
Datetime The local arrival date/time of the segment.
  • airline required
Nested Object The airline for this segment.
  • origin_airport required
Nested Object The departure airport for this segment.
    • code required
String The departure airport code, using the standard International Air Transport Association (IATA) airport codes.
    • name required
String The departure airport name.
  • destination_airport required
Nested Object The arrival airport for this segment.
    • code required
String The departure airport code, using the standard International Air Transport Association (IATA) airport codes.
    • name required
String The departure airport name.
  • technical_stops required
Field Each segment represents a portion of an airfare itinerary, usually a flight between two cities.
    • departure_date required
Datetime The local departure date/time of the segment, in the standard dates-time.
    • arrival_date required
Datetime The local arriva date/time of the segment, in the standard dates-time.
    • equipment required
String The model number of the airplane used.
    • origin_airport required
Nested Object The departure airport for this segment.
      • code required
String The departure airport code, using the standard International Air Transport Association (IATA) airport codes.
      • name required
String The departure airport name.
    • destination_airport required
Nested Object The arrival airport for this segment.
      • code required
String The departure airport code, using the standard International Air Transport Association (IATA) airport codes.
      • name required
String The departure airport name.
associated_services required List  
flight_status read-only Nested Object  

Get a Flight Service

GET /flight_services/(string: service_id)/

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

{
    'applied_promotion': null,
    'booking': {
        'href': 'https://rest.gadventures.com/bookings/123456',
        'id': '123456'
    },
    'commission': null,
    'customers': [
        {
            'href': 'https://rest.gadventures.com/customers/123',
            'id': '123',
            'name': {
                'common_name': null,
                'legal_first_name': 'Diego',
                'legal_last_name': 'Maradona',
                'legal_middle_name': '',
                'title': 'Mr'
            }
        }
    ],
    'date_cancelled': null,
    'date_confirmed': '2014-11-12T05:00:00Z',
    'date_created': '2014-11-12T05:00:00Z',
    'documents': [],
    'finish_date': '2014-12-13',
    'flags': [],
    'href': 'https://rest.gadventures.com/flight_services/f81604',
    'id': 'f81604',
    'itinerary_url': 'https://www.checkmytrip.com/cmtservlet?R=ABC123&L=GB&N=Maradona',
    'name': 'Miami to Bangkok',
    'option_expiry_date': null,
    'purchase_price': '1470.40',
    'record_locator': 'ABC123',
    'segments': [
        {
            'airline': {
                'code': 'AA',
                'name': 'American Airlines'
            },
            'arrival_date': '2014-11-12T16:15:00',
            'booking_class': 'N',
            'departure_date': '2014-11-11T07:15:00',
            'destination_airport': {
                'code': 'NRT',
                'name': 'Tokyo Airport (Narita International Airport)'
            },
            'flight_number': '61',
            'origin_airport': {
                'code': 'MIA',
                'name': 'Miami Airport'
            },
            'technical_stops': [
                {
                    'arrival_date': '2014-11-11T09:34:00',
                    'departure_date': '2014-11-11T07:15:00',
                    'destination_airport': {
                        'code': 'DFW',
                        'name': 'Dallas Airport'
                    },
                    'equipment': '32B',
                    'origin_airport': {
                        'code': 'MIA',
                        'name': 'Miami Airport'
                    }
                },
                {
                    'arrival_date': '2014-11-12T16:15:00',
                    'departure_date': '2014-11-11T11:25:00',
                    'destination_airport': {
                        'code': 'NRT',
                        'name': 'Tokyo Airport (Narita International Airport)'
                    },
                    'equipment': '777',
                    'origin_airport': {
                        'code': 'DFW',
                        'name': 'Dallas Airport'
                    }
                }
            ]
        },
        {
            'airline': {
                'code': 'AA',
                'name': 'American Airlines'
            },
            'arrival_date': '2014-11-12T23:15:00',
            'booking_class': 'S',
            'departure_date': '2014-11-12T18:05:00',
            'destination_airport': {
                'code': 'BKK',
                'name': 'Bangkok Airport'
            },
            'flight_number': '8411',
            'origin_airport': {
                'code': 'NRT',
                'name': 'Tokyo Airport (Narita International Airport)'
            },
            'technical_stops': []
        },
        {
            'airline': {
                'code': 'AA',
                'name': 'American Airlines'
            },
            'arrival_date': '2014-12-13T16:05:00',
            'booking_class': 'Q',
            'departure_date': '2014-12-13T08:15:00',
            'destination_airport': {
                'code': 'NRT',
                'name': 'Tokyo Airport (Narita International Airport)'
            },
            'flight_number': '8412',
            'origin_airport': {
                'code': 'BKK',
                'name': 'Bangkok Airport'
            },
            'technical_stops': []
        },
        {
            'airline': {
                'code': 'AA',
                'name': 'American Airlines'
            },
            'arrival_date': '2014-12-13T10:10:00',
            'booking_class': 'Q',
            'departure_date': '2014-12-13T17:05:00',
            'destination_airport': {
                'code': 'LAX',
                'name': 'Los Angeles Airport'
            },
            'flight_number': '170',
            'origin_airport': {
                'code': 'NRT',
                'name': 'Tokyo Airport (Narita International Airport)'
            },
            'technical_stops': []
        },
        {
            'airline': {
                'code': 'AA',
                'name': 'American Airlines'
            },
            'arrival_date': '2014-12-13T20:35:00',
            'booking_class': 'V',
            'departure_date': '2014-12-13T12:50:00',
            'destination_airport': {
                'code': 'MIA',
                'name': 'Miami Airport'
            },
            'flight_number': '124',
            'origin_airport': {
                'code': 'LAX',
                'name': 'Los Angeles Airport'
            },
            'technical_stops': []
        }
    ]
}