generateQuote
Price a part configuration on demand and return the price breakdown plus the pricing-equation variables that make up the price. Use for a part not yet ordered, or to test a change (different process/material/quantity, or override an input variable). Pass equationId to test a non-live equation version saved via save(entity=typescriptEquation); call once with and once without it to compare it against live. Purely a calculation — nothing is saved. To explain the price of an EXISTING order line, use explainPrice instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| units | No | Measurement units: CENTIMETERS, MILLIMETERS, METRES, INCHES, FEET. Default MILLIMETERS. | |
| colorId | No | Optional colour id. | |
| currency | No | Optional quote currency (e.g. USD, GBP). Defaults to the operator's currency. | |
| infillId | No | Optional infill id. | |
| quantity | Yes | Number of parts to quote. | |
| processId | Yes | processPrices UUID (query(entity="processPrices")). | |
| variables | No | Optional overrides for pricing-equation input variables (name -> number). Changes the equation's inputs, never its formula. | |
| equationId | No | Optional: price with this equation (a non-live version from save(entity=typescriptEquation)) instead of the live one. It must belong to processId or to one of postProcessingIds. Omit for the live price. | |
| leadTimeId | No | Optional lead-time UUID. | |
| materialId | Yes | Material id valid for the chosen process. | |
| revisionId | Yes | Part revision UUID (query(entity="partRevision")). | |
| precisionId | No | Optional precision id. | |
| customerOrgId | No | Optional customer organisation id (for customer-specific pricing). | |
| postProcessingIds | No | Optional post-processing ids. |