Skip to main content
1D (linear) nesting solves the cutting-stock problem for one-dimensional material: given a set of required lengths and the stock lengths you have, work out how to cut them with the least waste. Use it for bar, tube, extrusion, and profile. Like every other nesting endpoint, 1D is asynchronous: you submit the request, get a RequestId back immediately, and collect the cutting plan once the nest has run on a nester. See the nesting workflow for the shared submit → poll → result model, webhooks, SignalR, and delayed start.

1. Submit the request

POST /v1/nesting/1D accepts a Nesting1DRequest (wrapped as Request) and returns a RequestId. The job is queued and runs on a nester — it is not computed inline in the response. (Also served unversioned at /nesting/1D for existing callers.)

2. Wait for completion

Poll job status with the RequestId until it reports Completed — or supply a ResultsWebhookUri above to be called instead:
The status values (Queued, Running, Completed, Failed) are shared with the 2D flow — see job status.

3. Fetch the cutting plan

Once status is Completed, POST /v1/nesting/1D/result with the RequestId to get a Nesting1DApiResponse. Status reports how the nest itself went — Success, Warning, or Failure — and Result carries the cutting plan. Each nest is one piece of stock: Multiplicity is how many identical pieces are cut that way, and PlacedX is where a placement starts along the bar.
If the optimiser ran but could not produce a plan, Status is Failure with the reason in StatusReport. If you fetch before the nest has finished, you get 404 with a message to keep polling /nesting/status.

Errors

A rejected submit returns the standard ResponseStatus error object with the reason in Message, and no RequestId — the request never entered the queue.
See the Nesting section of the API Reference for the full Nesting1DRequest and Nesting1DApiResponse shapes.

When to use it

  • Cutting linear material (bar, tube, profile) rather than sheet.
  • Minimising offcut waste across a batch of required lengths.