{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/lune/json-schema/lune-paginated-shipments-schema.json",
  "title": "PaginatedShipments",
  "x-generated": "2026-10-29",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/lune-openapi.yml#/components/schemas/PaginatedShipments",
  "allOf": [
    {
      "$ref": "#/$defs/PaginatedBase"
    },
    {
      "type": "object",
      "required": [
        "data",
        "total"
      ],
      "properties": {
        "data": {
          "type": "array",
          "description": "An array of Shipment objects ordered by creation date descending.\n\nPart of a paginated response.\n",
          "items": {
            "$ref": "#/$defs/Shipment"
          }
        },
        "total": {
          "description": "Approximate total number of shipments matching the active filters.\n\nThese totals may lag behind the current shipment data.\n",
          "oneOf": [
            {
              "$ref": "#/$defs/NullEnum"
            },
            {
              "$ref": "#/$defs/ShipmentTotals"
            }
          ]
        }
      }
    }
  ],
  "$defs": {
    "Address": {
      "x-lune-name": "Address",
      "description": "Detailed information about an address.\n\nEven though though `street_line1`, `postcode`, `city` are optional properties, the more details\nyou provide, the more likely we are able to resolve the address to its intended location.\n\nNote: only `postcode` is guaranteed to be unique for a country.\n\n`country_code` is optional, but it is strongly recommended to provide it for\nbetter accuracy if possible.\n",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "street_line1": {
          "type": "string",
          "description": "A street and house number (or equivalent)."
        },
        "street_line2": {
          "type": "string",
          "description": "An address component more precise than a street and house number."
        },
        "postcode": {
          "type": "string",
          "description": "The postal code in the format specific to the country it's in"
        },
        "city": {
          "type": "string"
        },
        "country_code": {
          "type": "string",
          "description": "A three-letter country code."
        }
      }
    },
    "AircraftConfiguration": {
      "type": "string",
      "description": "For air transport, Lune supports one of three values:\n\n* `cargo_plane`: Indicating a full freighter plane.\n* `passenger_plane`: Indicating the plane only contains belly freight.\n* `plane`: When the freight capacity of the plane is unknown. This value uses a weighted average of cargo and passenger planes.\n\nWhen `aircraft_configuration` is omitted, it defaults to `plane`.\n",
      "enum": [
        "cargo_plane",
        "passenger_plane",
        "plane"
      ]
    },
    "AircraftTypeMethod": {
      "x-lune-name": "Aircraft type",
      "type": "object",
      "required": [
        "aircraft_type"
      ],
      "properties": {
        "aircraft_type": {
          "type": "string",
          "description": "Aircraft type ICAO code",
          "enum": [
            "A140",
            "A148",
            "A158",
            "A306",
            "A30B",
            "A310",
            "A318",
            "A319",
            "A320",
            "A321",
            "A332",
            "A333",
            "A342",
            "A343",
            "A345",
            "A346",
            "A359",
            "A380",
            "AN12",
            "B703",
            "B712",
            "B722",
            "B732",
            "B733",
            "B734",
            "B735",
            "B738",
            "B739",
            "B742",
            "B744",
            "B748",
            "B752",
            "B762",
            "B763",
            "B77L",
            "B773",
            "B77W",
            "B788",
            "B789",
            "MD11"
          ]
        }
      }
    },
    "AircraftTypeMethodResponse": {
      "x-lune-name": "Aircraft type",
      "allOf": [
        {
          "$ref": "#/$defs/AircraftTypeMethod"
        }
      ]
    },
    "AirportCode": {
      "type": "object",
      "oneOf": [
        {
          "$ref": "#/$defs/IATACode"
        },
        {
          "$ref": "#/$defs/ICAOCode"
        }
      ]
    },
    "CargoType": {
      "type": "string",
      "description": "Specify the mass of cargo in the container. If omitted, `average` is used by default.\n\nEach type applies a different conversion to mass for emissions estimation. See [TEU conversion table](https://docs.lune.co/general-concepts/logistics-methodology#13-cargo-weight) for details.\n",
      "enum": [
        "lightweight",
        "average",
        "heavyweight",
        "container_only"
      ]
    },
    "CarriageType": {
      "type": "string",
      "description": "Indicates the leg's role in the overall shipment journey.\n\n* `pre` — first-mile pickup\n* `main` — primary long-haul\n* `on` — last-mile delivery\n",
      "enum": [
        "pre",
        "main",
        true
      ]
    },
    "ContainerLoadType": {
      "type": "string",
      "description": "Whether the container is a full container load or less than container load.\n",
      "enum": [
        "fcl",
        "lcl"
      ]
    },
    "ContainerSizeType": {
      "type": "string",
      "description": "ISO container size/type code.",
      "enum": [
        "20gp",
        "40gp",
        "40hc",
        "45hc",
        "20rf",
        "40rf",
        "20ot",
        "40ot",
        "20fr",
        "40fr",
        "20tk"
      ]
    },
    "CurrencyCode": {
      "x-lune-name": "Currency code",
      "type": "string",
      "description": "ISO 4217 3 character currency code.\n\nNote: Lune supports most but not all currency codes.\n",
      "enum": [
        "AED",
        "AFN",
        "ALL",
        "AMD",
        "ANG",
        "AOA",
        "ARS",
        "AUD",
        "AWG",
        "AZN",
        "BAM",
        "BBD",
        "BDT",
        "BGN",
        "BHD",
        "BIF",
        "BMD",
        "BND",
        "BOB",
        "BRL",
        "BSD",
        "BTC",
        "BTN",
        "BWP",
        "BYN",
        "BYR",
        "BZD",
        "CAD",
        "CDF",
        "CHF",
        "CLF",
        "CLP",
        "CNY",
        "CNH",
        "COP",
        "CRC",
        "CUC",
        "CUP",
        "CVE",
        "CZK",
        "DJF",
        "DKK",
        "DOP",
        "DZD",
        "EGP",
        "ERN",
        "ETB",
        "EUR",
        "FJD",
        "FKP",
        "GBP",
        "GEL",
        "GGP",
        "GHS",
        "GIP",
        "GMD",
        "GNF",
        "GTQ",
        "GYD",
        "HKD",
        "HNL",
        "HRK",
        "HTG",
        "HUF",
        "IDR",
        "ILS",
        "IMP",
        "INR",
        "IQD",
        "IRR",
        "ISK",
        "JEP",
        "JMD",
        "JOD",
        "JPY",
        "KES",
        "KGS",
        "KHR",
        "KMF",
        "KPW",
        "KRW",
        "KWD",
        "KYD",
        "KZT",
        "LAK",
        "LBP",
        "LKR",
        "LRD",
        "LSL",
        "LTL",
        "LVL",
        "LYD",
        "MAD",
        "MDL",
        "MGA",
        "MKD",
        "MMK",
        "MNT",
        "MOP",
        "MRU",
        "MUR",
        "MVR",
        "MWK",
        "MXN",
        "MYR",
        "MZN",
        "NAD",
        "NGN",
        "NIO",
        "NOK",
        "NPR",
        "NZD",
        "OMR",
        "PAB",
        "PEN",
        "PGK",
        "PHP",
        "PKR",
        "PLN",
        "PYG",
        "QAR",
        "RON",
        "RSD",
        "RUB",
        "RWF",
        "SAR",
        "SBD",
        "SCR",
        "SDG",
        "SEK",
        "SGD",
        "SHP",
        "SLE",
        "SLL",
        "SOS",
        "SRD",
        "STD",
        "SVC",
        "SYP",
        "SZL",
        "THB",
        "TJS",
        "TMT",
        "TND",
        "TOP",
        "TRY",
        "TTD",
        "TWD",
        "TZS",
        "UAH",
        "UGX",
        "USD",
        "UYU",
        "UZS",
        "VES",
        "VND",
        "VUV",
        "WST",
        "XAF",
        "XAG",
        "XAU",
        "XCD",
        "XDR",
        "XOF",
        "XPF",
        "YER",
        "ZAR",
        "ZMK",
        "ZMW",
        "ZWL"
      ]
    },
    "Distance": {
      "x-lune-name": "Distance",
      "type": "object",
      "required": [
        "amount",
        "unit"
      ],
      "properties": {
        "amount": {
          "type": "string",
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "unit": {
          "type": "string",
          "enum": [
            "km",
            "mi",
            "nm"
          ],
          "description": "The estimated distance. Unit, `km` for kilometers, `mi` for miles\n"
        }
      }
    },
    "FlightNumberMethodResponse": {
      "x-lune-name": "Flight number method",
      "type": "object",
      "required": [
        "flight_number",
        "departure_on",
        "aircraft_configuration"
      ],
      "properties": {
        "flight_number": {
          "type": [
            "string",
            "null"
          ],
          "description": "Flight number in either ICAO or IATA format.\n"
        },
        "departure_on": {
          "type": [
            "string",
            "null"
          ],
          "description": "Departure date of the flight.",
          "format": "date"
        },
        "aircraft_configuration": {
          "oneOf": [
            {
              "$ref": "#/$defs/AircraftConfiguration"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        }
      }
    },
    "FuelConsumption": {
      "type": "object",
      "description": "A fuel consumption measurement.",
      "required": [
        "amount",
        "unit"
      ],
      "properties": {
        "amount": {
          "type": "string",
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "unit": {
          "$ref": "#/$defs/FuelConsumptionUnit"
        }
      }
    },
    "FuelConsumptionUnit": {
      "type": "string",
      "description": "Unit of fuel consumption measurement.",
      "enum": [
        "l",
        "kg",
        "kwh",
        "gal"
      ]
    },
    "GeographicCoordinates": {
      "x-lune-name": "Geographic coordinates",
      "type": "object",
      "required": [
        "lat",
        "lon"
      ],
      "properties": {
        "lat": {
          "description": "Latitude in decimal degrees.",
          "type": "number",
          "minimum": -90.0,
          "maximum": 90.0
        },
        "lon": {
          "description": "Longitude in decimal degrees.",
          "type": "number",
          "minimum": -180.0,
          "maximum": 180.0
        }
      }
    },
    "IATACode": {
      "x-lune-name": "IATA code",
      "type": "object",
      "required": [
        "code"
      ],
      "properties": {
        "code": {
          "type": "string",
          "pattern": "^[A-Z]{3}$",
          "description": "Airport IATA code. For a full list of options (https://openflights.org/data.html)"
        }
      }
    },
    "ICAOCode": {
      "type": "object",
      "x-lune-name": "ICAO code",
      "required": [
        "code"
      ],
      "properties": {
        "code": {
          "type": "string",
          "pattern": "^[A-Z]{4}[A-Z]?$",
          "description": "Airport ICAO code. For a full list of options (https://openflights.org/data.html)"
        }
      }
    },
    "Incoterm": {
      "type": "string",
      "description": "International Commercial Term (Incoterms 2020) governing the shipment.\n",
      "enum": [
        "exw",
        "fca",
        "cpt",
        "cip",
        "dap",
        "dpu",
        "ddp",
        "fas",
        "fob",
        "cfr",
        "cif"
      ]
    },
    "LegEmissionsResponse": {
      "type": "object",
      "description": "Computed emissions data for a shipment leg.\nAll CO2e and pollutant mass values are in kilograms.\n",
      "required": [
        "total_emissions",
        "wtt",
        "ttw",
        "intensity",
        "particles_total",
        "particles_wtt",
        "particles_ttw",
        "carbon_dioxide_total",
        "carbon_dioxide_wtt",
        "carbon_dioxide_ttw",
        "nitrogen_oxides_total",
        "nitrogen_oxides_wtt",
        "nitrogen_oxides_ttw",
        "sulfur_dioxides_total",
        "sulfur_dioxides_wtt",
        "sulfur_dioxides_ttw",
        "non_methane_hydro_carbons_total",
        "non_methane_hydro_carbons_wtt",
        "non_methane_hydro_carbons_ttw",
        "primary_energy_mj",
        "fuel_consumption_l",
        "distance_km",
        "transport_activity",
        "emission_factor_description",
        "emission_factor_region",
        "emission_factor_source",
        "emission_factor_intensity",
        "emission_factor_numerator",
        "emission_factor_denominator",
        "emission_factor_year"
      ],
      "properties": {
        "total_emissions": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Total emissions (kg CO2e)."
        },
        "wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Well-to-tank emissions (kg CO2e)."
        },
        "ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Tank-to-wheel emissions (kg CO2e)."
        },
        "intensity": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Emission intensity in grams of CO2e per tonne-kilometre for transport\nlegs, or grams of CO2e per tonne for logistics-site legs.\n"
        },
        "particles_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Total particulate matter emissions (kg)."
        },
        "particles_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Well-to-tank particulate matter emissions (kg)."
        },
        "particles_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Tank-to-wheel particulate matter emissions (kg)."
        },
        "carbon_dioxide_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Total carbon dioxide emissions (kg)."
        },
        "carbon_dioxide_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Well-to-tank carbon dioxide emissions (kg)."
        },
        "carbon_dioxide_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Tank-to-wheel carbon dioxide emissions (kg)."
        },
        "nitrogen_oxides_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Total nitrogen oxides emissions (kg)."
        },
        "nitrogen_oxides_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Well-to-tank nitrogen oxides emissions (kg)."
        },
        "nitrogen_oxides_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Tank-to-wheel nitrogen oxides emissions (kg)."
        },
        "sulfur_dioxides_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Total sulfur dioxides emissions (kg)."
        },
        "sulfur_dioxides_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Well-to-tank sulfur dioxides emissions (kg)."
        },
        "sulfur_dioxides_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Tank-to-wheel sulfur dioxides emissions (kg)."
        },
        "non_methane_hydro_carbons_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Total non-methane hydrocarbons emissions (kg)."
        },
        "non_methane_hydro_carbons_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Well-to-tank non-methane hydrocarbons emissions (kg)."
        },
        "non_methane_hydro_carbons_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Tank-to-wheel non-methane hydrocarbons emissions (kg)."
        },
        "primary_energy_mj": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Primary energy consumption (MJ)."
        },
        "fuel_consumption_l": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Fuel consumption (litres)."
        },
        "distance_km": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Distance (km)."
        },
        "transport_activity": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Transport activity (tonne-kilometres)."
        },
        "emission_factor_description": {
          "type": [
            "string",
            "null"
          ],
          "description": "Description of the emission factor used."
        },
        "emission_factor_region": {
          "type": [
            "string",
            "null"
          ],
          "description": "Region of the emission factor."
        },
        "emission_factor_source": {
          "type": [
            "string",
            "null"
          ],
          "description": "Source of the emission factor."
        },
        "emission_factor_intensity": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Intensity value of the emission factor."
        },
        "emission_factor_numerator": {
          "type": [
            "string",
            "null"
          ],
          "description": "Numerator unit of the emission factor."
        },
        "emission_factor_denominator": {
          "type": [
            "string",
            "null"
          ],
          "description": "Denominator unit of the emission factor."
        },
        "emission_factor_year": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Year of the emission factor."
        }
      }
    },
    "Locode": {
      "x-lune-name": "UN/LOCODE",
      "type": "object",
      "required": [
        "locode"
      ],
      "properties": {
        "locode": {
          "type": "string",
          "pattern": "^[A-Z]{2}[A-Z0-9]{3}$",
          "description": "UN LOCODE. For a full list of options (https://unece.org/trade/cefact/unlocode-code-list-country-and-territory)"
        }
      }
    },
    "LogisticsSiteMethod": {
      "x-lune-name": "Logistics site",
      "type": "string",
      "description": "Logistics sites are locations where goods are stored, repacked and distributed.\n",
      "enum": [
        "maritime_container_terminal",
        "maritime_container_terminal_ambient",
        "maritime_container_terminal_chilled",
        "transhipment_site_ambient",
        "transhipment_site_chilled",
        "transhipment_site_mixed",
        "storage_and_transhipment_ambient",
        "storage_and_transhipment_chilled",
        "storage_and_transhipment_mixed",
        "warehouse_ambient",
        "warehouse_chilled",
        "warehouse_mixed",
        "liquid_bulk_terminals_ambient",
        "liquid_bulk_terminals_mixed"
      ]
    },
    "Mass": {
      "type": "object",
      "required": [
        "amount",
        "unit"
      ],
      "properties": {
        "amount": {
          "type": "string",
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "unit": {
          "$ref": "#/$defs/MassUnit"
        }
      }
    },
    "MassUnit": {
      "x-lune-name": "Mass",
      "type": "string",
      "description": "Unit, `t` for tonne, `kg` for kilogram, `g` for gram, `lbs` for pound",
      "enum": [
        "g",
        "kg",
        "t",
        "lbs"
      ]
    },
    "Metadata": {
      "description": "An arbitrary dictionary (key-value pairs) to store application-specific information.\n\nLune doesn't use this information for order processing. Its purpose is for the API\nclients to be able to attach arbitrary information (to an order for example) and\nthen retrieve it.\n",
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "MonetaryAmount": {
      "type": "object",
      "required": [
        "value",
        "currency"
      ],
      "properties": {
        "value": {
          "$ref": "#/$defs/MonetaryAmountValue"
        },
        "currency": {
          "$ref": "#/$defs/CurrencyCode"
        }
      }
    },
    "MonetaryAmountValue": {
      "type": "string",
      "pattern": "^[0-9]+(\\.[0-9]+)?$",
      "description": "Specify the monetary value in the currency defined by the `currency_code` property in the request. If no `currency_code` is provided, the currency will default to that of the associated account.\n"
    },
    "NullEnum": {
      "type": [
        "string",
        "null"
      ],
      "x-lune-name": "Null",
      "description": "The property is set to `null`.",
      "enum": [
        null
      ]
    },
    "PaginatedBase": {
      "type": "object",
      "required": [
        "has_more",
        "next_cursor"
      ],
      "properties": {
        "has_more": {
          "type": "boolean",
          "description": "Whether or not there are more elements available after this set.\n\nIf false, this set comprises the end of the array.\n\nPart of a paginated response.\n"
        },
        "next_cursor": {
          "description": "The cursor value to be used as the after parameter for fetching the next page of results.\n\n`null` if `has_more` is `false`.\n",
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "RoadEmissionStandard": {
      "description": "The vehicle's emission standard for pollution.",
      "type": "string",
      "enum": [
        "euro1",
        "euro2",
        "euro3",
        "euro4",
        "euro5",
        "euro6"
      ]
    },
    "RoadFuel": {
      "description": "The vehicle's fuel.",
      "type": "string",
      "enum": [
        "gasoline",
        "diesel",
        "99_diesel_1_biodiesel",
        "98_diesel_2_biodiesel",
        "95_diesel_5_biodiesel",
        "93_diesel_7_biodiesel",
        "90_diesel_10_biodiesel",
        "80_diesel_20_biodiesel",
        "50_diesel_50_biodiesel",
        "ethanol_from_corn",
        "hvo_from_tallow",
        "lpg",
        "cng",
        "lng",
        "auto_detect"
      ]
    },
    "RoadGradient": {
      "description": "Describes the road's topology.",
      "type": "string",
      "enum": [
        "flat",
        "hilly",
        "mountainous"
      ]
    },
    "RoadSituation": {
      "description": "Situation describes the driving environment and road condition.",
      "type": "string",
      "enum": [
        "city_urban_freeflow",
        "motorway_urban_freeflow",
        "motorway_rural_freeflow",
        "city_urban_heavy_traffic",
        "city_urban_stop_and_go",
        "motorway_urban_heavy_traffic",
        "motorway_urban_stop_and_go",
        "motorway_rural_heavy_traffic",
        "motorway_rural_stop_and_go",
        "arterial_road_rural_freeflow",
        "arterial_road_rural_heavy_traffic",
        "arterial_road_rural_stop_and_go"
      ]
    },
    "RoadVehicleType": {
      "type": "string",
      "x-lune-name": "Vehicle type",
      "enum": [
        "truck_generic_van",
        "truck_rigid_7_5t",
        "truck_rigid_12t",
        "truck_rigid_20t",
        "truck_rigid_26t",
        "truck_rigid_32t",
        "truck_articulated_34t",
        "truck_articulated_40t",
        "truck_articulated_44t",
        "truck_articulated_60t",
        "truck_articulated_72t"
      ]
    },
    "Shipment": {
      "description": "A shipment with its legs, with or without emissions.",
      "allOf": [
        {
          "$ref": "#/$defs/ShipmentEmissions"
        },
        {
          "type": "object",
          "required": [
            "id",
            "shipment_id",
            "supplier_id",
            "supplier_name",
            "shipper_id",
            "shipper_name",
            "metadata",
            "tags",
            "service_level",
            "incoterm",
            "contract_type",
            "hazardous_cargo",
            "booking_reference",
            "house_waybill",
            "reference_id_po",
            "consignee_id",
            "consignee_name",
            "consignor_id",
            "consignor_name",
            "freight_paying_party",
            "legal_entity",
            "freight_cost",
            "shipper_contract_emission_scope",
            "emissions_source",
            "legs",
            "created_at"
          ],
          "properties": {
            "id": {
              "type": "string",
              "description": "Lune-generated unique identifier."
            },
            "shipment_id": {
              "type": "string",
              "description": "Client-side shipment reference identifier."
            },
            "supplier_id": {
              "type": "string",
              "description": "Identifier of the supplier."
            },
            "supplier_name": {
              "type": "string",
              "description": "Name of the supplier."
            },
            "shipper_id": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the shipper."
            },
            "shipper_name": {
              "type": [
                "string",
                "null"
              ],
              "description": "Name of the shipper."
            },
            "metadata": {
              "oneOf": [
                {
                  "$ref": "#/$defs/Metadata"
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            },
            "tags": {
              "type": [
                "array",
                "null"
              ],
              "items": {
                "type": "string"
              },
              "description": "Tags for categorising or filtering shipments."
            },
            "service_level": {
              "oneOf": [
                {
                  "$ref": "#/$defs/ShipmentServiceLevel"
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            },
            "incoterm": {
              "oneOf": [
                {
                  "$ref": "#/$defs/Incoterm"
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            },
            "contract_type": {
              "oneOf": [
                {
                  "$ref": "#/$defs/ShipmentContractType"
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            },
            "hazardous_cargo": {
              "type": [
                "boolean",
                "null"
              ],
              "description": "Whether the shipment contains hazardous cargo."
            },
            "booking_reference": {
              "type": [
                "string",
                "null"
              ],
              "description": "Booking reference number."
            },
            "house_waybill": {
              "type": [
                "string",
                "null"
              ],
              "description": "House waybill number."
            },
            "reference_id_po": {
              "type": [
                "string",
                "null"
              ],
              "description": "Purchase order reference identifier."
            },
            "consignee_id": {
              "type": [
                "string",
                "null"
              ],
              "description": "Client-side identifier for the consignee."
            },
            "consignee_name": {
              "type": [
                "string",
                "null"
              ],
              "description": "Name of the consignee."
            },
            "consignor_id": {
              "type": [
                "string",
                "null"
              ],
              "description": "Client-side identifier for the consignor."
            },
            "consignor_name": {
              "type": [
                "string",
                "null"
              ],
              "description": "Name of the consignor."
            },
            "freight_paying_party": {
              "type": [
                "string",
                "null"
              ],
              "description": "Name of the freight paying party."
            },
            "legal_entity": {
              "type": [
                "string",
                "null"
              ],
              "description": "Legal entity responsible for the shipment."
            },
            "freight_cost": {
              "oneOf": [
                {
                  "$ref": "#/$defs/MonetaryAmount"
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            },
            "shipper_contract_emission_scope": {
              "type": [
                "string",
                "null"
              ],
              "description": "Emission scope for the shipper contract."
            },
            "emissions_source": {
              "description": "Source of the emissions data.",
              "oneOf": [
                {
                  "type": "string",
                  "enum": [
                    "ecotransit",
                    "lune",
                    "manual"
                  ]
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            },
            "legs": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/ShipmentLegResponse"
              }
            },
            "created_at": {
              "$ref": "#/$defs/Timestamp"
            }
          }
        }
      ]
    },
    "ShipmentContainerResponse": {
      "type": "object",
      "description": "Details of a shipping container.",
      "required": [
        "number",
        "type",
        "teu",
        "load_type",
        "cargo_type"
      ],
      "properties": {
        "number": {
          "type": [
            "string",
            "null"
          ],
          "description": "Container number."
        },
        "type": {
          "oneOf": [
            {
              "$ref": "#/$defs/ContainerSizeType"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "teu": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "TEU equivalent of the container."
        },
        "load_type": {
          "oneOf": [
            {
              "$ref": "#/$defs/ContainerLoadType"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "cargo_type": {
          "oneOf": [
            {
              "$ref": "#/$defs/CargoType"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        }
      }
    },
    "ShipmentContractType": {
      "type": "string",
      "description": "Type of freight contract.",
      "enum": [
        "spot",
        "contract",
        "tender"
      ]
    },
    "ShipmentDateOrDateTime": {
      "description": "A date (YYYY-MM-DD) or date-time (RFC 3339).",
      "oneOf": [
        {
          "type": "string",
          "x-lune-name": "Date and time",
          "format": "date-time"
        },
        {
          "type": "string",
          "x-lune-name": "Date",
          "format": "date"
        }
      ]
    },
    "ShipmentEmissions": {
      "type": "object",
      "description": "Calculated emissions for the entire shipment, broken down by\ncarriage phase (pre, main, on) and pollutant.\nAll CO2e and pollutant mass values, including carriage-phase breakdowns,\nare in kilograms. All emission intensity values are in grams of CO2e per\ntonne-kilometre. Latitude and longitude values are in decimal degrees.\n",
      "required": [
        "estimate_id",
        "origin_street_line1",
        "origin_street_line2",
        "origin_postcode",
        "origin_city",
        "origin_country_code",
        "origin_locode",
        "origin_code",
        "origin_latitude",
        "origin_longitude",
        "destination_street_line1",
        "destination_street_line2",
        "destination_postcode",
        "destination_city",
        "destination_country_code",
        "destination_locode",
        "destination_code",
        "destination_latitude",
        "destination_longitude",
        "distance_km",
        "total_emissions",
        "wtt",
        "ttw",
        "pre_carriage_total",
        "pre_carriage_wtt",
        "pre_carriage_ttw",
        "main_carriage_total",
        "main_carriage_wtt",
        "main_carriage_ttw",
        "on_carriage_total",
        "on_carriage_wtt",
        "on_carriage_ttw",
        "intensity",
        "pre_carriage_intensity",
        "main_carriage_intensity",
        "on_carriage_intensity",
        "intensity_wtt",
        "intensity_ttw",
        "intensity_pre_carriage_wtt",
        "intensity_pre_carriage_ttw",
        "intensity_main_carriage_wtt",
        "intensity_main_carriage_ttw",
        "intensity_on_carriage_wtt",
        "intensity_on_carriage_ttw",
        "particles_total",
        "particles_wtt",
        "particles_ttw",
        "particles_pre_carriage_total",
        "particles_pre_carriage_wtt",
        "particles_pre_carriage_ttw",
        "particles_main_carriage_total",
        "particles_main_carriage_wtt",
        "particles_main_carriage_ttw",
        "particles_on_carriage_total",
        "particles_on_carriage_wtt",
        "particles_on_carriage_ttw",
        "carbon_dioxide_total",
        "carbon_dioxide_wtt",
        "carbon_dioxide_ttw",
        "carbon_dioxide_pre_carriage_total",
        "carbon_dioxide_pre_carriage_wtt",
        "carbon_dioxide_pre_carriage_ttw",
        "carbon_dioxide_main_carriage_total",
        "carbon_dioxide_main_carriage_wtt",
        "carbon_dioxide_main_carriage_ttw",
        "carbon_dioxide_on_carriage_total",
        "carbon_dioxide_on_carriage_wtt",
        "carbon_dioxide_on_carriage_ttw",
        "nitrogen_oxides_total",
        "nitrogen_oxides_wtt",
        "nitrogen_oxides_ttw",
        "nitrogen_oxides_pre_carriage_total",
        "nitrogen_oxides_pre_carriage_wtt",
        "nitrogen_oxides_pre_carriage_ttw",
        "nitrogen_oxides_main_carriage_total",
        "nitrogen_oxides_main_carriage_wtt",
        "nitrogen_oxides_main_carriage_ttw",
        "nitrogen_oxides_on_carriage_total",
        "nitrogen_oxides_on_carriage_wtt",
        "nitrogen_oxides_on_carriage_ttw",
        "sulfur_dioxides_total",
        "sulfur_dioxides_wtt",
        "sulfur_dioxides_ttw",
        "sulfur_dioxides_pre_carriage_total",
        "sulfur_dioxides_pre_carriage_wtt",
        "sulfur_dioxides_pre_carriage_ttw",
        "sulfur_dioxides_main_carriage_total",
        "sulfur_dioxides_main_carriage_wtt",
        "sulfur_dioxides_main_carriage_ttw",
        "sulfur_dioxides_on_carriage_total",
        "sulfur_dioxides_on_carriage_wtt",
        "sulfur_dioxides_on_carriage_ttw",
        "non_methane_hydro_carbons_total",
        "non_methane_hydro_carbons_wtt",
        "non_methane_hydro_carbons_ttw",
        "non_methane_hydro_carbons_pre_carriage_total",
        "non_methane_hydro_carbons_pre_carriage_wtt",
        "non_methane_hydro_carbons_pre_carriage_ttw",
        "non_methane_hydro_carbons_main_carriage_total",
        "non_methane_hydro_carbons_main_carriage_wtt",
        "non_methane_hydro_carbons_main_carriage_ttw",
        "non_methane_hydro_carbons_on_carriage_total",
        "non_methane_hydro_carbons_on_carriage_wtt",
        "non_methane_hydro_carbons_on_carriage_ttw"
      ],
      "properties": {
        "estimate_id": {
          "type": [
            "string",
            "null"
          ],
          "description": "Unique identifier of the emission estimate associated with this shipment."
        },
        "origin_street_line1": {
          "type": [
            "string",
            "null"
          ],
          "description": "Origin street address line 1."
        },
        "origin_street_line2": {
          "type": [
            "string",
            "null"
          ],
          "description": "Origin street address line 2."
        },
        "origin_postcode": {
          "type": [
            "string",
            "null"
          ],
          "description": "Origin postcode."
        },
        "origin_city": {
          "type": [
            "string",
            "null"
          ],
          "description": "Origin city."
        },
        "origin_country_code": {
          "type": [
            "string",
            "null"
          ],
          "description": "Origin country code (ISO 3166-1 alpha-3)."
        },
        "origin_locode": {
          "type": [
            "string",
            "null"
          ],
          "description": "Origin UN/LOCODE."
        },
        "origin_code": {
          "type": [
            "string",
            "null"
          ],
          "description": "Origin airport code."
        },
        "origin_latitude": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^-?[0-9]+(\\.[0-9]+)?$",
          "description": "Origin latitude."
        },
        "origin_longitude": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^-?[0-9]+(\\.[0-9]+)?$",
          "description": "Origin longitude."
        },
        "destination_street_line1": {
          "type": [
            "string",
            "null"
          ],
          "description": "Destination street address line 1."
        },
        "destination_street_line2": {
          "type": [
            "string",
            "null"
          ],
          "description": "Destination street address line 2."
        },
        "destination_postcode": {
          "type": [
            "string",
            "null"
          ],
          "description": "Destination postcode."
        },
        "destination_city": {
          "type": [
            "string",
            "null"
          ],
          "description": "Destination city."
        },
        "destination_country_code": {
          "type": [
            "string",
            "null"
          ],
          "description": "Destination country code (ISO 3166-1 alpha-3)."
        },
        "destination_locode": {
          "type": [
            "string",
            "null"
          ],
          "description": "Destination UN/LOCODE."
        },
        "destination_code": {
          "type": [
            "string",
            "null"
          ],
          "description": "Destination airport code."
        },
        "destination_latitude": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^-?[0-9]+(\\.[0-9]+)?$",
          "description": "Destination latitude."
        },
        "destination_longitude": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^-?[0-9]+(\\.[0-9]+)?$",
          "description": "Destination longitude."
        },
        "distance_km": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Total distance in kilometres."
        },
        "total_emissions": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Total emissions (kg CO2e)."
        },
        "wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Well-to-tank emissions (kg CO2e)."
        },
        "ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Tank-to-wheel emissions (kg CO2e)."
        },
        "pre_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "pre_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "pre_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "main_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "main_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "main_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "on_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "on_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "on_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "intensity": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "pre_carriage_intensity": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "main_carriage_intensity": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "on_carriage_intensity": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "intensity_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "intensity_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "intensity_pre_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "intensity_pre_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "intensity_main_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "intensity_main_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "intensity_on_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "intensity_on_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_pre_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_pre_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_pre_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_main_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_main_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_main_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_on_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_on_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "particles_on_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_pre_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_pre_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_pre_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_main_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_main_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_main_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_on_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_on_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "carbon_dioxide_on_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_pre_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_pre_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_pre_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_main_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_main_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_main_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_on_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_on_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "nitrogen_oxides_on_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_pre_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_pre_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_pre_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_main_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_main_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_main_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_on_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_on_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "sulfur_dioxides_on_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_pre_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_pre_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_pre_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_main_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_main_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_main_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_on_carriage_total": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_on_carriage_wtt": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "non_methane_hydro_carbons_on_carriage_ttw": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        }
      }
    },
    "ShipmentLegDatesResponse": {
      "type": "object",
      "description": "Departure and arrival dates for a shipment leg.",
      "required": [
        "etd",
        "eta",
        "atd",
        "ata"
      ],
      "properties": {
        "etd": {
          "description": "Estimated departure date or date-time.",
          "allOf": [
            {
              "oneOf": [
                {
                  "$ref": "#/$defs/ShipmentDateOrDateTime"
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            }
          ]
        },
        "eta": {
          "description": "Estimated arrival date or date-time.",
          "allOf": [
            {
              "oneOf": [
                {
                  "$ref": "#/$defs/ShipmentDateOrDateTime"
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            }
          ]
        },
        "atd": {
          "description": "Actual departure date or date-time.",
          "allOf": [
            {
              "oneOf": [
                {
                  "$ref": "#/$defs/ShipmentDateOrDateTime"
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            }
          ]
        },
        "ata": {
          "description": "Actual arrival date or date-time.",
          "allOf": [
            {
              "oneOf": [
                {
                  "$ref": "#/$defs/ShipmentDateOrDateTime"
                },
                {
                  "$ref": "#/$defs/NullEnum"
                }
              ]
            }
          ]
        }
      }
    },
    "ShipmentLegResponse": {
      "type": "object",
      "description": "A shipment leg with its calculated emissions.",
      "required": [
        "leg_id",
        "order",
        "method",
        "carriage",
        "origin",
        "destination",
        "distance",
        "carrier_name",
        "scac_code",
        "master_waybill",
        "transit_corridor",
        "restricted_transit_corridors",
        "load",
        "load_factor",
        "empty_run_factor",
        "passenger_utilisation",
        "dates",
        "emissions"
      ],
      "properties": {
        "leg_id": {
          "type": [
            "string",
            "null"
          ],
          "description": "Client-side identifier for this leg."
        },
        "order": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 1,
          "description": "1-based ordering of this leg within the shipment.\n"
        },
        "method": {
          "$ref": "#/$defs/ShipmentMethodResponse"
        },
        "carriage": {
          "oneOf": [
            {
              "$ref": "#/$defs/CarriageType"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "origin": {
          "oneOf": [
            {
              "$ref": "#/$defs/ShipmentLocation"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "destination": {
          "oneOf": [
            {
              "$ref": "#/$defs/ShipmentLocation"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "distance": {
          "oneOf": [
            {
              "$ref": "#/$defs/Distance"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "carrier_name": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the carrier for this leg."
        },
        "scac_code": {
          "type": [
            "string",
            "null"
          ],
          "description": "Standard Carrier Alpha Code."
        },
        "master_waybill": {
          "type": [
            "string",
            "null"
          ],
          "description": "Master waybill number."
        },
        "transit_corridor": {
          "description": "Transit corridor to force the route through for sea legs.\nOnly applicable to sea legs.\n",
          "oneOf": [
            {
              "$ref": "#/$defs/TransitCorridor"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "restricted_transit_corridors": {
          "description": "Transit corridors that should be avoided for sea legs.\nOnly applicable to sea legs.\n",
          "oneOf": [
            {
              "type": "array",
              "items": {
                "$ref": "#/$defs/TransitCorridor"
              }
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "load": {
          "oneOf": [
            {
              "$ref": "#/$defs/ShipmentLoadResponse"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "load_factor": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Measure of how fully the vehicle is utilising its cargo capacity (0 to 1).\n"
        },
        "empty_run_factor": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Proportion of the vehicle's travel that is done empty (0 to 1).\n"
        },
        "passenger_utilisation": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$",
          "description": "Passenger utilisation factor for passenger transport modes (0 to 1).\n"
        },
        "dates": {
          "oneOf": [
            {
              "$ref": "#/$defs/ShipmentLegDatesResponse"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "emissions": {
          "oneOf": [
            {
              "$ref": "#/$defs/LegEmissionsResponse"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        }
      }
    },
    "ShipmentLoadResponse": {
      "type": "object",
      "description": "Cargo load details for a shipment leg.",
      "required": [
        "mass",
        "volume",
        "piece_count",
        "chargeable_mass",
        "containers"
      ],
      "properties": {
        "mass": {
          "oneOf": [
            {
              "$ref": "#/$defs/Mass"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "volume": {
          "oneOf": [
            {
              "$ref": "#/$defs/Volume"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "piece_count": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Number of pieces in the load.",
          "minimum": 0
        },
        "chargeable_mass": {
          "oneOf": [
            {
              "$ref": "#/$defs/Mass"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "containers": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "$ref": "#/$defs/ShipmentContainerResponse"
          }
        }
      }
    },
    "ShipmentLocation": {
      "description": "A location specified as one of: an address, geographic coordinates, a UN/LOCODE, or an airport code.\n",
      "oneOf": [
        {
          "$ref": "#/$defs/Address"
        },
        {
          "$ref": "#/$defs/GeographicCoordinates"
        },
        {
          "$ref": "#/$defs/Locode"
        },
        {
          "$ref": "#/$defs/AirportCode"
        },
        {
          "$ref": "#/$defs/UnknownLocationCode"
        }
      ]
    },
    "ShipmentMethodResponse": {
      "x-lune-name": "Shipment transport method",
      "oneOf": [
        {
          "$ref": "#/$defs/SimpleShippingMethod"
        },
        {
          "$ref": "#/$defs/LogisticsSiteMethod"
        },
        {
          "$ref": "#/$defs/ShipmentRoadMethodResponse"
        },
        {
          "$ref": "#/$defs/FlightNumberMethodResponse"
        },
        {
          "$ref": "#/$defs/AircraftTypeMethodResponse"
        },
        {
          "$ref": "#/$defs/ShipmentSeaMethodResponse"
        },
        {
          "$ref": "#/$defs/ShipmentRailMethodResponse"
        },
        {
          "$ref": "#/$defs/ShipmentParcelMethodResponse"
        }
      ]
    },
    "ShipmentParcelMethodResponse": {
      "x-lune-name": "Parcel transport",
      "type": "string",
      "enum": [
        "parcel"
      ]
    },
    "ShipmentRailMethodResponse": {
      "x-lune-name": "Rail transport",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "train_type",
        "fuel_consumption",
        "biofuel_type",
        "biofuel_share",
        "feedstock_type"
      ],
      "properties": {
        "train_type": {
          "type": "string",
          "enum": [
            "diesel_freight_train",
            "electric_freight_train"
          ]
        },
        "fuel_consumption": {
          "oneOf": [
            {
              "$ref": "#/$defs/FuelConsumption"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "biofuel_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "biofuel_share": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "feedstock_type": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "ShipmentRoadMethodResponse": {
      "x-lune-name": "Road transport",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "vehicle_type",
        "fuel",
        "gradient",
        "situation",
        "emission_standard",
        "refrigerated",
        "truck_license_plate",
        "trailer_license_plate",
        "vin",
        "road_type",
        "gross_vehicle_mass_rating",
        "fuel_consumption",
        "secondary_fuel_consumption",
        "biofuel_type",
        "biofuel_share",
        "feedstock_type"
      ],
      "properties": {
        "vehicle_type": {
          "oneOf": [
            {
              "$ref": "#/$defs/RoadVehicleType"
            },
            {
              "type": "string",
              "x-lune-name": "Inferred vehicle type",
              "enum": [
                "truck"
              ]
            }
          ]
        },
        "fuel": {
          "oneOf": [
            {
              "$ref": "#/$defs/RoadFuel"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "gradient": {
          "oneOf": [
            {
              "$ref": "#/$defs/RoadGradient"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "situation": {
          "oneOf": [
            {
              "$ref": "#/$defs/RoadSituation"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "emission_standard": {
          "oneOf": [
            {
              "$ref": "#/$defs/RoadEmissionStandard"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "refrigerated": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "truck_license_plate": {
          "type": [
            "string",
            "null"
          ]
        },
        "trailer_license_plate": {
          "type": [
            "string",
            "null"
          ]
        },
        "vin": {
          "type": [
            "string",
            "null"
          ]
        },
        "road_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "gross_vehicle_mass_rating": {
          "oneOf": [
            {
              "$ref": "#/$defs/Mass"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "fuel_consumption": {
          "oneOf": [
            {
              "$ref": "#/$defs/FuelConsumption"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "secondary_fuel_consumption": {
          "oneOf": [
            {
              "$ref": "#/$defs/FuelConsumption"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "biofuel_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "biofuel_share": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "feedstock_type": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "ShipmentSeaMethodResponse": {
      "x-lune-name": "Sea transport",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "vessel_imo_number",
        "vessel_type",
        "refrigerated",
        "vessel_name",
        "voyage_number",
        "fuel_consumption",
        "secondary_fuel_consumption",
        "biofuel_type",
        "biofuel_share",
        "feedstock_type"
      ],
      "properties": {
        "vessel_imo_number": {
          "type": [
            "string",
            "null"
          ]
        },
        "vessel_type": {
          "oneOf": [
            {
              "$ref": "#/$defs/SimpleSeaShippingMethod"
            },
            {
              "type": "string",
              "x-lune-name": "Container ship",
              "enum": [
                "container_ship"
              ]
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "refrigerated": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "vessel_name": {
          "type": [
            "string",
            "null"
          ]
        },
        "voyage_number": {
          "type": [
            "string",
            "null"
          ]
        },
        "fuel_consumption": {
          "oneOf": [
            {
              "$ref": "#/$defs/FuelConsumption"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "secondary_fuel_consumption": {
          "oneOf": [
            {
              "$ref": "#/$defs/FuelConsumption"
            },
            {
              "$ref": "#/$defs/NullEnum"
            }
          ]
        },
        "biofuel_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "biofuel_share": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "feedstock_type": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "ShipmentServiceLevel": {
      "type": "string",
      "description": "Service level for the shipment.",
      "enum": [
        "express",
        "economy",
        "priority"
      ]
    },
    "ShipmentTotals": {
      "type": "object",
      "description": "Approximate number of shipments matching the active filters.\n\nThese totals may lag behind the current shipment data.\nThe `emissions` filter does not affect them.\n",
      "required": [
        "all",
        "with_co2e",
        "without_co2e"
      ],
      "properties": {
        "all": {
          "type": "integer",
          "description": "Number of shipments."
        },
        "with_co2e": {
          "type": "integer",
          "description": "Number of shipments with calculated emissions."
        },
        "without_co2e": {
          "type": "integer",
          "description": "Number of shipments without calculated emissions."
        }
      }
    },
    "SimpleSeaShippingMethod": {
      "x-lune-name": "Single property transport method (Sea only)",
      "description": "For sea transport, values follow the pattern:\n\n`{vessel_type}_{vessel_carrying_capacity}_{vessel_fuel}`\n\nThe carrying capacity of the vessel is provided in deadweight kilotonnes. It is identified using `_Xdwkt` or `_over_Xdwkt` suffixes which indicate the vessels's upper or lower bounds respectively.\n",
      "type": "string",
      "enum": [
        "sea_bulk_carrier_10dwkt_hfo",
        "sea_bulk_carrier_10dwkt_vlsfo",
        "sea_bulk_carrier_10dwkt_mdo",
        "sea_bulk_carrier_35dwkt_hfo",
        "sea_bulk_carrier_35dwkt_vlsfo",
        "sea_bulk_carrier_35dwkt_mdo",
        "sea_bulk_carrier_60dwkt_hfo",
        "sea_bulk_carrier_60dwkt_vlsfo",
        "sea_bulk_carrier_60dwkt_mdo",
        "sea_bulk_carrier_100dwkt_hfo",
        "sea_bulk_carrier_100dwkt_vlsfo",
        "sea_bulk_carrier_100dwkt_mdo",
        "sea_bulk_carrier_200dwkt_hfo",
        "sea_bulk_carrier_200dwkt_vlsfo",
        "sea_bulk_carrier_200dwkt_mdo",
        "sea_bulk_carrier_over_200dwkt_hfo",
        "sea_bulk_carrier_over_200dwkt_vlsfo",
        "sea_bulk_carrier_over_200dwkt_mdo",
        "sea_chemical_tanker_5dwkt_hfo",
        "sea_chemical_tanker_5dwkt_vlsfo",
        "sea_chemical_tanker_5dwkt_mdo",
        "sea_chemical_tanker_10dwkt_hfo",
        "sea_chemical_tanker_10dwkt_vlsfo",
        "sea_chemical_tanker_10dwkt_mdo",
        "sea_chemical_tanker_20dwkt_hfo",
        "sea_chemical_tanker_20dwkt_vlsfo",
        "sea_chemical_tanker_20dwkt_mdo",
        "sea_chemical_tanker_40dwkt_hfo",
        "sea_chemical_tanker_40dwkt_vlsfo",
        "sea_chemical_tanker_40dwkt_mdo",
        "sea_chemical_tanker_over_40dwkt_hfo",
        "sea_chemical_tanker_over_40dwkt_vlsfo",
        "sea_chemical_tanker_over_40dwkt_mdo",
        "sea_general_cargo_5dwkt_hfo",
        "sea_general_cargo_5dwkt_vlsfo",
        "sea_general_cargo_5dwkt_mdo",
        "sea_general_cargo_10dwkt_hfo",
        "sea_general_cargo_10dwkt_vlsfo",
        "sea_general_cargo_10dwkt_mdo",
        "sea_general_cargo_20dwkt_hfo",
        "sea_general_cargo_20dwkt_vlsfo",
        "sea_general_cargo_20dwkt_mdo",
        "sea_general_cargo_over_20dwkt_hfo",
        "sea_general_cargo_over_20dwkt_vlsfo",
        "sea_general_cargo_over_20dwkt_mdo",
        "sea_liquefied_gas_tanker_50dwkt_hfo",
        "sea_liquefied_gas_tanker_50dwkt_vlsfo",
        "sea_liquefied_gas_tanker_50dwkt_mdo",
        "sea_liquefied_gas_tanker_100dwkt_hfo",
        "sea_liquefied_gas_tanker_100dwkt_vlsfo",
        "sea_liquefied_gas_tanker_100dwkt_mdo",
        "sea_liquefied_gas_tanker_200dwkt_hfo",
        "sea_liquefied_gas_tanker_200dwkt_vlsfo",
        "sea_liquefied_gas_tanker_200dwkt_mdo",
        "sea_liquefied_gas_tanker_over_200dwkt_hfo",
        "sea_liquefied_gas_tanker_over_200dwkt_vlsfo",
        "sea_liquefied_gas_tanker_over_200dwkt_mdo",
        "sea_oil_tanker_5dwkt_hfo",
        "sea_oil_tanker_5dwkt_vlsfo",
        "sea_oil_tanker_5dwkt_mdo",
        "sea_oil_tanker_10dwkt_hfo",
        "sea_oil_tanker_10dwkt_vlsfo",
        "sea_oil_tanker_10dwkt_mdo",
        "sea_oil_tanker_20dwkt_hfo",
        "sea_oil_tanker_20dwkt_vlsfo",
        "sea_oil_tanker_20dwkt_mdo",
        "sea_oil_tanker_60dwkt_hfo",
        "sea_oil_tanker_60dwkt_vlsfo",
        "sea_oil_tanker_60dwkt_mdo",
        "sea_oil_tanker_80dwkt_hfo",
        "sea_oil_tanker_80dwkt_vlsfo",
        "sea_oil_tanker_80dwkt_mdo",
        "sea_oil_tanker_112dwkt_hfo",
        "sea_oil_tanker_112dwkt_vlsfo",
        "sea_oil_tanker_112dwkt_mdo",
        "sea_oil_tanker_200dwkt_hfo",
        "sea_oil_tanker_200dwkt_vlsfo",
        "sea_oil_tanker_200dwkt_mdo",
        "sea_oil_tanker_over_200dwkt_hfo",
        "sea_oil_tanker_over_200dwkt_vlsfo",
        "sea_oil_tanker_over_200dwkt_mdo",
        "sea_other_liquids_tanker_1dwkt_hfo",
        "sea_other_liquids_tanker_1dwkt_vlsfo",
        "sea_other_liquids_tanker_1dwkt_mdo",
        "sea_other_liquids_tanker_over_1dwkt_hfo",
        "sea_other_liquids_tanker_over_1dwkt_vlsfo",
        "sea_other_liquids_tanker_over_1dwkt_mdo",
        "sea_ropax_2dwkt_hfo",
        "sea_ropax_2dwkt_vlsfo",
        "sea_ropax_2dwkt_mdo",
        "sea_ropax_5dwkt_hfo",
        "sea_ropax_5dwkt_vlsfo",
        "sea_ropax_5dwkt_mdo",
        "sea_ropax_10dwkt_hfo",
        "sea_ropax_10dwkt_vlsfo",
        "sea_ropax_10dwkt_mdo",
        "sea_ropax_20dwkt_hfo",
        "sea_ropax_20dwkt_vlsfo",
        "sea_ropax_20dwkt_mdo",
        "sea_ropax_over_20dwkt_hfo",
        "sea_ropax_over_20dwkt_vlsfo",
        "sea_ropax_over_20dwkt_mdo",
        "sea_refrigerated_bulk_carrier_2dwkt_hfo",
        "sea_refrigerated_bulk_carrier_2dwkt_vlsfo",
        "sea_refrigerated_bulk_carrier_2dwkt_mdo",
        "sea_refrigerated_bulk_carrier_6dwkt_hfo",
        "sea_refrigerated_bulk_carrier_6dwkt_vlsfo",
        "sea_refrigerated_bulk_carrier_6dwkt_mdo",
        "sea_refrigerated_bulk_carrier_10dwkt_hfo",
        "sea_refrigerated_bulk_carrier_10dwkt_vlsfo",
        "sea_refrigerated_bulk_carrier_10dwkt_mdo",
        "sea_refrigerated_bulk_carrier_over_10dwkt_hfo",
        "sea_refrigerated_bulk_carrier_over_10dwkt_vlsfo",
        "sea_refrigerated_bulk_carrier_over_10dwkt_mdo",
        "sea_roro_5dwkt_hfo",
        "sea_roro_5dwkt_vlsfo",
        "sea_roro_5dwkt_mdo",
        "sea_roro_10dwkt_hfo",
        "sea_roro_10dwkt_vlsfo",
        "sea_roro_10dwkt_mdo",
        "sea_roro_15dwkt_hfo",
        "sea_roro_15dwkt_vlsfo",
        "sea_roro_15dwkt_mdo",
        "sea_roro_over_15dwkt_hfo",
        "sea_roro_over_15dwkt_vlsfo",
        "sea_roro_over_15dwkt_mdo",
        "sea_vehicle_carrier_30dwkt_hfo",
        "sea_vehicle_carrier_30dwkt_vlsfo",
        "sea_vehicle_carrier_30dwkt_mdo",
        "sea_vehicle_carrier_50dwkt_hfo",
        "sea_vehicle_carrier_50dwkt_vlsfo",
        "sea_vehicle_carrier_50dwkt_mdo",
        "sea_vehicle_carrier_over_50dwkt_hfo",
        "sea_vehicle_carrier_over_50dwkt_vlsfo",
        "sea_vehicle_carrier_over_50dwkt_mdo"
      ]
    },
    "SimpleShippingMethod": {
      "x-lune-name": "Single property transport method",
      "type": "string",
      "description": "Provide a single enum value to describe the transport method. For each transport method, enums follow a consistent pattern, as described below.\n\nNote: This input only applies for inland waterways, road, rail, and air transport. For sea transport, please use the Single property transport method (Sea only).\n\n# Inland waterways\nFor inland waterways, values follow the pattern:\n\n`inland_waterway_{vessel_type}_{size}`\n\nOnly the `vessel_type` is required.\n\nThe full list of available enums is provided below. The following section lists only those enums that include a size component, with each size mapped to its corresponding vessel dimensions.\n\n* `inland_waterway_motor_vessel_extra_small`: Under 50 m (650 t)\n* `inland_waterway_motor_vessel_small`: 50–80 m (650–1000 t)\n* `inland_waterway_motor_vessel_medium`: 85–110 m (1000–2000 t)\n* `inland_waterway_motor_vessel_large`: 135 m (2000–3000 t)\n* `inland_waterway_coupled_convoy`: 163–185 m\n* `inland_waterway_pushed_convoy_small`: 2 barges\n* `inland_waterway_pushed_convoy_medium`: 4–5 barges\n* `inland_waterway_pushed_convoy_large`: 6 barges\n* `inland_waterway_container_vessel_medium`: 110 m\n* `inland_waterway_container_vessel_large`: 135 m\n\n# Road transport\nFor road transport, values follow the pattern:\n\n`truck_{vehicle_type}_{vehicle_size}_{fuel}_{load_characteristics}`\n\nOnly the `vehicle_type` is required. If `vehicle_size`, `fuel`, or `load_characteristics` are omitted, they default to `generic`, `diesel`, and `average` respectively.\n\nTo indicate a North American vehicle, use the prefix `truck_na` instead of `truck`.\n\nThe full list of available enums is provided below. The following section includes only those enums that specify a vehicle size, with each size mapped to its corresponding Gross Vehicle Weight (GVW). In some cases, size is included directly in the property name (e.g., truck_rigid_7_5t).\n\n* `truck_generic_van`: Under 3.5 t GVW\n* `truck_generic_urban`: 3.5-7.5 t GVW\n* `truck_generic_mgv`: 7.5-20 t GVW\n* `truck_generic_hgv`: More than 20 t GVW\n\n# Rail transport\nFor rail transport, values follow the pattern:\n\n`{train_type}_{region}_{load_characteristics}`\n\nOnly `train_type` (either `diesel_freight_train` or electric_freight_train) is required.\n\nThe region value is used to request either an EU or US emission factor. If omitted, an EU emission factor is used. When load characteristics are omitted, `average` is assumed.\n\n# Air transport\nFor air transport, Lune supports one of three values:\n\n* `cargo_plane`: Indicating a full freighter plane.\n* `passenger_plane`: Indicating the plane only contains belly freight.\n* `plane`: When the freight capacity of the plane is unknown. This value uses a weighted average of cargo and passenger planes.\n",
      "enum": [
        "inland_waterway_motor_vessel_extra_small",
        "inland_waterway_motor_vessel_small",
        "inland_waterway_motor_vessel_medium",
        "inland_waterway_motor_vessel_large",
        "inland_waterway_coupled_convoy",
        "inland_waterway_pushed_convoy_small",
        "inland_waterway_pushed_convoy_medium",
        "inland_waterway_pushed_convoy_large",
        "inland_waterway_tanker",
        "inland_waterway_container_vessel_medium",
        "inland_waterway_container_vessel_large",
        "inland_waterway_container_vessel_convoy",
        "diesel_freight_train",
        "electric_freight_train",
        "rail",
        "diesel_freight_train_us_average",
        "diesel_freight_train_eu_average",
        "diesel_freight_train_eu_container",
        "diesel_freight_train_eu_cars",
        "diesel_freight_train_eu_chemicals",
        "diesel_freight_train_eu_coal_steel",
        "diesel_freight_train_eu_building_materials",
        "diesel_freight_train_eu_manufactured_products",
        "diesel_freight_train_eu_cereals",
        "diesel_freight_train_eu_truck_and_trailer",
        "diesel_freight_train_eu_trailer_only",
        "electric_freight_train_eu_average",
        "electric_freight_train_eu_container",
        "electric_freight_train_eu_cars",
        "electric_freight_train_eu_chemicals",
        "electric_freight_train_eu_coal_steel",
        "electric_freight_train_eu_building_materials",
        "electric_freight_train_eu_manufactured_products",
        "electric_freight_train_eu_cereals",
        "electric_freight_train_eu_truck_and_trailer",
        "electric_freight_train_eu_trailer_only",
        "diesel_truck",
        "diesel_truck_refrigerated",
        "truck_generic_van",
        "truck_generic_urban",
        "truck_generic_mgv",
        "truck_generic_hgv",
        "truck_rigid_7_5t",
        "truck_rigid_12t",
        "truck_rigid_20t",
        "truck_rigid_26t",
        "truck_rigid_32t",
        "truck_articulated_34t",
        "truck_articulated_40t",
        "truck_articulated_44t",
        "truck_articulated_60t",
        "truck_articulated_72t",
        "truck_generic_van_petrol",
        "truck_generic_van_cng",
        "truck_generic_van_lpg",
        "truck_rigid_7_5t_cng",
        "truck_rigid_12t_cng",
        "truck_rigid_20t_cng",
        "truck_rigid_26t_cng",
        "truck_rigid_26t_lng",
        "truck_articulated_44t_light_load",
        "truck_articulated_44t_heavy_load",
        "truck_articulated_44t_container",
        "truck_articulated_60t_heavy_load",
        "truck_articulated_60t_container",
        "truck_articulated_72t_heavy_load",
        "truck_articulated_72t_container",
        "truck_articulated_40t_si_engine_lng_container",
        "truck_articulated_40t_si_engine_cng",
        "truck_articulated_40t_si_engine_bio_lng",
        "truck_articulated_40t_si_engine_cng_container",
        "truck_articulated_40t_si_engine_bio_lng_container",
        "truck_articulated_40t_hpdi_lng_diesel",
        "truck_articulated_40t_hpdi_cng_diesel",
        "truck_articulated_40t_hpdi_bio_lng_diesel",
        "truck_generic_van_electric",
        "truck_rigid_7_5t_electric",
        "truck_rigid_7_5t_electric_light_load",
        "truck_rigid_12t_electric",
        "truck_rigid_12t_electric_light_load",
        "truck_rigid_20t_electric",
        "truck_rigid_20t_electric_light_load",
        "truck_rigid_40t_electric",
        "truck_rigid_40t_electric_light_load",
        "truck_generic_van_refrigerated",
        "truck_generic_urban_refrigerated",
        "truck_generic_mgv_refrigerated",
        "truck_generic_hgv_refrigerated",
        "truck_rigid_7_5t_refrigerated",
        "truck_rigid_12t_refrigerated",
        "truck_rigid_20t_refrigerated",
        "truck_rigid_26t_refrigerated",
        "truck_rigid_32t_refrigerated",
        "truck_articulated_34t_refrigerated",
        "truck_articulated_40t_refrigerated",
        "truck_articulated_44t_refrigerated",
        "truck_articulated_60t_refrigerated",
        "truck_articulated_72t_refrigerated",
        "truck_generic_van_petrol_refrigerated",
        "truck_generic_van_cng_refrigerated",
        "truck_generic_van_lpg_refrigerated",
        "truck_rigid_7_5t_cng_refrigerated",
        "truck_rigid_12t_cng_refrigerated",
        "truck_rigid_20t_cng_refrigerated",
        "truck_rigid_26t_cng_refrigerated",
        "truck_rigid_26t_lng_refrigerated",
        "truck_articulated_44t_light_load_refrigerated",
        "truck_articulated_44t_heavy_load_refrigerated",
        "truck_articulated_44t_container_refrigerated",
        "truck_articulated_60t_heavy_load_refrigerated",
        "truck_articulated_60t_container_refrigerated",
        "truck_articulated_72t_heavy_load_refrigerated",
        "truck_articulated_72t_container_refrigerated",
        "truck_articulated_40t_si_engine_lng_container_refrigerated",
        "truck_articulated_40t_si_engine_cng_refrigerated",
        "truck_articulated_40t_si_engine_bio_lng_refrigerated",
        "truck_articulated_40t_si_engine_cng_container_refrigerated",
        "truck_articulated_40t_si_engine_bio_lng_container_refrigerated",
        "truck_articulated_40t_hpdi_lng_diesel_refrigerated",
        "truck_articulated_40t_hpdi_cng_diesel_refrigerated",
        "truck_articulated_40t_hpdi_bio_lng_diesel_refrigerated",
        "truck_generic_van_electric_refrigerated",
        "truck_rigid_7_5t_electric_refrigerated",
        "truck_rigid_7_5t_electric_light_load_refrigerated",
        "truck_rigid_12t_electric_refrigerated",
        "truck_rigid_12t_electric_light_load_refrigerated",
        "truck_rigid_20t_electric_refrigerated",
        "truck_rigid_20t_electric_light_load_refrigerated",
        "truck_rigid_40t_electric_refrigerated",
        "truck_rigid_40t_electric_light_load_refrigerated",
        "truck_na_van",
        "truck_na_general",
        "truck_na_auto_carrier",
        "truck_na_dray",
        "truck_na_expedited",
        "truck_na_flatbed",
        "truck_na_heavy_bulk",
        "truck_na_dry_van_ltl",
        "truck_na_dry_van_tl",
        "truck_na_mixed",
        "truck_na_moving",
        "truck_na_package",
        "truck_na_refrigerated",
        "truck_na_specialized",
        "truck_na_tanker",
        "plane",
        "passenger_plane",
        "cargo_plane"
      ]
    },
    "Timestamp": {
      "type": "string",
      "format": "date-time",
      "description": "An <a href=\"https://pretty-rfc.herokuapp.com/RFC3339\">RFC 3339</a>-formatted timestamp."
    },
    "TransitCorridor": {
      "description": "The transit corridor used for sea shipments. This is used to improve the accuracy of the estimate.\nIf not provided, the shortest route is calculated.\n\nOnly applicable to sea shipments.\n",
      "type": "string",
      "enum": [
        "panama",
        "suez",
        "cape_of_good_hope",
        "northwest_passage",
        "northeast_passage",
        "cape_horn"
      ]
    },
    "UnknownLocationCode": {
      "x-lune-name": "Unknown location code",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "unknown_code"
      ],
      "properties": {
        "unknown_code": {
          "type": "string"
        }
      },
      "description": "Raw code-like location value that could not be validated as either a known airport code\n(IATA/ICAO) or a UN/LOCODE.\n"
    },
    "Volume": {
      "type": "object",
      "description": "A volume measurement.",
      "required": [
        "amount",
        "unit"
      ],
      "properties": {
        "amount": {
          "type": "string",
          "pattern": "^[0-9]+(\\.[0-9]+)?$"
        },
        "unit": {
          "$ref": "#/$defs/VolumeUnit"
        }
      }
    },
    "VolumeUnit": {
      "type": "string",
      "description": "Unit of volume measurement.",
      "enum": [
        "l",
        "m3"
      ]
    }
  }
}