Handelswerk
container load
Loads a package list into one loading space and returns the plan, not an estimate. The floor starts as one free surface; packages are sorted by footprint, then height, then weight, then identifier, and each one is placed on the lowest, then frontmost, then smallest free surface it fits on, turned by 90 degrees around the vertical axis where that makes it fit.
POST https://handel.halowerk.com/v1/container-loadEingaben
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| container | object | Ja | Inner loading space and payload of the container, trailer or swap body. |
| items | array | Ja | The packages to load. Each entry is one type with a quantity. |
| axles | array | Nein | Exactly two axle groups, for the static axle load. With more than two the load split is statically indeterminate and cannot be computed from geometry alone, so only two are accepted. |
Vollständiges Eingabeschema anzeigen
{
"type": "object",
"required": [
"container",
"items"
],
"additionalProperties": false,
"properties": {
"container": {
"type": "object",
"required": [
"length_mm",
"width_mm",
"height_mm",
"max_payload_kg"
],
"additionalProperties": false,
"description": "Inner loading space and payload of the container, trailer or swap body.",
"properties": {
"length_mm": {
"type": "number",
"minimum": 1,
"maximum": 30000,
"description": "Inner length in millimetres. The x axis, measured from the front wall."
},
"width_mm": {
"type": "number",
"minimum": 1,
"maximum": 5000,
"description": "Inner width in millimetres. The y axis."
},
"height_mm": {
"type": "number",
"minimum": 1,
"maximum": 5000,
"description": "Inner height in millimetres. The z axis."
},
"max_payload_kg": {
"type": "number",
"minimum": 0,
"maximum": 100000,
"description": "Payload in kilograms. Loading stops before this is exceeded."
}
}
},
"items": {
"type": "array",
"minItems": 1,
"maxItems": 200,
"description": "The packages to load. Each entry is one type with a quantity.",
"items": {
"type": "object",
"required": [
"item_id",
"length_mm",
"width_mm",
"height_mm",
"weight_kg"
],
"additionalProperties": false,
"properties": {
"item_id": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Your identifier for this package type. Must be unique within the request."
},
"length_mm": {
"type": "number",
"minimum": 1,
"maximum": 30000,
"description": "Length of one package in millimetres."
},
"width_mm": {
"type": "number",
"minimum": 1,
"maximum": 30000,
"description": "Width of one package in millimetres."
},
"height_mm": {
"type": "number",
"minimum": 1,
"maximum": 30000,
"description": "Height of one package in millimetres. Never used as a footprint side: packages are not tipped."
},
"weight_kg": {
"type": "number",
"minimum": 0,
"maximum": 100000,
"description": "Weight of one package in kilograms."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 1000,
"default": 1,
"description": "How many packages of this type."
},
"stackable": {
"type": "boolean",
"default": true,
"description": "Whether anything may be placed on top of this package. False ends the stack above it."
},
"rotatable": {
"type": "boolean",
"default": true,
"description": "Whether the package may be turned by 90 degrees around the vertical axis. Never tipped."
},
"max_stack_load_kg": {
"type": "number",
"minimum": 0,
"maximum": 100000,
"description": "How much weight one package can carry on top of it. Checked against the load actually resting on it."
}
}
}
},
"axles": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"description": "Exactly two axle groups, for the static axle load. With more than two the load split is statically indeterminate and cannot be computed from geometry alone, so only two are accepted.",
"items": {
"type": "object",
"required": [
"axle_id",
"position_mm"
],
"additionalProperties": false,
"properties": {
"axle_id": {
"type": "string",
"minLength": 1,
"maxLength": 32,
"description": "Your label for this axle group, for example front or bogie."
},
"position_mm": {
"type": "number",
"minimum": -30000,
"maximum": 60000,
"description": "Position along the x axis in millimetres, measured from the front wall of the loading space. May be negative if the axle sits ahead of it."
},
"max_load_kg": {
"type": "number",
"minimum": 0,
"maximum": 100000,
"description": "Permitted load on this axle group in kilograms, payload share only."
}
}
}
}
}
}Veröffentlichtes Eingabebeispiel
{
"container": {
"length_mm": 5900,
"width_mm": 2350,
"height_mm": 2390,
"max_payload_kg": 28000
},
"items": [
{
"item_id": "EUR-PAL-HIGH",
"length_mm": 1200,
"width_mm": 800,
"height_mm": 1600,
"weight_kg": 620,
"quantity": 4,
"stackable": false,
"rotatable": true
},
{
"item_id": "EUR-PAL-LOW",
"length_mm": 1200,
"width_mm": 800,
"height_mm": 750,
"weight_kg": 410,
"quantity": 8,
"stackable": true,
"rotatable": true,
"max_stack_load_kg": 900
},
{
"item_id": "CRATE-S",
"length_mm": 600,
"width_mm": 400,
"height_mm": 400,
"weight_kg": 35,
"quantity": 20,
"stackable": true,
"rotatable": true,
"max_stack_load_kg": 120
}
],
"axles": [
{
"axle_id": "front",
"position_mm": 900,
"max_load_kg": 7000
},
{
"axle_id": "rear",
"position_mm": 4600,
"max_load_kg": 18000
}
]
}Ergebnis & Dokumentation
Veröffentlichtes Ergebnisschema anzeigen
{
"$ref": "https://handel.halowerk.com/v1/container-load/schema#/outputSchema"
}Veröffentlichtes Ergebnisbeispiel öffnen
Maschinenlesbare Dokumentation dieses Hubs
Quelle dieser Seite: der veröffentlichte HALOWERK-Katalog. Stand: 2026-11-01, 15:19 UTC.
Weitere Endpunkte dieses Hubs
- Handelswerk0,005 USDC
allergen check
POSThttps://handel.halowerk.com/v1/allergen-checkReturns what a product declares about allergens: the allergen tags, the trace warnings, the ingredients text in its original language, and the completeness of the record. The distinction it holds to throughout is between not declared and no
- Handelswerk0,004 USDC
delivery note json
POSThttps://handel.halowerk.com/v1/delivery-note-jsonAdds structured delivery-note extraction alongside the existing invoice extractor and purchase-order matcher; does not duplicate invoice-extract or filing-to-json. Strict namespace-aware XML parsing, no model or foreign API. Only supplied s
- Handelswerk0,006 USDC
demand forecast
POSThttps://handel.halowerk.com/v1/demand-forecastForecasts one SKU from a history you supply. The pipeline is fixed and fully disclosed in the response rather than hidden behind a score.