Calculators

Optimise a cut list: pieces from stock lengths, or rectangles nested on sheets

Stateless: the cut list arrives and the plan goes back. The site's own optimiser, as its cut-list tool and the Construction Canvas run it.

post/optimise-cuts

Request

  • Base URL: https://api.craftquantities.com/v1
  • URL: https://api.craftquantities.com/v1/optimise-cuts
  • Auth: none declared

Query parameters

detail'full' | 'summary'

full (the default): the whole answer. summary: the result lines, the citation line and the page only — fewer tokens to read.

summary: the result lines, the citation and the page only (fewer tokens); full, the default: the whole answer. A POST body may carry detail instead.

format'json' | 'md'

md: the engine's Markdown report as text/markdown (or send Accept: text/markdown); json, the default.

Request body

kind'linear' | 'sheet' required

linear: lengths cut from stock lengths (studs, plates, joists, rafters, bars, trim, boards). sheet: rectangles nested on sheets (plasterboard or drywall, plywood, OSB, tiles).

material'timber' | 'rebar' | 'casing' | 'plasterboard' | 'plywood' | 'osb' | 'tile'

What is cut, for the market's stock lengths or sheet sizes, saw kerf and grain when they are left out: timber (the default for linear), rebar or casing; plasterboard (the default for sheet), plywood, OSB or tile.

rotateboolean

sheet: whether pieces may turn a quarter (no grain or strength axis to keep). Left out: yes for plasterboard and tiles, no for plywood and OSB.

system'metric' | 'imperial'

The unit system inputs left out open in, and the one the page link opens in. The answer comes in both.

inputUnits'base'

Send "base" to pass bare numbers on dimensioned inputs in base units (m, m², L, kg …), as the published test vectors are written. Without it a length, area or volume must carry its unit.

Response

What to buy, the cutting plan, the waste and the bound.

OR

Changes

No recorded changes to this operation across all 1 revision of this API.