# HALOWERK Warehouse Slotting Optimizer

> HALOWERK Warehouse Slotting Optimizer is a paid API for AI agents from handel.halowerk.com, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-11).

Optimizes warehouse slot assignments by computing an optimal placement plan that minimizes travel distance given SKU pick frequencies, storage location constraints, and joint-pick affinities.

## Facts

- Endpoint: POST https://handel.halowerk.com/v1/slotting-plan?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/halowerk-warehouse-slotting-optimizer-e7dad20b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_aPRjGZvEYpe2Qm6Q4dH1L

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability halowerk-warehouse-slotting-optimizer-e7dad20b -d '<json body>'
```

Example prompt: Optimize the slot assignments for our warehouse: we have 3 storage locations — A1 at 5m, A2 at 12m, and B1 at 20m from the pick-and-drop point — and 2 SKUs: SKU-001 with 500 picks per period weighing 2kg per unit, and SKU-002 with 80 picks per period weighing 8kg, max weight at A1 is 5kg. Give me the slotting plan that minimizes total travel distance.

## When to prefer this

Choose this endpoint when you need to generate or refresh a warehouse slotting plan and have structured data on pick frequencies, travel distances, and storage constraints. It is purpose-built for warehouse slot assignment optimization rather than general-purpose optimization solvers, and handles weight/volume constraints and joint-pick affinities natively. Prefer it over manual ABC analysis when you need constraint-aware, distance-minimizing assignments at scale (up to 2000 SKUs and 5000 locations).

## Known failure modes

- Duplicate SKU identifiers or location IDs within a request cause a validation error
- SKU weight or volume exceeds all available location limits, making placement infeasible
- More SKUs than available locations results in an infeasible assignment
- Missing required fields (sku, picks_per_period, location_id, travel_distance_m) return a 422 validation error
- Affinities referencing SKU IDs not present in the SKU list return an error
- Exceeding 2000 SKUs or 5000 locations triggers a request-size error
- Payment failure or insufficient USDC balance results in a 402 Payment Required response

## How this service works

Takes a warehouse as a table and returns a placement. You supply the storage locations with their walking distance to the pick-and-drop point and, where they exist, their weight and volume limits; you supply the SKUs with pick frequency, weight and volume; and you may supply the joint-pick pairs.

## Output

Returns a slotting plan listing which SKU should be placed in which location, along with the computed total travel distance for the plan. If current_location_id fields were supplied, also provides a before-and-after comparison showing movement changes and travel distance improvement.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "skus": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "sku",
     "picks_per_period"
    ],
    "properties": {
     "sku": {
      "type": "string",
      "maxLength": 64,
      "minLength": 1,
      "description": "Your SKU identifier. Must be unique within the request."
     },
     "volume_l": {
      "type": "number",
      "maximum": 100000,
      "minimum": 0,
      "description": "Volume of one storage unit in litres. Checked against max_volume_l of the location."
     },
     "weight_kg": {
      "type": "number",
      "maximum": 100000,
      "minimum": 0,
      "description": "Weight of one storage unit in kilograms. Checked against max_weight_kg of the location."
     },
     "picks_per_period": {
      "type": "number",
      "maximum": 1000000,
      "minimum": 0,
      "description": "Number of picks in the period you are planning for. The period itself is yours; it only has to be the same for every SKU."
     },
     "current_location_id": {
      "type": "string",
      "maxLength": 64,
      "description": "Where the SKU sits today. Only used for the before-and-after comparison."
     }
    },
    "additionalProperties": false
   },
   "maxItems": 2000,
   "minItems": 1,
   "description": "The SKUs to place."
  },
  "locations": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "location_id",
     "travel_distance_m"
    ],
    "properties": {
     "zone": {
      "type": "string",
      "maxLength": 64,
      "description": "Free-text zone label, passed through unchanged."
     },
     "location_id": {
      "type": "string",
      "maxLength": 64,
      "minLength": 1,
      "description": "Your location identifier. Must be unique within the request."
     },
     "max_volume_l": {
      "type": "number",
      "maximum": 100000,
      "minimum": 0,
      "description": "Volume limit of this location in litres. Omitted means no limit."
     },
     "max_weight_kg": {
      "type": "number",
      "maximum": 100000,
      "minimum": 0,
      "description": "Weight limit of this location in kilograms. Omitted means no limit."
     },
     "travel_distance_m": {
      "type": "number",
      "maximum": 100000,
      "minimum": 0,
      "description": "One-way walking distance in metres from the pick-and-drop point to this location."
     }
    },
    "additionalProperties": false
   },
   "maxItems": 5000,
   "minItems": 1,
   "descri
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/halowerk-warehouse-slotting-optimizer-e7dad20b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from handel.halowerk.com](https://www.zero.xyz/host/handel.halowerk.com/llms.txt)
