Preview
Preview operations are not yet stable. They may change or be removed without a new versioned route and without the deprecation notice period, until they are announced as stable in the API Changelog. See the API Versioning Policy.
List an inventory item's physical identifiers (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Returns all identifiers issued for the item, newest first, including superseded ones (isCurrent=false). Each identifier carries inventoryActive, which is false while the item is soft-deleted. An item with no identifiers returns an empty array.
path Parameters
companyIdThe unique identifier of the company
inventoryIdThe inventory item
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
List an inventory item's physical identifiers (Preview) › Responses
The item's identifiers
physicalIdentifierIdcompanyIdinventoryIdidentifierTypeidentifierNamespacegtinidentifierValuebatchLotpayloadissuedAtsupersededAtreissuedFromPhysicalIdentifierIdactivelastModifiedByinventoryActiveisCurrentIssue a physical identifier for an inventory item (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Idempotent: if the item already has a current identifier of the requested type it is returned unchanged (200). Otherwise a new identifier is minted from the company's namespace (201) — a GS1 key (GTIN+serial, GIAI or SSCC) when the company has a GS1 Company Prefix, an internal GSM- code otherwise. Set reissue=true to explicitly supersede the current identifier. With no identifierType, the type of the item's most recent current identifier is used, for a reprint (that identifier is returned) and for a reissue (it is replaced by a new one of the same type); an item with no current identifier gets the default type: GTIN (a serialised GTIN, SGTIN) with a GS1 Company Prefix, INTERNAL without. A GTIN identifier needs a gtin for the item's first GTIN label (400 if missing, including when GTIN is the default); after that gtin may be omitted to reuse the item's existing GTIN, and a supplied gtin must match it (409). Issuing for a soft-deleted item returns 404.
path Parameters
companyIdThe unique identifier of the company
inventoryIdThe inventory item to identify
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Issue a physical identifier for an inventory item (Preview) › Request Body
identifierTypegtinreissueIssue a physical identifier for an inventory item (Preview) › Responses
The item's existing current identifier was returned (no new identifier minted)
Look up a physical identifier by payload (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Accepts a GS1 element string in bracketed form, e.g. (01)09501101530003(21)42, or raw scanner form (GS-separated, optional ]Q3 symbology prefix), or an internal GSM- code. Resolves by identity key (SSCC, GIAI, or GTIN+serial); a stale batch/lot (AI 10) still resolves. Superseded identifiers and labels of hard-deleted items (inventoryId=null) are returned with isCurrent=false. A soft-deleted item's label keeps isCurrent=true (its identifier chain is unchanged) and is flagged with inventoryActive=false. Percent-encode the payload; a literal '+' is kept as '+' (not decoded to a space).
path Parameters
companyIdThe unique identifier of the company
query Parameters
payloadThe scanned or typed identifier payload
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Look up a physical identifier by payload (Preview) › Responses
The matching identifier
physicalIdentifierIdcompanyIdinventoryIdidentifierTypeidentifierNamespacegtinidentifierValuebatchLotpayloadissuedAtsupersededAtreissuedFromPhysicalIdentifierIdactivelastModifiedByinventoryActiveisCurrentList order line item tag requirements
Returns all active required/preferred inventory-tag requirements for the company's order line items.
path Parameters
companyIdThe unique identifier of the company
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
List order line item tag requirements › Responses
Active tag requirements
orderLineItemIdThe order line item the requirement belongs to
tagIdThe inventory tag required or preferred of the supplying stock
requirement'Required' (hard constraint) or 'Preferred' (soft preference)
List tag requirements for an order line item
Returns the active required/preferred inventory-tag requirements of the specified order line item. Empty when the line item has none (or does not exist for the company).
path Parameters
companyIdThe unique identifier of the company
orderLineItemIdThe unique identifier of the order line item
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
List tag requirements for an order line item › Responses
Active tag requirements of the line item
orderLineItemIdThe order line item the requirement belongs to
tagIdThe inventory tag required or preferred of the supplying stock
requirement'Required' (hard constraint) or 'Preferred' (soft preference)
Set tag requirements for an order line item
Replaces the required and preferred inventory-tag requirements of an order line item with the provided sets. Both lists must be supplied; pass empty lists to clear. A tag cannot be both required and preferred, and every tag must be an active inventory tag of the company.
path Parameters
companyIdThe unique identifier of the company
orderLineItemIdThe unique identifier of the order line item
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Set tag requirements for an order line item › Request Body
requiredTagIdspreferredTagIdsSet tag requirements for an order line item › Responses
The line item's active tag requirements after the change
orderLineItemIdThe order line item the requirement belongs to
tagIdThe inventory tag required or preferred of the supplying stock
requirement'Required' (hard constraint) or 'Preferred' (soft preference)
List optimisation runs (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Lists optimisation runs for the specified company, most recent first, paged.
path Parameters
companyIdThe company GUID.
query Parameters
offsetZero-based row offset for pagination. Example: 0
limitMaximum number of rows to return (capped at 200). Example: 50
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
List optimisation runs (Preview) › Responses
Payload of Array of OptimisationRunDto
runIdcompanyIdstatusfilterProfileIdproblemBlobUriresultBlobUrierrorMessagegroupCountrequestedByplanIdrunNamecreatedAtupdatedAtStart an optimisation run (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Uploads a problem payload as a claim-check blob and dispatches it to the optimisation solver. With PreviewId, dispatches exactly that preview's saved snapshot (Filters/SolverSettings are recorded but not re-applied); otherwise composes a fresh problem from the supplied filters.
path Parameters
companyIdThe company GUID.
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Start an optimisation run (Preview) › Request Body
namefilterProfileIdexcludedGroupKeyspreviewIdStart an optimisation run (Preview) › Responses
Payload of CreateOptimisationRunResponse
runIdgroupCountunmatchedDemandCountexcludedGroupCountPreview an optimisation run (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Composes the problem an optimisation run would dispatch for the supplied filters, saves it as a short-lived preview snapshot, and returns a per-group summary with per-order detail plus the snapshot's PreviewId. Nothing is persisted to the database or dispatched; pass PreviewId to StartOptimisationRun (within 30 minutes) to dispatch exactly this composition. ExcludedGroupKeys is ignored — every composed group is returned.
path Parameters
companyIdThe company GUID.
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Preview an optimisation run (Preview) › Request Body
namefilterProfileIdexcludedGroupKeyspreviewIdPreview an optimisation run (Preview) › Responses
Payload of OptimisationRunPreview
previewIdcomposedAttotalGroupstotalStockBarCounttotalDemandPieceCountGet an optimisation run (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Retrieves a single optimisation run — the polling target while a run is pending.
path Parameters
companyIdThe company GUID.
runIdThe optimisation run GUID.
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Get an optimisation run (Preview) › Responses
Payload of OptimisationRunDto
runIdcompanyIdstatusfilterProfileIdproblemBlobUriresultBlobUrierrorMessagegroupCountrequestedByplanIdrunNamecreatedAtupdatedAtCancel an optimisation run (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Marks a run as cancelled. Rejected with 400 if the run has already reached a terminal or later status (ResultReceived/SolveFailed/Failed/PlanCreated).
path Parameters
companyIdThe company GUID.
runIdThe optimisation run GUID.
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Cancel an optimisation run (Preview) › Responses
No description
Un-approve a production plan (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Returns an Approved plan to Draft and, in the same transaction, releases the stock reservations the plan's approval created (same release rules as discard). Bars go back to Proposed (Excluded bars stay Excluded), conflicts are cleared and cut review decisions are kept, so the plan can be reviewed and approved again. Only allowed before any bar has started; rejected with 400 otherwise.
path Parameters
companyIdThe company GUID.
planIdThe production plan GUID.
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Un-approve a production plan (Preview) › Responses
Payload of ReleaseProductionPlanResult
planIdplanStatusreleasedLinkCountGet trial onboarding checklist progress (Preview)
Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Returns six booleans derived from the company's real data: millCertUploaded, inventoryCreated, orderWithLineItemCreated, stockReserved, certificatePackGenerated and hexUsed. Soft-deleted records do not count. Also returns activation timing: companyCreatedAt, firstPackAt and timeToFirstPackSeconds (null until the first certificate pack exists).
path Parameters
companyIdThe unique identifier of the company
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Get trial onboarding checklist progress (Preview) › Responses
The company's checklist progress
millCertUploadedTrue when the company has at least one active mill certificate.
inventoryCreatedTrue when the company has at least one active inventory item.
orderWithLineItemCreatedTrue when the company has an active order with at least one active line item.
stockReservedTrue when any inventory is linked (reserved) to an order line item.
certificatePackGeneratedTrue when the company has generated at least one certificate pack.
hexUsedTrue when an onboarding (Hex) session has a completed step or a Completed/Dismissed status.
companyCreatedAtWhen the company was created (UTC).
firstPackAtWhen the company generated its first certificate pack (UTC); null until one exists.
timeToFirstPackSecondsSeconds from company creation to the first certificate pack (never negative); null until a pack exists.
Get company settings (Preview)
Preview: this endpoint may change or be removed without notice. Returns company-level settings that are not part of the company profile: currently kerfMm, the saw-blade width lost per cut that the optimiser applies.
path Parameters
companyIdThe unique identifier of the company
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Get company settings (Preview) › Responses
The company's settings
companyIdkerfMmSaw-blade width lost per cut, in mm (0 to 20, at most 2 decimal places).
Update company settings (Preview)
Preview: this endpoint may change or be removed without notice. Company admins only. Sets kerfMm, the saw-blade width lost per cut (0 to 20 mm, rounded to 2 decimal places), which the next optimisation run applies. Does not change any other company field.
path Parameters
companyIdThe unique identifier of the company
Headers
GoSmarter-Api-KeyThe GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.
Update company settings (Preview) › Request Body
kerfMmSaw-blade width lost per cut, in mm. Required; 0 to 20 inclusive. Values with more than 2 decimal places are rounded to 2.
Update company settings (Preview) › Responses
Settings updated; the stored values
companyIdkerfMmSaw-blade width lost per cut, in mm (0 to 20, at most 2 decimal places).

