Kuehne+Nagel ShipmentTracking API

Find and show details of the customer's shipments, with contents reflecting the visibility configured in myKN. Search shipments, load a single shipment by unique reference, and read history records. Read-only polling; no webhook or callback is published.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/shipment-tracking"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

kuehne-nagel-shipment-tracking-v2-openapi.json Raw ↑
{
  "openapi" : "3.0.1",
  "info" : {
    "title" : "ShipmentTracking",
    "description" : "Receive detailed information for one shipment per unique key (ID or tracking number),\nfind one or more shipments per other not-necessarily unique key reference (esp. customer\nreference) or filter all shipments by reference, mode of transport, stage or time frame.\n",
    "contact" : {
      "name" : "API Support",
      "url" : "https://home.kuehne-nagel.com/en/service-request-api?lead_topic=api-portal-integration"
    },
    "version" : "v2",
    "x-api-version" : "2.5.0",
    "x-api-id" : "4c199d23-391d-41d2-90fe-7224d75575cc",
    "x-api-guideline-version" : "1.11.6"
  },
  "servers" : [ {
    "url" : "https://internal.api.kuehne-nagel.com/track-trace/shipment/v2"
  } ],
  "security" : [ {
    "default" : [ ]
  }, {
    "api_key" : [ ]
  } ],
  "paths" : {
    "/shipments" : {
      "get" : {
        "tags" : [ "shipment" ],
        "description" : "Retrieve a list of shipments for the given customer reference (exact match required).",
        "operationId" : "loadShipmentsForCustomerReference",
        "parameters" : [ {
          "$ref" : "#/components/parameters/customerReferenceParameter"
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ShipmentSearchResponse"
                }
              }
            }
          },
          "default" : {
            "$ref" : "#/components/responses/default"
          }
        },
        "security" : [ {
          "default" : [ ]
        }, {
          "api_key" : [ ]
        } ],
        "x-auth-type" : "Application & Application User",
        "x-throttling-tier" : "50KPerMin"
      }
    },
    "/shipments-search" : {
      "post" : {
        "tags" : [ "shipment" ],
        "description" : "Search for shipments with optional filters. Supports pagination via the request body. Returns shipments ordered by creation date descending.",
        "operationId" : "searchShipments",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ShipmentSearchRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ShipmentSearchResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request. Possible reasons - unknown date filter type, or invalid date format (expected YYYY-MM-DD).",
            "content" : {
              "application/problem+json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Problem"
                }
              }
            }
          },
          "422" : {
            "description" : "Unprocessable entity. The request is well-formed but violates business rules. Possible reasons - date filter present but neither 'from' nor 'to' specified.",
            "content" : {
              "application/problem+json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Problem"
                }
              }
            }
          },
          "default" : {
            "$ref" : "#/components/responses/default"
          }
        },
        "security" : [ {
          "default" : [ ]
        }, {
          "api_key" : [ ]
        } ],
        "x-auth-type" : "Application & Application User",
        "x-throttling-tier" : "50KPerMin"
      }
    },
    "/shipments/{shipmentId}/history-records" : {
      "get" : {
        "tags" : [ "shipment" ],
        "description" : "Retrieve the milestone change history for a shipment, ordered by update time descending.",
        "operationId" : "loadShipmentHistory",
        "parameters" : [ {
          "name" : "shipmentId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "$ref" : "#/components/schemas/ShipmentId"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ShipmentHistory"
                }
              }
            }
          },
          "default" : {
            "$ref" : "#/components/responses/default"
          }
        },
        "security" : [ {
          "default" : [ ]
        }, {
          "api_key" : [ ]
        } ],
        "x-auth-type" : "Application & Application User",
        "x-throttling-tier" : "50KPerMin"
      }
    },
    "/shipments/{uniqueShipmentReference}" : {
      "get" : {
        "tags" : [ "shipment" ],
        "description" : "Retrieve a specific shipment with an unique reference like shipmentId or trackingNumber.",
        "operationId" : "loadShipmentForUniqueReference",
        "parameters" : [ {
          "$ref" : "#/components/parameters/uniqueShipmentReferenceParameter"
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TrackingResponse"
                }
              }
            }
          },
          "default" : {
            "$ref" : "#/components/responses/default"
          }
        },
        "security" : [ {
          "default" : [ ]
        }, {
          "api_key" : [ ]
        } ],
        "x-auth-type" : "Application & Application User",
        "x-throttling-tier" : "50KPerMin"
      }
    }
  },
  "components" : {
    "schemas" : {
      "Address" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "array",
            "description" : "Names of the address",
            "example" : [ "Company abc", "Division A" ],
            "items" : {
              "type" : "string"
            }
          },
          "street" : {
            "type" : "array",
            "description" : "Street names of the address",
            "example" : [ "Mainstreet 10", "Building ABC" ],
            "items" : {
              "type" : "string"
            }
          },
          "city" : {
            "type" : "array",
            "description" : "City names of the address",
            "example" : [ "New Town", "District Old Town" ],
            "items" : {
              "type" : "string"
            }
          },
          "zipCode" : {
            "type" : "string",
            "description" : "Zip code of the address in country-specific formats",
            "example" : "21640"
          },
          "state" : {
            "$ref" : "#/components/schemas/State"
          },
          "countryCode" : {
            "type" : "string",
            "description" : "This is the country code. E.g. DE for Germany",
            "format" : "iso-3166-alpha-2",
            "example" : "DK"
          },
          "countryName" : {
            "type" : "string",
            "description" : "Country name of the address",
            "example" : "Denmark"
          },
          "postOfficeBox" : {
            "type" : "string",
            "description" : "Post office box of the address",
            "example" : "342353"
          },
          "printAddress" : {
            "type" : "array",
            "description" : "The address for printing and displaying",
            "example" : [ "Company abc", "Mainstreet 10", "21640 New Town", "Denmark" ],
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "BlueAnchorLineInformation" : {
        "type" : "object",
        "properties" : {
          "balDocumentType" : {
            "type" : "string",
            "description" : "Type of the Blue Anchor Line document",
            "example" : "BAL"
          },
          "balScacCode" : {
            "type" : "string",
            "description" : "Blue Anchor Line SCAC code",
            "example" : "BANQ"
          },
          "balBlNumbers" : {
            "type" : "array",
            "description" : "Bill of lading numbers",
            "example" : [ "EC112222222", "12222222", "112222222EC" ],
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "BusinessSolution" : {
        "type" : "object",
        "properties" : {
          "code" : {
            "type" : "string",
            "example" : "CRT"
          },
          "name" : {
            "type" : "string",
            "example" : "Aerospace Critical"
          }
        },
        "description" : "Shows the booked products"
      },
      "CargoInfo" : {
        "type" : "object",
        "properties" : {
          "chargeableWeight" : {
            "$ref" : "#/components/schemas/Weight"
          },
          "numberOfPackages" : {
            "$ref" : "#/components/schemas/NumberOfPackages"
          },
          "shipmentDescriptionOfGoods" : {
            "type" : "array",
            "description" : "Description of goods at shipment level (from cargo totals only)",
            "items" : {
              "type" : "string"
            }
          },
          "marksAndNumbers" : {
            "maxItems" : 10000,
            "type" : "array",
            "description" : "Container specific marks and numbers Deprecated: use cargoItems[].marksAndNumbers instead\n",
            "example" : [ "mark", "number" ],
            "deprecated" : true,
            "items" : {
              "type" : "string"
            }
          },
          "cargoItems" : {
            "maxItems" : 10000,
            "type" : "array",
            "description" : "Individual cargo items with dimensions and descriptions",
            "items" : {
              "$ref" : "#/components/schemas/CargoItem"
            }
          }
        }
      },
      "CargoItem" : {
        "type" : "object",
        "properties" : {
          "quantity" : {
            "$ref" : "#/components/schemas/Quantity"
          },
          "weight" : {
            "$ref" : "#/components/schemas/Weight"
          },
          "volume" : {
            "$ref" : "#/components/schemas/Volume"
          },
          "length" : {
            "$ref" : "#/components/schemas/Length"
          },
          "width" : {
            "$ref" : "#/components/schemas/Width"
          },
          "height" : {
            "$ref" : "#/components/schemas/Height"
          },
          "loadingMeters" : {
            "$ref" : "#/components/schemas/LoadingMeters"
          },
          "descriptionOfGoods" : {
            "maxItems" : 10,
            "type" : "array",
            "description" : "Description of goods for this cargo item",
            "items" : {
              "type" : "string"
            }
          },
          "marksAndNumbers" : {
            "maxItems" : 10,
            "type" : "array",
            "description" : "Marks and numbers for this cargo item",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "Co2e" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "number",
            "description" : "Emissions value.",
            "format" : "double",
            "example" : 12.48
          },
          "unit" : {
            "type" : "string",
            "description" : "Emissions unit.",
            "example" : "KG"
          }
        },
        "description" : "The CO2-equivalent Emission of the shipment"
      },
      "Container" : {
        "type" : "object",
        "properties" : {
          "containerNumber" : {
            "type" : "string",
            "description" : "The number of the container",
            "example" : "FCSP1910"
          },
          "containerSequenceNumber" : {
            "type" : "integer",
            "description" : "The current sequence number of the container, starting with 1.",
            "format" : "int64",
            "example" : 1
          },
          "containerType" : {
            "type" : "string",
            "description" : "The type of the container",
            "example" : "20GE"
          },
          "routing" : {
            "$ref" : "#/components/schemas/Routing"
          },
          "numberOfPackages" : {
            "$ref" : "#/components/schemas/NumberOfPackages"
          },
          "descriptionOfGoods" : {
            "type" : "array",
            "description" : "The description of goods of the container",
            "example" : [ "Goods", "More goods" ],
            "items" : {
              "type" : "string"
            }
          },
          "partyReferences" : {
            "type" : "array",
            "description" : "Container-related reference numbers and codes",
            "items" : {
              "$ref" : "#/components/schemas/PartyReference"
            }
          },
          "marksAndNumbers" : {
            "type" : "array",
            "description" : "Cargo specific marks and numbers",
            "example" : [ "mark", "number" ],
            "items" : {
              "type" : "string"
            }
          },
          "sealNumbers" : {
            "type" : "array",
            "description" : "Seal number of the container",
            "example" : [ "343466", "FCSP43434H" ],
            "items" : {
              "type" : "string"
            }
          },
          "volume" : {
            "$ref" : "#/components/schemas/Measurement"
          },
          "weight" : {
            "$ref" : "#/components/schemas/Measurement"
          },
          "hasDangerousGoods" : {
            "type" : "boolean",
            "description" : "Flag if the container contains dangerous goods",
            "example" : false
          },
          "isVirtual" : {
            "type" : "boolean",
            "description" : "Flag if the container is a virtual container (i.e. no physical container assigned yet)",
            "writeOnly" : true,
            "example" : false
          }
        }
      },
      "ContainerInfo" : {
        "type" : "object",
        "properties" : {
          "containers" : {
            "type" : "array",
            "description" : "The containers of the shipment",
            "items" : {
              "$ref" : "#/components/schemas/Container"
            }
          },
          "numberOfContainers" : {
            "type" : "integer",
            "description" : "The total number of containers per shipment",
            "format" : "int32",
            "example" : 3
          }
        }
      },
      "CurrentStage" : {
        "type" : "string",
        "description" : "The current stage of the shipment.\nAttention: PRE_CARRIAGE, MAIN_CARRIAGE and ON_CARRIAGE are obsolete and will be removed in the future.\n",
        "example" : "BOOKED",
        "x-extensible-enum" : [ "BOOKED", "PRE_CARRIAGE", "MAIN_CARRIAGE", "ON_CARRIAGE", "IN_TRANSIT", "COMPLETED", "CANCELLED" ]
      },
      "DateTime" : {
        "type" : "object",
        "properties" : {
          "date" : {
            "type" : "string",
            "description" : "The date",
            "example" : "2023-04-25"
          },
          "time" : {
            "type" : "string",
            "description" : "The time",
            "example" : "01:00:02"
          },
          "offset" : {
            "type" : "string",
            "description" : "The time offset to UTC",
            "example" : "+02:00"
          }
        },
        "description" : "Complex date time object which is subject to be removed with the next major version v3.\nPlease use the adjacent 'dateTime' (or 'shipmentCreationIsoDateTime') property instead.\n",
        "deprecated" : true
      },
      "EmissionInfo" : {
        "type" : "object",
        "properties" : {
          "co2e" : {
            "$ref" : "#/components/schemas/Co2e"
          }
        },
        "description" : "The CO2 Emission of the shipment"
      },
      "ExplainedDateTime" : {
        "type" : "object",
        "properties" : {
          "flexDateTime" : {
            "$ref" : "#/components/schemas/DateTime"
          },
          "dateTime" : {
            "$ref" : "#/components/schemas/IsoDateTime"
          },
          "condition" : {
            "type" : "string",
            "x-extensible-enum" : [ "PLANNED", "ACTUAL" ]
          },
          "explanation" : {
            "$ref" : "#/components/schemas/Explanation"
          }
        }
      },
      "Explanation" : {
        "type" : "object",
        "properties" : {
          "source" : {
            "type" : "string",
            "x-extensible-enum" : [ "ETD", "ETA", "STATUS", "TRODO", "TROAP", "TADDO", "TADAP" ]
          },
          "statusCode" : {
            "type" : "string",
            "description" : "The KN status code",
            "example" : "2400"
          }
        }
      },
      "FreightInfo" : {
        "type" : "object",
        "properties" : {
          "containerInfo" : {
            "$ref" : "#/components/schemas/ContainerInfo"
          },
          "cargoInfo" : {
            "$ref" : "#/components/schemas/CargoInfo"
          },
          "volume" : {
            "$ref" : "#/components/schemas/Volume"
          },
          "weight" : {
            "$ref" : "#/components/schemas/Weight"
          },
          "hasDangerousGoods" : {
            "type" : "boolean",
            "description" : "Flag if the freight contains dangerous goods",
            "example" : false
          },
          "labelPrinted" : {
            "type" : "boolean",
            "description" : "Flag which indicates whether the label is printed",
            "example" : false
          }
        }
      },
      "Incoterm" : {
        "type" : "object",
        "properties" : {
          "code" : {
            "type" : "string",
            "description" : "The code of the incoterm",
            "example" : "CFR"
          },
          "location" : {
            "type" : "string",
            "description" : "Incoterm location",
            "example" : "Amsterdam"
          }
        },
        "description" : "Provides details on shipment delivery terms."
      },
      "IsoDateTime" : {
        "pattern" : "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}(:\\d{2}(:\\d{2}(\\.\\d+)?)?)?(Z|[+-]\\d{2}:\\d{2})?)?$",
        "type" : "string",
        "description" : "Date and time in ISO 8601 format",
        "example" : "2023-04-25T01:00:02Z"
      },
      "Location" : {
        "type" : "object",
        "properties" : {
          "locationCode" : {
            "type" : "string",
            "description" : "The code of location (UN,IATA,KN or SP code)",
            "example" : "CWS"
          },
          "unLocationCode" : {
            "type" : "string",
            "description" : "The UN (United Nations) code of location if exists",
            "example" : "CWS"
          },
          "countryCode" : {
            "type" : "string",
            "description" : "The country code, e.g. DE for Germany",
            "format" : "iso-3166-alpha-2",
            "example" : "DK"
          },
          "countryName" : {
            "type" : "string",
            "description" : "The country name",
            "example" : "Denmark"
          },
          "internationalName" : {
            "type" : "string",
            "description" : "The international name",
            "example" : "Hamburg"
          },
          "freeTextLocation" : {
            "type" : "string",
            "description" : "The name of the location as a freetext input",
            "example" : "Hamburg"
          },
          "stateCode" : {
            "type" : "string",
            "description" : "The state code",
            "example" : "GA"
          },
          "zipCode" : {
            "type" : "string",
            "description" : "The zip code",
            "example" : "30014-4958"
          }
        }
      },
      "LocationMilestone" : {
        "type" : "object",
        "properties" : {
          "description" : {
            "type" : "string",
            "description" : "Description of the location milestone (not populated currently)",
            "example" : "The vehicle has arrived"
          },
          "reached" : {
            "type" : "boolean",
            "description" : "Flag if the location milestone was already reached",
            "example" : true
          },
          "locationMilestoneType" : {
            "$ref" : "#/components/schemas/LocationMilestoneType"
          },
          "achievementDateTime" : {
            "$ref" : "#/components/schemas/ExplainedDateTime"
          }
        },
        "description" : "Provides details of where the shipment is on its journey"
      },
      "LocationMilestoneType" : {
        "type" : "string",
        "description" : "The type of activity at the location",
        "example" : "CARGO_PICKED_UP",
        "x-extensible-enum" : [ "CONTAINER_GATE_OUT_EMPTY", "CONTAINER_LOADED", "CONTAINER_UNLOADED", "CARGO_PICKED_UP", "CARGO_AVAILABLE", "VEHICLE_ARRIVED", "VEHICLE_DISCHARGED", "VEHICLE_LOADED", "VEHICLE_DEPARTED", "CARGO_DELIVERED", "CARGO_AT_CARRIER", "CARGO_CHECKED_IN", "CONTAINER_GATE_IN_EMPTY", "READY_FOR_PICKUP", "GATE_IN", "GATE_OUT", "FREIGHT_COLLECTION", "IN_DELIVERY" ]
      },
      "Measurement" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "number",
            "description" : "Measurement value.",
            "format" : "double",
            "example" : 12.48
          },
          "unit" : {
            "type" : "string",
            "description" : "Measurement unit.",
            "example" : "KG"
          }
        }
      },
      "ShipmentHistory" : {
        "type" : "object",
        "properties" : {
          "shipmentId" : {
            "$ref" : "#/components/schemas/ShipmentId"
          },
          "trackingNumber" : {
            "$ref" : "#/components/schemas/TrackingNumber"
          },
          "milestones" : {
            "type" : "array",
            "description" : "Chronological milestone change history, ordered by update time descending.",
            "items" : {
              "$ref" : "#/components/schemas/MilestoneHistoryEntry"
            }
          }
        }
      },
      "MilestoneHistoryEntry" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string",
            "description" : "The type of milestone that was updated.",
            "example" : "ROUTE_LOCATION_MILESTONE",
            "enum" : [ "ROUTE_LOCATION_MILESTONE", "INFORMATION_MILESTONE" ]
          },
          "key" : {
            "$ref" : "#/components/schemas/HistoryMilestoneKey"
          },
          "location" : {
            "$ref" : "#/components/schemas/HistoryLocation"
          },
          "newMilestoneDateTime" : {
            "$ref" : "#/components/schemas/ObservedMilestoneDateTime"
          },
          "oldMilestoneDateTime" : {
            "$ref" : "#/components/schemas/ObservedMilestoneDateTime"
          },
          "remarks" : {
            "type" : "string",
            "description" : "The last status remark of the update, if any.",
            "example" : "Delay due to port congestion"
          },
          "updatedAt" : {
            "type" : "string",
            "description" : "The UTC timestamp when the milestone was updated.",
            "format" : "date-time",
            "example" : "2023-04-25T01:00:02Z"
          }
        }
      },
      "HistoryMilestoneKey" : {
        "type" : "object",
        "properties" : {
          "routeLocationType" : {
            "$ref" : "#/components/schemas/RouteLocationType"
          },
          "locationMilestoneType" : {
            "$ref" : "#/components/schemas/LocationMilestoneType"
          },
          "transportInformationMilestoneType" : {
            "type" : "string",
            "example" : "BOOKING_CONFIRMATION",
            "x-extensible-enum" : [ "ADVICE_TO_BROKER_OR_CUSTOMER", "BAL_BL_AVAILABLE", "BOOKING_ACKNOWLEDGEMENT", "BOOKING_CONFIRMATION", "BOOKING_MODIFICATION", "BOOKING_SUBMISSION", "CANCELLATION", "CARGO_COMMODITY_UPDATE", "CARRIER_BOOKING_CONFIRMATION", "CARRIER_BOOKING_REJECTION", "CARRIER_BOOKING_SUBMISSION", "CUSTOMS_BILLING_INVOICE_AVAILABLE", "CUSTOMS_CLEARANCE_COMPLETE", "CUSTOMS_CLEARANCE_START", "CUSTOMS_DELIVERY_AGENT_NOTIFICATION", "CUSTOMS_DUTIES_PAYMENT", "CUSTOMS_ENTRY_TRANSMISSION", "CUSTOMS_MANIFEST_FILING_CONFIRMATION", "CUSTOMS_MANIFEST_FILING_SUBMISSION", "DELIVERY_APPOINTMENT_SUBMISSION", "DOCUMENT_UPLOAD_BY_CUSTOMER", "EXPEDITED_RAIL_SERVICE", "EXPORT_CUSTOMS_CLEARANCE_COMPLETE", "EXPORT_CUSTOMS_CLEARANCE_START", "EXPORT_SECURITY_FILING_CONFIRMATION", "FREIGHT_DOCUMENTS_HANDOVER", "HAWB_AVAILABLE", "IMPORT_CUSTOMS_CLEARANCE_START", "IMPORT_CUSTOMS_ENTRY_TRANSMISSION", "IMPORT_CUSTOMS_CLEARANCE_COMPLETE", "IMPORT_CUSTOMS_DELIVERY_AGENT_NOTIFICATION", "IMPORT_CUSTOMS_BILLING_INVOICE_AVAILABLE", "IMPORT_CUSTOMS_DUTIES_PAYMENT", "IMPORTER_SECURITY_FILING_BILL_OF_LADING_MATCH", "IMPORTER_SECURITY_FILING_CONFIRMATION", "LEGISLATION_COMPLIANCE_OK", "LEGISLATION_COMPLIANCE_REJECTED", "MAWB_AVAILABLE", "MISSING_OR_INCOMPLETE_DOCUMENT", "ORIGINAL_TRANSPORT_DOCUMENT_RECEIPT", "POD_AVAILABLE", "SERVICE_COMPLETE", "SHIPMENT_RELEASE_BY_CUSTOMER", "SHIPPING_INSTRUCTIONS_RECEIPT", "STORAGE_EXPORT", "STORAGE_IMPORT", "VGM_CLOSURE", "VGM_DATA_VERIFICATION", "VGM_MESSAGE_TO_PROVIDER", "WAITING_FOR_SHIPPING_APPROVAL" ]
          }
        },
        "description" : "Identifies the milestone that was updated.\nFor ROUTE_LOCATION_MILESTONE: routeLocationType and locationMilestoneType are populated.\nFor INFORMATION_MILESTONE: transportInformationMilestoneType is populated.\n"
      },
      "HistoryLocation" : {
        "type" : "object",
        "properties" : {
          "locationCode" : {
            "type" : "string",
            "description" : "The KN location code",
            "example" : "DEHAM"
          },
          "unLocationCode" : {
            "type" : "string",
            "description" : "The UN location code",
            "example" : "DEHAM"
          },
          "locationName" : {
            "type" : "string",
            "description" : "The international name, or free-text location name as fallback",
            "example" : "Hamburg"
          },
          "stateCode" : {
            "type" : "string",
            "description" : "The state code (only populated for countries that support state codes)",
            "example" : "GA"
          },
          "countryCode" : {
            "type" : "string",
            "description" : "The ISO 3166-1 alpha-2 country code",
            "format" : "iso-3166-alpha-2",
            "example" : "DE"
          },
          "countryName" : {
            "type" : "string",
            "description" : "The country name",
            "example" : "Germany"
          }
        },
        "description" : "The location associated with a milestone change event."
      },
      "ObservedMilestoneDateTime" : {
        "type" : "object",
        "properties" : {
          "dateTime" : {
            "$ref" : "#/components/schemas/IsoDateTime"
          },
          "condition" : {
            "type" : "string",
            "description" : "Whether this is an actual or planned date/time",
            "example" : "ACTUAL",
            "enum" : [ "ACTUAL", "PLANNED" ]
          }
        },
        "description" : "A milestone date/time with its condition (actual or planned)."
      },
      "MilestoneInfo" : {
        "type" : "object",
        "properties" : {
          "currentStage" : {
            "$ref" : "#/components/schemas/CurrentStage"
          },
          "currentMilestone" : {
            "description" : "The current (latest achieved) milestone of the shipment.",
            "oneOf" : [ {
              "$ref" : "#/components/schemas/TransportInformationMilestone"
            }, {
              "$ref" : "#/components/schemas/RouteLocationMilestone"
            } ]
          },
          "completionMilestone" : {
            "description" : "The milestone which is responsible for setting shipments stage to completed.",
            "oneOf" : [ {
              "$ref" : "#/components/schemas/TransportInformationMilestone"
            }, {
              "$ref" : "#/components/schemas/RouteLocationMilestone"
            } ]
          },
          "milestoneDates" : {
            "type" : "array",
            "description" : "List of all milestones of the shipment which have at least a planned or actual achievement datetime.",
            "items" : {
              "oneOf" : [ {
                "$ref" : "#/components/schemas/TransportInformationMilestone"
              }, {
                "$ref" : "#/components/schemas/RouteLocationMilestone"
              } ]
            }
          }
        },
        "description" : "Information about the milestones of the shipment"
      },
      "ModeOfTransport" : {
        "type" : "string",
        "description" : "The mode of transport of this shipment",
        "example" : "SEA",
        "x-extensible-enum" : [ "AIR", "SEA", "ROAD" ]
      },
      "PageInfo" : {
        "type" : "object",
        "properties" : {
          "totalElements" : {
            "type" : "integer",
            "description" : "Total number of elements across all pages",
            "format" : "int64",
            "example" : 150
          },
          "totalPages" : {
            "type" : "integer",
            "description" : "Total number of pages",
            "format" : "int32",
            "example" : 8
          },
          "currentPage" : {
            "type" : "integer",
            "description" : "Current page number (0-indexed)",
            "format" : "int32",
            "example" : 0
          },
          "size" : {
            "type" : "integer",
            "description" : "Requested page size",
            "format" : "int32",
            "example" : 20
          },
          "actualSize" : {
            "type" : "integer",
            "description" : "Actual number of elements in the current page",
            "format" : "int32",
            "example" : 20
          },
          "hasNext" : {
            "type" : "boolean",
            "description" : "Whether there is a next page",
            "example" : true
          },
          "hasPrevious" : {
            "type" : "boolean",
            "description" : "Whether there is a previous page",
            "example" : false
          }
        },
        "description" : "Pagination metadata for the response"
      },
      "PaginationRequest" : {
        "type" : "object",
        "properties" : {
          "page" : {
            "minimum" : 0,
            "type" : "integer",
            "description" : "Page number (0-indexed). Defaults to 0. Negative values are treated as 0.",
            "format" : "int32",
            "example" : 0,
            "default" : 0
          },
          "size" : {
            "minimum" : 1,
            "type" : "integer",
            "description" : "Number of elements per page. Defaults to 20. Values less than 1 are treated as the default.",
            "format" : "int32",
            "example" : 20,
            "default" : 20
          }
        },
        "description" : "Optional pagination parameters. If omitted, defaults to page 0 with size 20."
      },
      "NumberOfPackages" : {
        "type" : "integer",
        "description" : "The total number of packages",
        "format" : "int32",
        "example" : 4
      },
      "Parties" : {
        "type" : "object",
        "properties" : {
          "shipper" : {
            "$ref" : "#/components/schemas/Party"
          },
          "consignee" : {
            "$ref" : "#/components/schemas/Party"
          },
          "mainParties" : {
            "maxItems" : 20,
            "type" : "array",
            "description" : "The external customer parties of the shipment. Note: Shipper and consignee are excluded, because they have their dedicated fields.\n",
            "items" : {
              "$ref" : "#/components/schemas/Party"
            }
          },
          "internalParties" : {
            "maxItems" : 20,
            "type" : "array",
            "description" : "The inte

# --- truncated at 32 KB (61 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kuehne-nagel/refs/heads/main/openapi/kuehne-nagel-shipment-tracking-v2-openapi.json