---
title: "Routes, Schedules and Rates"
method: POST
path: "/search"
---

# Routes, Schedules and Rates

`POST /search`

## Request

- Base URL: `https://api.cargoai.co/solutions`
- URL: `https://api.cargoai.co/solutions/search`
- Auth: API key in header `x-api-key`

This document provides information about request body parameters and headers as well as example requests and responses for different search modes

## Headers

- `x-api-key` string, required
- `x-api-name` string

## Request body

- object
  - `origin` string, required: Origin airport code (or a city code in Search by City Code)
  - `destination` string, required: Destination airport code (or a city code in Search by City Code)
  - `departureDate` string, required: Your earliest desired departure date
  - `shipment` object: Shipment details (required for Quote & Book)
    - `pieces` integer, required: Total number of pieces of your shipment
    - `weight` number, float, required: Total gross weight of your shipment (kg)
    - `volume` number, float, required: Total volume of your shipment (cbm)
    - `dimensions` object[]: Detailed description of the piece groups of your shipment (fake dimensions are calculated if not provided)
      - `pieces` integer, required: number of piece of the piece group
      - `length` number, float, required: indicates length of piece group, in the unit specified by measurementUnit (defaults to cm)
      - `width` number, float, required: indicates width of piece group, in the unit specified by measurementUnit (defaults to cm)
      - `height` number, float, required: indicates height of piece group, in the unit specified by measurementUnit (defaults to cm)
      - `weight` number, float, required: indicates piece group weight (per piece or total, based on weightType field value), in the unit specified by measurementUnit (defaults to kg)
      - `loadType` 'DIMENSIONS' | 'TOTAL' | 'BUP', required: indicates if the shipment information are totals only or with dimensions breakdown
      - `weightType` 'PER_ITEM' | 'TOTAL', required: indicates if piece group weight is total or per piece
      - `stackable` boolean: indicates if shipment can be stack during loading in aircraft. when no dimensions are provided, will be set true to maximize search results
      - `tiltable` boolean: indicates if shipment is turnable during loading in aircraft
      - `toploadable` boolean: indicates if shipment can be loaded on top during loading in aircraft
      - `volume` number, float: volume of the piece group
      - `uldType` 'AKE' | 'LDP' | 'MDP': ULD type of the piece group (can be used in Direct booking) (required if the SHC/the LoadType is "BUP")
    - `chargeableWeight` number, float: Total chargeable weight of your shipment (calculated if not provided) (kg)
    - `measurementUnit` string: Measurement Unit ("METRIC" or "IMPERIAL")
    - `product` string: Product name
    - `globalHS` string[]: Global Harmonized System Codes
    - `europeanHS` string[]: European Harmonized System Codes
    - `scrs` string[]: Special Commodity Rate Codes
    - `specialHandlingCodes` string[]: Special handling codes three letter codes to provide additionnal details about shipment handling
  - `user` object: User details (required for Quote & Book)
    - `email` string: Freight Forwarder's email address (required if no IATA CASS provided)
    - `iata` string: Freight Forwarder's IATA code (required if no email provided)
    - `cass` string: Freight Forwarder's CASS code (required if no email provided)
    - `country` string: Freight Forwarder's country code (required if no email provided)
    - `companyName` string: Freight Forwarder's company name
    - `lastName` string: Freight Forwarder's last name
    - `firstName` string: Freight Forwarder's first name
  - `timeout` integer: Request timeout in seconds
  - `offset` integer: Departure dates in the search result can be up to {offset} days in the future (max value is 5)
  - `id` string: Search Id to add to params before repeating request to get missing results
  - `filters` object: Search filters to refine API results
    - `withRateOnly` boolean: filters results to return only flights with a rate
    - `liveRequests` boolean: filters results to include or exclude Airlines' APIs results
    - `isOriginByCity` boolean: indicates if the origin of your search is a city code or an airport code (only true if isDestinationByCity is false)
    - `isDestinationByCity` boolean: indicates if the destination of your search is a city code or an airport code (only true if isOriginByCity is false)

## Response `200`

200

- union
  - object
    - `id` string
    - `status` string
    - `resultsURL` string
    - `flights` object[]
      - `flightUUID` string
      - `airlineCode` string
      - `flightNumber` string
      - `arrivalTime` string
      - `arrivalAirport` string
      - `departureTime` string
      - `departureAirport` string
      - `latestAcceptanceTime` string
      - `timeOfAvailability` string
      - `legs` object[]
        - `flightNumber` string
        - `arrivalTime` string
        - `arrivalAirport` string
        - `departureTime` string
        - `departureAirport` string
        - `bodyType` string
        - `aircraftCode` string
        - `co2` object
          - `value` number
          - `estimation` boolean
      - `features` object
        - `bookable` boolean
        - `awbOptional` boolean
      - `rates` object[]
        - `id` string
        - `name` string
        - `type` string
        - `currency` string
        - `netRate` number
        - `allInRate` number
        - `total` number
        - `minimumRate` boolean
        - `lastUpdatedDate` string
        - `charges` object[]
          - `label` string
          - `rate` number
          - `type` string
          - `code` string
          - `minAmount` integer
          - `maxAmount` integer
        - `ocdc` object[]
        - `isSpotQuoteRate` boolean
        - `handlingCodes` string[]
        - `bookingURL` string
      - `available` boolean
      - `awbPrefixes` string[]
      - `airlineConditions` string
      - `handlingInfoLink` string
      - `ghaName` string
      - `hle` string
      - `ghaAddress` string
    - `metadata` object
      - `searchErrors` object[]
        - `error` string
        - `airlines` string[]
  - object
    - `id` string
    - `status` string
    - `resultsURL` string
    - `flights` object[]
      - `flightUUID` string
      - `airlineCode` string
      - `flightNumber` string
      - `arrivalTime` string
      - `arrivalAirport` string
      - `departureTime` string
      - `departureAirport` string
      - `latestAcceptanceTime` string
      - `timeOfAvailability` string
      - `stops` integer
      - `legs` object[]
        - `flightNumber` string
        - `arrivalTime` string
        - `arrivalAirport` string
        - `departureTime` string
        - `departureAirport` string
        - `bodyType` string
        - `aircraftCode` string
        - `co2` object
          - `value` number
          - `estimation` boolean
      - `features` object
        - `bookable` boolean
        - `awbOptional` boolean
      - `rates` object[]
        - `id` string
        - `name` string
        - `type` string
        - `currency` string
        - `netRate` number
        - `allInRate` number
        - `total` integer
        - `minimumRate` boolean
        - `lastUpdatedDate` string
        - `charges` unknown
        - `ocdc` unknown
        - `latestAcceptanceTime` string
        - `timeOfAvailability` string
        - `handlingCodes` unknown
        - `bookingURL` string
      - `available` boolean
      - `ghaAddress` string
  - object
    - `id` string
    - `status` string
    - `flights` object[]
      - `flightUUID` string
      - `airlineCode` string
      - `flightNumber` string
      - `arrivalTime` string
      - `arrivalAirport` string
      - `departureTime` string
      - `departureAirport` string
      - `latestAcceptanceTime` string
      - `timeOfAvailability` string
      - `legs` object[]
        - `flightNumber` string
        - `arrivalTime` string
        - `arrivalAirport` string
        - `departureTime` string
        - `departureAirport` string
        - `bodyType` string
        - `aircraftCode` string
        - `co2` object
          - `value` number
          - `estimation` boolean
      - `features` object
      - `available` boolean

## Other responses

- `202`: 202
- `400`: 400
- `403`: 403
- `502`: 502

## Changes

- **2026-11-03** `dfd7950d43d7`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/cargoai/apis/solutions/changes/search/post.md)

---

[API](https://skmtc.dev/cargoai/apis/solutions.md) - [All operations](https://skmtc.dev/cargoai/apis/solutions/llms.txt) - [OpenAPI document](https://skmtc.dev/cargoai/apis/solutions/revisions/dfd7950d43d7?raw)
