GET
/
service
/
list
{
  "data": [
    {
      "serviceId": "<string>",
      "serviceType": "BAGGAGE",
      "name": "<string>",
      "description": "<string>",
      "price": {
        "totalAmount": "<string>",
        "currencyCode": "<string>"
      },
      "seat": {
        "row": "<string>",
        "column": "<string>",
        "characteristics": [
          "WINDOW"
        ],
        "available": true,
        "price": {
          "totalAmount": "<string>",
          "currencyCode": "<string>"
        }
      },
      "baggage": {
        "type": "CHECKED",
        "weight": {
          "value": 123,
          "unit": "KG"
        },
        "price": {
          "totalAmount": "<string>",
          "currencyCode": "<string>"
        }
      },
      "meal": {
        "code": "<string>",
        "name": "<string>",
        "description": "<string>",
        "price": {
          "totalAmount": "<string>",
          "currencyCode": "<string>"
        }
      }
    }
  ]
}

Services

Manage flight-related services using NDC 24.4 standards.

Request Format

GET https://engine-api.travelese.ai/service/list

Response Format

The endpoint returns a JSON response with the following structure:

{
  "success": true,
  "requestId": "req_123",
  "data": [
    {
      "serviceId": "SRV123",
      "serviceType": "SEAT",
      "name": "Extra Legroom Seat",
      "description": "Seat with extra legroom in exit row",
      "price": {
        "totalAmount": "50.00",
        "currencyCode": "USD"
      },
      "seat": {
        "row": "20",
        "column": "A",
        "characteristics": ["WINDOW", "EXIT_ROW", "EXTRA_LEGROOM"],
        "available": true
      }
    },
    {
      "serviceId": "SRV124",
      "serviceType": "BAGGAGE",
      "name": "Extra Checked Bag",
      "description": "Additional checked baggage allowance",
      "price": {
        "totalAmount": "60.00",
        "currencyCode": "USD"
      },
      "baggage": {
        "type": "CHECKED",
        "weight": {
          "value": 23,
          "unit": "KG"
        }
      }
    }
  ]
}

Error Response

{
  "success": false,
  "requestId": "req_123",
  "error": {
    "code": "invalid_request",
    "message": "Detailed error message"
  }
}

Example Request

curl "https://engine-api.travelese.ai/service/list?orderId=ORD123456&provider=amadeus" \
  -H "Authorization: Bearer your-api-key"

Usage

Use this endpoint to:

  • List available services for a flight
  • Add services to an order
  • Remove services from an order
  • View seat maps and baggage options

List Services

List available services for a flight order.

Endpoint

GET /service/list

Query Parameters

  • provider (required): Provider to list services from (amadeus, duffel, any)
  • orderId (required): Order ID to list services for
  • serviceType (optional): Filter by service type
  • flightReference (optional): Filter by flight reference
  • passengerReference (optional): Filter by passenger reference

Service Types

  • BAGGAGE: Checked and carry-on baggage
  • SEAT: Seat selection
  • MEAL: In-flight meals
  • PET: Pet transportation
  • LOUNGE: Airport lounge access
  • WIFI: In-flight Wi-Fi
  • ENTERTAINMENT: In-flight entertainment
  • FAST_TRACK: Fast track security/immigration
  • PRIORITY_BOARDING: Priority boarding
  • INSURANCE: Travel insurance
  • TRANSPORTATION: Ground transportation
  • UNACCOMPANIED_MINOR: Unaccompanied minor service
  • SPORTS_EQUIPMENT: Sports equipment handling
  • OTHER: Other services

Response

{
  "success": true,
  "requestId": "req_123",
  "data": [
    {
      "serviceId": "SRV123",
      "serviceType": "SEAT",
      "name": "Extra Legroom Seat",
      "description": "Seat with extra legroom in exit row",
      "price": {
        "totalAmount": "50.00",
        "currencyCode": "USD"
      },
      "seat": {
        "row": "20",
        "column": "A",
        "characteristics": ["WINDOW", "EXIT_ROW", "EXTRA_LEGROOM"],
        "available": true
      }
    },
    {
      "serviceId": "SRV124",
      "serviceType": "BAGGAGE",
      "name": "Extra Checked Bag",
      "description": "Additional checked baggage allowance",
      "price": {
        "totalAmount": "60.00",
        "currencyCode": "USD"
      },
      "baggage": {
        "type": "CHECKED",
        "weight": {
          "value": 23,
          "unit": "KG"
        }
      }
    },
    {
      "serviceId": "SRV125",
      "serviceType": "MEAL",
      "name": "Premium Meal",
      "description": "Gourmet in-flight meal",
      "price": {
        "totalAmount": "25.00",
        "currencyCode": "USD"
      },
      "meal": {
        "code": "GFML",
        "name": "Gluten-free Meal",
        "description": "Specially prepared gluten-free meal"
      }
    }
  ]
}

Add Service

Add a service to an existing order.

Endpoint

POST /service/add

Request Body

{
  "provider": "AMADEUS",
  "orderId": "ORD123456",
  "serviceId": "SRV123",
  "passengers": ["PAX1"],
  "segments": ["SEG1"],
  "payment": {
    "method": "CREDIT_CARD",
    "amount": {
      "value": "50.00",
      "currencyCode": "USD"
    },
    "card": {
      "cardNumber": "4111111111111111",
      "cardHolderName": "John Doe",
      "expiryMonth": "12",
      "expiryYear": "2025",
      "cvv": "123"
    }
  }
}

Response

{
  "success": true,
  "requestId": "req_123",
  "data": {
    "serviceOrderId": "SVO123456",
    "orderId": "ORD123456",
    "serviceId": "SRV123",
    "serviceType": "SEAT",
    "status": "CONFIRMED",
    "price": {
      "totalAmount": "50.00",
      "currencyCode": "USD"
    },
    "passengers": ["PAX1"],
    "segments": ["SEG1"]
  }
}

Remove Service

Remove a service from an order.

Endpoint

POST /service/remove

Request Body

{
  "provider": "AMADEUS",
  "serviceOrderId": "SVO123456"
}

Response

{
  "success": true,
  "requestId": "req_123",
  "data": {
    "serviceOrderId": "SVO123456",
    "status": "CANCELLED",
    "refundAmount": {
      "amount": "50.00",
      "currencyCode": "USD"
    }
  }
}

Seat Map

Retrieve the seat map for a flight.

Endpoint

GET /service/seatmap

Query Parameters

  • provider (required): Provider to get the seat map from
  • orderId (required): Order ID
  • segmentId (required): Flight segment ID

Response

{
  "success": true,
  "requestId": "req_123",
  "data": {
    "aircraft": {
      "code": "789",
      "name": "Boeing 787-9"
    },
    "cabins": [
      {
        "code": "Y",
        "name": "Economy",
        "deck": 1,
        "rows": [
          {
            "number": "20",
            "seats": [
              {
                "row": "20",
                "column": "A",
                "characteristics": ["WINDOW", "EXIT_ROW"],
                "available": true,
                "price": {
                  "totalAmount": "50.00",
                  "currencyCode": "USD"
                }
              }
            ]
          }
        ]
      }
    ]
  }
}

Provider Support

The Services API supports multiple providers:

  • Amadeus: Full-service carriers and GDS inventory
  • Duffel: Direct airline connections and NDC content

All responses are normalized to follow NDC 24.4 standards.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Query Parameters

provider
enum<string>
required
Available options:
amadeus,
duffel,
any
Example:

"any"

orderId
string
required
Example:

"ORD123456"

serviceType
enum<string>

Service type (NDC: ServiceType)

Available options:
BAGGAGE,
SEAT,
MEAL,
PET,
LOUNGE,
WIFI,
ENTERTAINMENT,
FAST_TRACK,
PRIORITY_BOARDING,
INSURANCE,
TRANSPORTATION,
UNACCOMPANIED_MINOR,
SPORTS_EQUIPMENT,
OTHER
Example:

"SEAT"

flightReference
string
Example:

"ITEM-1"

passengerReference
string
Example:

"PAX-1"

Response

200
application/json
Services listed successfully
data
object[]
required

Service information (NDC: Service)

Was this page helpful?