Skip to content
Navo24Navo24
POSTAPI key

Compute a load plan

POSTapi.navo24.com/v1/loading/plan

Pack a list of items into equipment and get a 3D plan plus a compliance verdict: utilisation, centre of gravity, crush and securing.

Request body

itemsarrayrequired

The cargo: each item has id, type (box, pallet, drum, …), length, width and height in mm, weightKg and quantity.

equipmentCodestring

Target equipment, for example 40HC. Omit to auto-size.

modestring

sea or road.

optionsobject

Solver options, for example stacking or DG rules.

Response schema

30 fields

Derived from the example response, nested as the JSON is.

okboolean

Whether the request succeeded.

enginestring

Solver that produced the plan.

equipmentCodestring

Target equipment code.

autoSizedboolean

True when equipment was chosen automatically.

planobject

On LoadingMCP, the computed load plan. Inside a tracking observability lens, true when we hold a schedule for the shipment.

equipmentCodestring

Target equipment code.

binsnumber
placementsobject[]
placements[]object
itemIdstring
unitnumber
binnumber
xnumber
ynumber
znumber
rotationnumber
weightKgnumber
metricsobject
volumeUtilPctnumber
payloadUtilPctnumber
usedWeightKgnumber
cogobject

Centre of gravity, normalised 0 to 1.

xnumber
ynumber
znumber
unplacedItemIdsobject[]
crushViolationsobject[]
complianceobject
readyboolean
blockersobject[]
warningsstring[]
curl -X POST 'https://api.navo24.com/v1/loading/plan' \
  -H "Authorization: Bearer lmcp_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"equipmentCode":"40HC","items":[{"id":"PLT-A","type":"pallet","length":1200,"width":1000,"height":1450,"weightKg":640,"quantity":18}]}'
Response
{
  "ok": true,
  "engine": "packingsolver",
  "equipmentCode": "40HC",
  "autoSized": false,
  "plan": {
    "equipmentCode": "40HC",
    "bins": 1,
    "placements": [
      {
        "itemId": "PLT-A",
        "unit": 0,
        "bin": 0,
        "x": 581.04,
        "y": 125,
        "z": 0,
        "rotation": 0,
        "weightKg": 640
      },
      {
        "itemId": "PLT-A",
        "unit": 1,
        "bin": 0,
        "x": 581.04,
        "y": 1125,
        "z": 0,
        "rotation": 1,
        "weightKg": 640
      }
    ],
    "metrics": {
      "volumeUtilPct": 41.1,
      "payloadUtilPct": 43.5,
      "usedWeightKg": 11520,
      "cog": {
        "x": 5531.040000000001,
        "y": 1175,
        "z": 725
      },
      "unplacedItemIds": [],
      "crushViolations": [],
      "compliance": {
        "ready": true,
        "blockers": [],
        "warnings": [
          "Securing required — Block or lash the tall units: item-0: tipping-unstable under road accelerations as placed (EN 12195-1 statics — 0.8 g forward / 0.6 g sideways exceeds the base edge lever). Units blocked on all sides by adjacent cargo are held by the stow; block or top-over lash any that stand free (end of a row, part-filled tier) before the doors close."
        ]
      }
    }
  }
}