Skip to content

Updates

Latest updates and changes to the SmartCut REST API.

SEP 30 2026
  • Mayer saws (sawProfileId mayer-may): guillotineOptions.maxPhase now accepts up to 4. The default stays 3 - send 4 to opt in. Each extra phase is one more piece the operator turns and feeds by hand on the PC7000, in exchange for fewer sheets on some jobs. Values above 4 are lowered to 4.
SEP 24 2026
  • Results now list every part, including parts cut on stacked sheets. Previously, parts on a stacked sheet that were not copies of the top sheet's parts were missing from the parts array.
  • Parts cut on a stack carry a new stacked property - { sheet, of } - where sheet 1 is the top sheet of the stack. Their stock id is the stack's top sheet, which is the entry listed in the stock array.
  • metadata.addedPartTally now counts each part once under its own id, rather than the top sheet's parts multiplied by the stack count.
  • Fix: machining corners sent as an object keyed side.a - side.d (the previously documented form) were being ignored. They are now applied. The documented form is now an array of { index, type, size }, the same shape the result returns; the object form is still accepted.
  • Machining grooves are now documented.
SEP 22 2026
  • New saw option minOffcut sets the minimum size for a leftover to count as a reusable offcut, per job.
SEP 21 2026
  • The offcuts array now lists every leftover, each with a new retained flag - leftovers below the minimum offcut size are returned with retained: false rather than omitted.
SEP 15 2026
  • Each stock's analysis now reports maxPhase - the number of cutting stages that sheet needs - with the highest across the job in metadata.maxPhase.
SEP 7 2026
  • Mayer .may export (/v3/export/mayer) is now documented, and includes the part label fields (parts[].labels).
SEP 3 2026
  • The MAX models (rectangle-guillotine-max-1 / -2) are now available on guillotine saws as well as beam saws.
AUG 24 2026
  • Beam saws now support guillotineOptions.maxPhase: 1 (two-stage cutting).
AUG 18 2026
  • Saws can be identified by vendor, model and softwareVersion.
  • /v3/calculate and /v3/validate responses now include a warnings array.
  • On beam saws, guillotineOptions.strategy 'time' is treated as 'efficiency' - it is a setting for manual table saws.
AUG 17 2026
  • Fix: V2 requests now apply saw.options (stackingMode, stockSelection) and stackHeight as sent - previously they were replaced by defaults.
AUG 14 2026
  • Parts returned by /v3/model/analysis now include machining holes (position, diameter, depth, face and type).
AUG 13 2026
  • New top level materials array. Each material can carry its own saw (or sawId), thicknesses and grain, and parts and stock reference it by materialId.
  • saw can now be an array of saws, each with an id. Results return materials and saws, and each stock carries its materialId and sawId.
AUG 11 2026
  • New endpoint POST /v3/model/analysis - upload a 3D model (STEP, STL, OBJ, PLY, glTF/GLB) and get back a parts list. The parts array is submittable to /v3/calculate unchanged.
  • Shaped parts come back with an outline and holes, ready for a nesting model; fittings are flagged so you can drop them.
  • Collada (.dae) and 3MF are not supported server-side and return 415 with a list of the formats that are.
  • Billed on the same compute-time meter as a calculation. See the 3D model analysis guide.
AUG 6 2026
  • Irregular nesting: new models irregular-nesting-fast, irregular-nesting-max-1 and irregular-nesting-max-2, and parts accept outline and holes geometry.
AUG 3 2026
  • Part grain is no longer an input - it is derived from the stock's grain and the part's final rotation.
  • rot on result parts is documented as 0 / 1 rather than a boolean.
JUL 28 2026
  • New guillotine options verticalPanelSaw and maxStripWidth.
JUL 24 2026
  • New metadata.unplacedParts lists every part that could not be placed (id, name, dimensions, material and count).
JUL 23 2026
  • V2 parts accept stockLock.
JUL 20 2026
  • Results now include calcTime.
JUN 24 2026
  • New endpoint GET /v3/saws lists the supported saws with their export formats and endpoints.
  • Biesse XML export (/v3/export/biesse) added to the documentation.
  • Biesse and Mayer exports take their formatting defaults (decimal precision, and units and currency for Mayer) from the saw profile.
  • The MAX models can now be requested through the API with the model field (beam saws, up to 500 parts).
JUN 16 2026
  • New model field on /v3/calculate selects the optimisation model - see the API reference for the available models.
JUN 9 2026
  • New endpoint POST /v3/validate - check a job without running a calculation. Returns valid, the stage reached and a list of issues (type, category, field, index, identifier and message).
MAY 28 2026
  • Parts accept a new labels object for saw label fields: order, room, pallet, colour, drawing, productNumber, productInfo, barcode1 and barcode2. The request also accepts labels.customer.
  • /v3/calculate responses include labelWarnings, flagging label fields that the selected saw's export formats cannot carry.
APR 13 2026
  • /v3/labels accepts labelW and labelH for a custom label size, and notes to print part notes.
  • /v3/export/pdf accepts showDiagram, showCoordinates, showNotes and partAnnotations (each 'y' or 'n').
MAR 11 2026
  • Added code property to parts and stock.
  • New groups top level property added.
NOV 28 2025
  • Added custom data properties to stock & parts.
  • Added stock.stack to checkout API V3
  • Updated v3/export/ and documentation
NOV 3 2025
  • API V3 launched, V1 marked as deprecated.
JAN 31 2025
  • For V1 API users, the stockList and partList properties have been removed from the response. Please use the stock and parts properties instead.
DEC 17 2024
  • In the PTX file, when no edge banding is present in a part, a blank field will be used rather than the string 'N' - this was causing issues when importing into Magi-Cut.
NOV 9 2024
  • Added 'stackingMode' to saw options, which determines how stock will be stacked.
NOV 4 2024
  • Use of the 'bandingType' property within each part has been deprecated. Please use the 'banding' attribute instead, which can now accept a boolean or a string value.
  • New 'finish' attribute added to parts. This can be used to specify the finish of a part, for example spray paint. Metadata now includes totalFinishArea and finishAreaByType properties to show the total area of parts with a finish applied split by finish type. Each stock also contains a finishArea property within 'analysis'.
FEB 19 2024
  • Experimental feature userGroups has been updated. Now uses id and 'direction' rather than id and coordinates. This is a breaking change and will require updates to your code if you were using this feature.
FEB 5 2024
  • Roll length in metadata is now total roll length - the key is now 'totalRollLength'
  • Stacked cut length and total cuts is now available in metadata and stock analysis
  • Beam saw calculations now need a stack height to be set
DEC 11 2023
  • Better handling of exports & label files - the file url is now returned in the response body.
  • Files in zip format have new filenames - please use the response url.
  • Added rollLength to the metadata object in the response.
OCT 25 2023
  • Revamp to guillotine and efficiency algorithms.
  • Guillotine now supports a second phase of optimization to allow left over parts to be squeezed into offcut positions.
  • More information now contained in 'metadata' in the API response.
  • Version 2 of the WooCommerce plugin released - greatly improved setup experience and more pricing models.
JUL 2 2023
  • Added new options to the saw object to allow further customisation of the cutting process
JUN 13 2023
  • Unusable parts are now returned in the results with an explanation of why they couldn't be used
APR 1 2023

Version 2 released

  • New schema - please read the updated documentation
  • Added the concept of a saw - no need to add blade width & cut preference to each stock individually
  • For object based data (for example trim) if no values are set, the object will be replaced with null
  • Smaller data payload for faster results
  • 20% quicker response times
  • Version 1 will continue to be supported
FEB 1 2023
  • Added linear offcuts to api result
JAN 20 2023
  • Added labels endpoint - create printable labels to keep track of parts and offcuts
JAN 12 2023
  • Added grain direction to stock and offcuts
  • Added name & thickness to offcuts
NOV 1 2022
  • Metered billing now available - no need to worry about setting limits for your plan.
AUG 3 2022
  • Updated algorithm for both efficiency & guillotine calculations.
JUL 13 2022
  • Launched checkout widget to easily integrate into your e-commerce store.
JUL 5 2022
  • Improved status responses:
  • 403 for reaching the monthly call limit
  • 429 for exceeding the allowed calls per minute
OCT 4 2022
  • Added the 'bandingType' attribute to parts
  • In the results, the length of each banding type is returned in the 'metadata' object
JUL 3 2022
  • Major infrastructure upgrade for better reliability, more capacity and more processing power.
  • The original three-tiered plans are now retired. These are treated as legacy plans which will continue to work. Migration to the new monthly plan is recommended.
  • All plans are now based on your requirements and billed monthly. This allows much more fine-grained control over every option.
  • New configurable values include the number of calls per minute.
  • The 'autoAdd' option for stock can now be used for multiple stock items. Previously this was only allowed with a single stock item.