JSON Schema
{
"$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"
],
# --- truncated at 32 KB (87 KB total) ---
# Full source: https://artifacts.apis.io/lune/json-schema/lune-paginated-shipments-schema.json
Work with this as data
Every JSON Schema 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 schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/lune-paginated-shipments"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.