Get voyage options between locations

GET /route-optimizer/api/external

Retrieves multimodal transport routes between specified origin and destination points.
⚠️ This API is only accessible after explicit access has been granted. If you wish to gain access, please contact us at support@routescanner.com.

Query parameters

  • origin string Required

    Starting location identifier (e.g., locode, terminal UUID, or lat,lng coordinates)

  • originType string Required

    Type of origin location ('LOCODE', 'TERMINAL', 'GEO')

  • destination string Required

    Ending location identifier (e.g., locode, terminal UUID, or lat,lng coordinates)

  • destinationType string Required

    Type of destination location ('LOCODE', 'TERMINAL', 'GEO')

  • modalities array[string]

    Transport modes to include in route options. If not specified, all modes will be considered

    Values are DEEPSEA, SHORTSEA, BARGE, RAIL, or TRUCK.

  • minDeparture string(date)

    Earliest acceptable departure date for the first leg of the journey

  • maxDeparture string(date)

    Latest acceptable departure date for the first leg of the journey

  • maxArrival string(date)

    Latest acceptable arrival date at the final destination

  • maxTransfers integer(int32)

    Maximum number of transfers allowed in the route

  • List of operators that must ALL be included in the route options

  • List of operators where at least ONE must be included in the route options

  • excludedOperators array[string]

    List of operators to explicitly exclude from route options

  • anyRequiredLocodes array[string]

    UN/LOCODE locations where at least ONE must be included in the route

  • allRequiredLocodes array[string]

    UN/LOCODE locations that must ALL be included in the route

  • excludedLocodes array[string]

    UN/LOCODE locations to explicitly exclude from route options

  • Maximum distance in kilometers allowed for initial trucking segment from origin to first terminal

  • Maximum distance in kilometers allowed for final trucking segment from last terminal to destination

  • sort string

    Sorting criteria for results ('EMISSION_CO2', 'DURATION')

  • When true, only return routes with direct sea connections without transshipments between sea legs

  • maxEmission integer(int64)

    Maximum total CO2e emissions in kilograms allowed for the entire route

  • maxLeadTime string(ISO-8601 duration)

    Maximum total transit time allowed for the journey in ISO-8601 duration format (e.g., 'P5D' for 5 days)

Responses

GET /route-optimizer/api/external
curl \
 --request GET 'https://connect.routescanner.com/route-optimizer/api/external?origin=string&originType=string&destination=string&destinationType=string'
Response examples (200)
{
  "results": [
    {
      "id": "string",
      "leadTimeInMinutes": 42,
      "latestDropOff": "2025-05-04T09:42:00Z",
      "earliestPickup": "2025-05-04T09:42:00Z",
      "emissionsInKgCo2e": 42,
      "transfers": 42,
      "transferEmissionsInKgCo2e": 42,
      "truckToOriginInMeters": 42,
      "truckToDestinationInMeters": 42,
      "legs": [
        {
          "origin": "string",
          "originTerminals": [
            {
              "id": "string",
              "name": "string"
            }
          ],
          "destination": "string",
          "destinationTerminals": [
            {
              "id": "string",
              "name": "string"
            }
          ],
          "modality": "string",
          "operators": [
            {
              "id": "string",
              "name": "string",
              "scac": "string",
              "serviceCodes": [
                "string"
              ],
              "collaboratingOperators": [
                {
                  "id": "string",
                  "name": "string",
                  "scac": "string"
                }
              ]
            }
          ],
          "departureDate": "2025-05-04T09:42:00Z",
          "arrivalDate": "2025-05-04T09:42:00Z",
          "distanceInMeters": 42,
          "emissionsInKgCo2e": 42,
          "vessel": {
            "name": "string",
            "imo": "string",
            "mmsi": "string"
          }
        }
      ]
    }
  ]
}