SF 3D printing + design workbenches (enclosures, grippers, fixtures, stamping). Quote and order.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Discover Maker Bench availability, supported inputs, limits and prepare/quote schemas. Enclosure, workholding, gripper and stamping support editable drafts and complete-set quotes with browser checkout. Wheel Lab is coming soon.
This tool takes no arguments.
Discover Maker Bench availability, supported inputs, limits and prepare/quote schemas. Enclosure, workholding, gripper and stamping support editable drafts and complete-set quotes with browser checkout. Wheel Lab is coming soon.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Prepare or revise an enclosure from KiCad PCB text or dimensions. Returns exact parameters, review revision, warnings and editable customer review URL. Uses a guest token but no quote allowance. No manufacturing or purchase occurs.
| Argument | Type | Description |
|---|---|---|
| kicadPcb | string | KiCad 6–9 .kicad_pcb UTF-8 text. Sent to AIURION for parsing; raw PCB text is not stored in the draft or review link. Use parameters instead for dimensions. |
| quantity | integer | Number of complete sets to prepare or quote. |
| parameters | object | Workbench geometry parameters. Use the returned normalized values for review and quoting. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
{
"type": "object",
"properties": {
"kicadPcb": {
"type": "string",
"maxLength": 10485760,
"minLength": 1,
"description": "KiCad 6–9 .kicad_pcb UTF-8 text. Sent to AIURION for parsing; raw PCB text is not stored in the draft or review link. Use parameters instead for dimensions."
},
"quantity": {
"type": "integer",
"maximum": 150,
"minimum": 1,
"description": "Number of complete sets to prepare or quote."
},
"parameters": {
"type": "object",
"properties": {
"wallMm": {
"type": "number",
"maximum": 8,
"minimum": 1.6
},
"widthMm": {
"type": "number",
"maximum": 220,
"minimum": 30
},
"heightMm": {
"type": "number",
"maximum": 160,
"minimum": 12
},
"lengthMm": {
"type": "number",
"maximum": 260,
"minimum": 40
},
"ioCutouts": {
"type": "array",
"items": {
"type": "object",
"required": [
"shape",
"wall",
"offsetMm",
"verticalOffsetMm",
"widthMm",
"heightMm",
"diameterMm"
],
"properties": {
"wall": {
"enum": [
"front",
"back",
"left",
"right"
],
"type": "string"
},
"shape": {
"enum": [
"rectangle",
"circle"
],
"type": "string"
},
"widthMm": {
"type": "number",
"maximum": 260,
"minimum": 2
},
"heightMm": {
"type": "number",
"maximum": 160,
"minimum": 2
},
"offsetMm": {
"type": "number",
"maximum": 130,
"minimum": -130
},
"diameterMm": {
"type": "number",
"maximum": 160,
"minimum": 2
},
"verticalOffsetMm": {
"type": "number",
"maximum": 80,
"minimum": -80
}
},
"additionalProperties": false
},
"maxItems": 12
},
"portCount": {
"type": "integer",
"maximum": 12,
"minimum": 0
},
"includeLid": {
"type": "boolean",
"const": true
},
"includePcb": {
"type": "boolean"
},
"materialId": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"pcbWidthMm": {
"type": "number",
"maximum": 200,
"minimum": 20
},
"pcbLengthMm": {
"type": "number",
"maximum": 240,
"minimum": 20
},
"ventEnabled": {
"type": "boolean"
},
"ventPattern": {
"enum": [
"slots"
],
"type": "string"
},
"voronoiSeed": {
"type": "integer",
"maximum": 30,
"minimum": 1
},
"wallPattern": {
"enum": [
"none",
"diagonal_vents",
"voronoi"
],
"type": "string"
},
"fastenerMode": {
"enum": [
"none",
"heat_set"
],
"type": "string"
},
"lidScrewSize": {
"enum": [
"m2",
"m3"
],
"type": "string"
},
"pcbScrewSize": {
"enum": [
"m2",
"m3"
],
"type": "string"
},
"voronoiWebMm": {
"type": "number",
"maximum": 5,
"minimum": 1
},
"includeLidLip": {
"type": "boolean"
},
"lidLipDepthMm": {
"type": "number",
"maximum": 150,
"minimum": 0
},
"riserHeightMm": {
"type": "number",
"maximum": 150,
"minimum": 0
},
"standoffCount": {
"type": "integer",
"maximum": 32,
"minimum": 0
},
"ventSlotCount": {
"type": "integer",
"maximum": 100,
"minimum": 0
},
"activeTemplate": {
"type": "string",
"const": "enclosure"
},
"cornerRadiusMm": {
"type": "number",
"maximum": 18,
"minimum": 0
},
"holeDiameterMm": {
"type": "number",
"maximum": 12,
"minimum": 1
},
"lidThicknessMm": {
"type": "number",
"maximum": 8,
"minimum": 3
},
"pcbThicknessMm": {
"type": "number",
"maximum": 10,
"minimum": 0.1
},
"pcbHoleSpacingX": {
"type": "number",
"maximum": 240,
"minimum": 10
},
"pcbHoleSpacingY": {
"type": "number",
"maximum": 200,
"minimum": 10
},
"ventSlotWidthMm": {
"type": "number",
"maximum": 24,
"minimum": 1
},
"pcbMountingHoles": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"required": [
"x",
"y",
"diameterMm"
],
"properties": {
"x": {
"type": "number",
"maximum": 120,
"minimum": -120
},
"y": {
"type": "number",
"maximum": 100,
"minimum": -100
},
"diameterMm": {
"type": "number",
"maximum": 12,
"minimum": 0.1
}
},
"additionalProperties": false
},
"maxItems": 32
},
"ventSlotLengthMm": {
"type": "number",
"maximum": 260,
"minimum": 0
},
"lidFitClearanceMm": {
"type": "number",
"const": 0.08
},
"lidScrewPlacement": {
"enum": [
"external"
],
"type": "string"
},
"ventSlotSpacingMm": {
"type": "number",
"maximum": 32,
"minimum": 1
},
"voronoiCellSizeMm": {
"type": "number",
"maximum": 22,
"minimum": 6
},
"voronoiWallTarget": {
"enum": [
"all"
],
"type": "string"
},
"pcbWallClearanceMm": {
"type": "number",
"maximum": 24,
"minimum": 0
},
"voronoiWallEnabled": {
"type": "boolean"
},
"diagonalVentWidthMm": {
"type": "number",
"maximum": 10,
"minimum": 1
},
"ventSlotRotationDeg": {
"type": "number",
"maximum": 180,
"minimum": -180
},
"basePlateThicknessMm": {
"type": "number",
"maximum": 8,
"minimum": 2
},
"diagonalVentAngleDeg": {
"type": "number",
"maximum": 45,
"minimum": 10
},
"diagonalVentLengthMm": {
"type": "number",
"maximum": 44,
"minimum": 8
},
"lidScrewHolesEnabled": {
"type": "boolean"
},
"diagonalVentSpacingMm": {
"type": "number",
"maximum": 20,
"minimum": 1
},
"driveEnclosureFromPcb": {
"type": "boolean"
},
"voronoiMaxOverhangDeg": {
"type": "number",
"const": 45
}
},
"description": "Workbench geometry parameters. Use the returned normalized values for review and quoting.",
"additionalProperties": false
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
}
},
"additionalProperties": false
}Compliant gripper kits with two TPU pads, two rigid carriers and two keepers per kit. Prepare or revise an editable draft. Returns configuration, review revision, warnings and browser link. Uses authentication but no quote allowance. No purchase occurs.
| Argument | Type | Description |
|---|---|---|
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
| configuration | object | Partial jaw configuration. Omitted fields use the Gripper Lab defaults. Lengths are millimetres. |
{
"type": "object",
"required": [],
"properties": {
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
},
"configuration": {
"type": "object",
"required": [],
"properties": {
"rib_bow": {
"type": "number",
"maximum": 2.4,
"minimum": 0.8,
"description": "Rib bow limit"
},
"quantity": {
"type": "integer",
"maximum": 75,
"minimum": 1,
"description": "Complete kits; each kit has two pads, two carriers and two keepers."
},
"face_skin": {
"type": "number",
"maximum": 2.4,
"minimum": 1.2,
"description": "Contact wall"
},
"pad_width": {
"type": "number",
"maximum": 110,
"minimum": 50,
"description": "Pad width"
},
"rail_head": {
"type": "number",
"maximum": 8,
"minimum": 5,
"description": "Rail head"
},
"rail_neck": {
"type": "number",
"maximum": 4,
"minimum": 2.4,
"description": "Rail neck"
},
"rib_count": {
"type": "integer",
"maximum": 11,
"minimum": 5,
"description": "Rib count"
},
"grip_depth": {
"type": "number",
"maximum": 10,
"minimum": 4,
"description": "Contact depth"
},
"pad_height": {
"type": "number",
"maximum": 40,
"minimum": 16,
"description": "Pad height"
},
"rail_depth": {
"type": "number",
"maximum": 3.4,
"minimum": 1.8,
"description": "Rail depth limit"
},
"wave_count": {
"type": "integer",
"maximum": 6,
"minimum": 3,
"description": "Contact waves"
},
"bottom_stop": {
"type": "number",
"maximum": 3,
"minimum": 1.5,
"description": "Lower seat"
},
"preview_gap": {
"type": "number",
"maximum": 70,
"minimum": 10,
"description": "Opening"
},
"root_fillet": {
"type": "number",
"maximum": 0.8,
"minimum": 0.3,
"description": "Root allowance"
},
"spine_depth": {
"type": "number",
"maximum": 6,
"minimum": 4,
"description": "Retention spine"
},
"gyroid_depth": {
"type": "number",
"maximum": 8,
"minimum": 2,
"description": "Gyroid layer"
},
"gyroid_level": {
"type": "number",
"maximum": 0.8,
"minimum": 0.35,
"description": "Sheet level"
},
"fit_clearance": {
"type": "number",
"maximum": 0.6,
"minimum": 0.15,
"description": "Sliding fit"
},
"gyroid_period": {
"type": "number",
"maximum": 12,
"minimum": 4,
"description": "Cell size"
},
"lattice_depth": {
"type": "number",
"maximum": 20,
"minimum": 8,
"description": "Rib layer"
},
"mount_spacing": {
"type": "number",
"maximum": 80,
"minimum": 20,
"description": "Mounting centers"
},
"padMaterialId": {
"enum": [
"black_tpu_85a",
"black_tpu_95a"
],
"type": "string"
},
"rib_thickness": {
"type": "number",
"maximum": 2,
"minimum": 1,
"description": "Rib wall"
},
"mounting_slots": {
"type": "boolean"
},
"productionSpeed": {
"enum": [
"standard",
"rush"
],
"type": "string"
},
"rigidMaterialId": {
"enum": [
"black_pla",
"red_pla",
"silver_pla",
"matte_black_pla",
"orange_petg",
"white_petg",
"black_petg",
"black_asa",
"black_ppa_cf"
],
"type": "string"
},
"backer_thickness": {
"type": "number",
"maximum": 10,
"minimum": 6,
"description": "Carrier thickness"
},
"keeper_thickness": {
"type": "number",
"maximum": 4,
"minimum": 2,
"description": "Keeper thickness"
},
"mount_slot_extra": {
"type": "number",
"maximum": 8,
"minimum": 0,
"description": "Slot adjustment"
},
"fulfillmentMethod": {
"enum": [
"shipping",
"pickup",
"courier"
],
"type": "string"
},
"gyroid_resolution": {
"type": "number",
"maximum": 0.8,
"minimum": 0.4,
"description": "Export spacing"
},
"vertical_clearance": {
"type": "number",
"maximum": 0.5,
"minimum": 0.1,
"description": "Vertical fit"
},
"mount_head_diameter": {
"type": "number",
"maximum": 10,
"minimum": 6,
"description": "Mounting head"
},
"mount_hole_diameter": {
"type": "number",
"maximum": 5.5,
"minimum": 3,
"description": "Mounting bore"
},
"mount_access_clearance": {
"type": "number",
"maximum": 0.8,
"minimum": 0.3,
"description": "Driver clearance"
},
"retaining_bolt_diameter": {
"type": "number",
"maximum": 4,
"minimum": 2.5,
"description": "Retaining bolt bore"
}
},
"description": "Partial jaw configuration. Omitted fields use the Gripper Lab defaults. Lengths are millimetres.",
"additionalProperties": false
}
},
"additionalProperties": false
}Matched lower and upper stamping dies using the approved print process. Simulation is not exposed. Prepare or revise an editable draft. Returns configuration, review revision, warnings and browser link. Uses authentication but no quote allowance. No purchase occurs.
| Argument | Type | Description |
|---|---|---|
| sheet | object | Workbench input: sheet. See the field constraints. |
| quantity | integer | Number of matched lower/upper die pairs. |
| materialId | string | Workbench input: materialId. See the field constraints. |
| parameters | object | Workbench geometry parameters. Use the returned normalized values for review and quoting. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
| productionSpeed | string | Workbench input: productionSpeed. See the field constraints. |
| fulfillmentMethod | string | Workbench input: fulfillmentMethod. See the field constraints. |
Locating nests, clamped fixtures and soft jaws from dimensions or a supported straight-extrusion STL. Prepare or revise an editable draft. Returns configuration, review revision, warnings and browser link. Uses authentication but no quote allowance. No purchase occurs.
| Argument | Type | Description |
|---|---|---|
| quantity | integer | Number of complete sets to prepare or quote. |
| stlUnits | string | Units of the supplied STL coordinates; defaults to mm. |
| stlBase64 | string | Base64 encoded STL, at most 5 MiB decoded. One closed straight extrusion on XY, without internal holes or undercuts. The raw STL is not stored in the draft or review URL. |
| parameters | object | Workbench geometry parameters. Use the returned normalized values for review and quoting. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
{
"type": "object",
"required": [],
"properties": {
"quantity": {
"type": "integer",
"maximum": 150,
"minimum": 1,
"description": "Number of complete sets to prepare or quote."
},
"stlUnits": {
"enum": [
"mm",
"in"
],
"type": "string",
"description": "Units of the supplied STL coordinates; defaults to mm."
},
"stlBase64": {
"type": "string",
"maxLength": 6990508,
"minLength": 4,
"description": "Base64 encoded STL, at most 5 MiB decoded. One closed straight extrusion on XY, without internal holes or undercuts. The raw STL is not stored in the draft or review URL."
},
"parameters": {
"type": "object",
"properties": {
"depth": {
"type": "number",
"maximum": 80,
"minimum": 1
},
"floor": {
"type": "number",
"maximum": 40,
"minimum": 1
},
"holes": {
"type": "array",
"items": {
"type": "object",
"required": [
"x",
"y",
"diameter",
"counterbore",
"recess"
],
"properties": {
"x": {
"type": "number",
"maximum": 160,
"minimum": -160
},
"y": {
"type": "number",
"maximum": 160,
"minimum": -160
},
"recess": {
"type": "number",
"maximum": 116,
"minimum": 1
},
"diameter": {
"type": "number",
"maximum": 20,
"minimum": 3
},
"counterbore": {
"type": "number",
"maximum": 30,
"minimum": 5
}
},
"additionalProperties": false
},
"maxItems": 12
},
"shape": {
"enum": [
"bracket",
"rectangle",
"round",
"custom"
],
"type": "string"
},
"clampY": {
"type": "number",
"maximum": 140,
"minimum": -140
},
"jawGap": {
"type": "number",
"maximum": 30,
"minimum": 0.5
},
"preset": {
"enum": [
"custom",
"smw-m6",
"smw-half",
"kurt"
],
"type": "string"
},
"jawBore": {
"type": "number",
"maximum": 20,
"minimum": 3
},
"jawGrip": {
"type": "number",
"maximum": 60,
"minimum": 2
},
"offsetX": {
"type": "number",
"maximum": 160,
"minimum": -160
},
"offsetY": {
"type": "number",
"maximum": 160,
"minimum": -160
},
"outline": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "number",
"maximum": 320,
"minimum": -320
},
"maxItems": 2,
"minItems": 2
},
"maxItems": 256
},
"jawMount": {
"enum": [
"kurt-dx6",
"custom"
],
"type": "string"
},
"rotation": {
"type": "number",
"maximum": 180,
"minimum": -180
},
"clearance": {
"type": "number",
"maximum": 2,
"minimum": 0.05
},
"jawHeight": {
"type": "number",
"maximum": 100,
"minimum": 30
},
"jawLength": {
"type": "number",
"maximum": 300,
"minimum": 50
},
"jawRecess": {
"type": "number",
"maximum": 35,
"minimum": 2
},
"partWidth": {
"type": "number",
"maximum": 280,
"minimum": 8
},
"clampWidth": {
"type": "number",
"maximum": 40,
"minimum": 14
},
"materialId": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"partHeight": {
"type": "number",
"maximum": 150,
"minimum": 3
},
"partLength": {
"type": "number",
"maximum": 280,
"minimum": 8
},
"stockWidth": {
"type": "number",
"maximum": 320,
"minimum": 25
},
"fixtureType": {
"enum": [
"nest",
"clamped",
"soft-jaws"
],
"type": "string"
},
"stockLength": {
"type": "number",
"maximum": 300,
"minimum": 25
},
"clampOverlap": {
"type": "number",
"maximum": 15,
"minimum": 3
},
"jawThickness": {
"type": "number",
"maximum": 100,
"minimum": 15
},
"jawHoleHeight": {
"type": "number",
"maximum": 80,
"minimum": 10
},
"clampThickness": {
"type": "number",
"maximum": 16,
"minimum": 6
},
"jawCounterbore": {
"type": "number",
"maximum": 32,
"minimum": 5
},
"jawHoleSpacing": {
"type": "number",
"maximum": 250,
"minimum": 20
},
"clampBoltOffset": {
"type": "number",
"maximum": 28,
"minimum": 10
},
"productionSpeed": {
"enum": [
"standard",
"rush"
],
"type": "string"
},
"fulfillmentMethod": {
"enum": [
"shipping",
"pickup",
"courier"
],
"type": "string"
}
},
"description": "Workbench geometry parameters. Use the returned normalized values for review and quoting.",
"additionalProperties": false
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
}
},
"additionalProperties": false
}Read AIURION's supported 3D model formats, limits, materials, production options, and purchasing flow.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Create an unpaid AIURION checkout link after the customer approves the current quote. This tool does not authorize, charge, or capture a payment and does not place a manufacturing order. Only if the customer later enters payment details and submits Stripe Checkout is their card authorized; AIURION captures payment after model review. The scoped accessToken authenticates only to AIURION, never to Stripe.
| Argument | Type | Description |
|---|---|---|
| quoteId* | string | AIURION quote UUID returned by printing.quotes.create. |
| materialId | string | AIURION material identifier listed by printing.capabilities.get. Send this when creating a quote; omission defaults to black_pla. A material change re-slices the model and invalidates the prior price approval. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
| idempotencyKey* | string | Stable unique key for retrying checkout creation. |
| productionSpeed | string | Requested production priority: standard or rush. |
| approvalConfirmed* | boolean | Set true only after the customer reviews and approves the quote. |
| fulfillmentMethod |
Poll the payment and manufacturing status associated with a credential-owned quote.
| Argument | Type | Description |
|---|---|---|
| quoteId* | string | AIURION quote UUID returned by printing.quotes.create. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
{
"type": "object",
"required": [
"quoteId"
],
"properties": {
"quoteId": {
"type": "string",
"format": "uuid",
"description": "AIURION quote UUID returned by printing.quotes.create."
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
}
},
"additionalProperties": false
}Create a free 3D print quote for the selected material and actual arranged quantity. For a ChatGPT attachment, prefer the native file parameter; use fileBase64 only when the client can read the exact bytes and cannot supply a native file. Set production speed or fulfillment later with printing.quotes.update. Never invent file bytes or URLs. Reuse a stable idempotency key for retries. Returned time and grams already include all copies; use server totals and obtain customer approval before checkout.
| Argument | Type | Description |
|---|---|---|
| file | object | User-selected model file supplied by ChatGPT. Use fileName if the file metadata omits its original filename. |
| fileName | string | Model filename ending in STL, OBJ, STEP, STP, or 3MF. |
| quantity | integer | Number of identical parts to quote, from 1 to 150. |
| fileBase64 | string | Base64-encoded model bytes without a data URL prefix. |
| materialId | string | AIURION material identifier listed by printing.capabilities.get. Send this when creating a quote; omission defaults to black_pla. A material change re-slices the model and invalidates the prior price approval. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
| idempotencyKey* |
Retrieve a quote previously created by this guest session or permanent integration.
| Argument | Type | Description |
|---|---|---|
| quoteId* | string | AIURION quote UUID returned by printing.quotes.create. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
{
"type": "object",
"required": [
"quoteId"
],
"properties": {
"quoteId": {
"type": "string",
"format": "uuid",
"description": "AIURION quote UUID returned by printing.quotes.create."
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
}
},
"additionalProperties": false
}Read the original STL, OBJ or 3MF belonging to an authenticated print quote for the quote review app.
| Argument | Type | Description |
|---|---|---|
| quoteId* | string | AIURION quote UUID returned by printing.quotes.create. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
{
"type": "object",
"required": [
"quoteId"
],
"properties": {
"quoteId": {
"type": "string",
"format": "uuid",
"description": "AIURION quote UUID returned by printing.quotes.create."
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
}
},
"additionalProperties": false
}Replace the owned quote's quantity, material, production speed, or fulfillment and recalculate pricing. This overwrites the current quote configuration and invalidates its prior price approval. Any still-open checkout session for the quote or its linked build is expired; the old checkout link cannot be restored. Tell the customer that an existing unpaid checkout link will stop working before applying their requested changes. Show the revised quote and obtain renewed approval before creating a new unpaid checkout link. Paid quotes and active payment authorizations cannot be changed. This tool does not charge, capture, refund, or release manufacturing.
| Argument | Type | Description |
|---|---|---|
| quoteId* | string | AIURION quote UUID returned by printing.quotes.create. |
| quantity | integer | Updated number of identical parts, from 1 to 150. |
| materialId | string | AIURION material identifier listed by printing.capabilities.get. Send this when creating a quote; omission defaults to black_pla. A material change re-slices the model and invalidates the prior price approval. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
| productionSpeed | string | Requested production priority: standard or rush. |
| fulfillmentMethod |
Immediately create a public, scoped 24-hour guest session with a small free quote allowance. No account or invitation is required.
| Argument | Type | Description |
|---|---|---|
| agentName* | string | Report the actual host platform: ChatGPT, Cursor, Grok Bot, Grok, Claude, or Codex. Use your application name for another host, or unknown if unavailable. Do not use a task, persona or model name. Stored with quotes and paid orders for source attribution. |
{
"type": "object",
"required": [
"agentName"
],
"properties": {
"agentName": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Report the actual host platform: ChatGPT, Cursor, Grok Bot, Grok, Claude, or Codex. Use your application name for another host, or unknown if unavailable. Do not use a task, persona or model name. Stored with quotes and paid orders for source attribution."
}
},
"additionalProperties": false
}Quote one complete enclosure base and lid, with configured hardware, after the customer reviews the exact prepare_enclosure revision. Consumes one quote allowance. Reuse idempotencyKey for retries. Returns a browser link for complete-set checkout; do not use single-part checkout or update tools for these parts.
| Argument | Type | Description |
|---|---|---|
| quantity* | integer | Number of complete sets to prepare or quote. |
| parameters* | object | Workbench geometry parameters. Use the returned normalized values for review and quoting. |
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
| idempotencyKey* | string | Stable unique key for retrying this complete-set quote. |
| reviewConfirmed* | boolean | True only after the customer reviews this exact draft, mounting, openings, component and plug clearances. Does not authorize checkout. |
| reviewedRevision* | string | Exact revision returned by preparation and reviewed by the customer. |
{
"type": "object",
"required": [
"parameters",
"quantity",
"reviewedRevision",
"reviewConfirmed",
"idempotencyKey"
],
"properties": {
"quantity": {
"type": "integer",
"maximum": 150,
"minimum": 1,
"description": "Number of complete sets to prepare or quote."
},
"parameters": {
"type": "object",
"properties": {
"wallMm": {
"type": "number",
"maximum": 8,
"minimum": 1.6
},
"widthMm": {
"type": "number",
"maximum": 220,
"minimum": 30
},
"heightMm": {
"type": "number",
"maximum": 160,
"minimum": 12
},
"lengthMm": {
"type": "number",
"maximum": 260,
"minimum": 40
},
"ioCutouts": {
"type": "array",
"items": {
"type": "object",
"required": [
"shape",
"wall",
"offsetMm",
"verticalOffsetMm",
"widthMm",
"heightMm",
"diameterMm"
],
"properties": {
"wall": {
"enum": [
"front",
"back",
"left",
"right"
],
"type": "string"
},
"shape": {
"enum": [
"rectangle",
"circle"
],
"type": "string"
},
"widthMm": {
"type": "number",
"maximum": 260,
"minimum": 2
},
"heightMm": {
"type": "number",
"maximum": 160,
"minimum": 2
},
"offsetMm": {
"type": "number",
"maximum": 130,
"minimum": -130
},
"diameterMm": {
"type": "number",
"maximum": 160,
"minimum": 2
},
"verticalOffsetMm": {
"type": "number",
"maximum": 80,
"minimum": -80
}
},
"additionalProperties": false
},
"maxItems": 12
},
"portCount": {
"type": "integer",
"maximum": 12,
"minimum": 0
},
"includeLid": {
"type": "boolean",
"const": true
},
"includePcb": {
"type": "boolean"
},
"materialId": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"pcbWidthMm": {
"type": "number",
"maximum": 200,
"minimum": 20
},
"pcbLengthMm": {
"type": "number",
"maximum": 240,
"minimum": 20
},
"ventEnabled": {
"type": "boolean"
},
"ventPattern": {
"enum": [
"slots"
],
"type": "string"
},
"voronoiSeed": {
"type": "integer",
"maximum": 30,
"minimum": 1
},
"wallPattern": {
"enum": [
"none",
"diagonal_vents",
"voronoi"
],
"type": "string"
},
"fastenerMode": {
"enum": [
"none",
"heat_set"
],
"type": "string"
},
"lidScrewSize": {
"enum": [
"m2",
"m3"
],
"type": "string"
},
"pcbScrewSize": {
"enum": [
"m2",
"m3"
],
"type": "string"
},
"voronoiWebMm": {
"type": "number",
"maximum": 5,
"minimum": 1
},
"includeLidLip": {
"type": "boolean"
},
"lidLipDepthMm": {
"type": "number",
"maximum": 150,
"minimum": 0
},
"riserHeightMm": {
"type": "number",
"maximum": 150,
"minimum": 0
},
"standoffCount": {
"type": "integer",
"maximum": 32,
"minimum": 0
},
"ventSlotCount": {
"type": "integer",
"maximum": 100,
"minimum": 0
},
"activeTemplate": {
"type": "string",
"const": "enclosure"
},
"cornerRadiusMm": {
"type": "number",
"maximum": 18,
"minimum": 0
},
"holeDiameterMm": {
"type": "number",
"maximum": 12,
"minimum": 1
},
"lidThicknessMm": {
"type": "number",
"maximum": 8,
"minimum": 3
},
"pcbThicknessMm": {
"type": "number",
"maximum": 10,
"minimum": 0.1
},
"pcbHoleSpacingX": {
"type": "number",
"maximum": 240,
"minimum": 10
},
"pcbHoleSpacingY": {
"type": "number",
"maximum": 200,
"minimum": 10
},
"ventSlotWidthMm": {
"type": "number",
"maximum": 24,
"minimum": 1
},
"pcbMountingHoles": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"required": [
"x",
"y",
"diameterMm"
],
"properties": {
"x": {
"type": "number",
"maximum": 120,
"minimum": -120
},
"y": {
"type": "number",
"maximum": 100,
"minimum": -100
},
"diameterMm": {
"type": "number",
"maximum": 12,
"minimum": 0.1
}
},
"additionalProperties": false
},
"maxItems": 32
},
"ventSlotLengthMm": {
"type": "number",
"maximum": 260,
"minimum": 0
},
"lidFitClearanceMm": {
"type": "number",
"const": 0.08
},
"lidScrewPlacement": {
"enum": [
"external"
],
"type": "string"
},
"ventSlotSpacingMm": {
"type": "number",
"maximum": 32,
"minimum": 1
},
"voronoiCellSizeMm": {
"type": "number",
"maximum": 22,
"minimum": 6
},
"voronoiWallTarget": {
"enum": [
"all"
],
"type": "string"
},
"pcbWallClearanceMm": {
"type": "number",
"maximum": 24,
"minimum": 0
},
"voronoiWallEnabled": {
"type": "boolean"
},
"diagonalVentWidthMm": {
"type": "number",
"maximum": 10,
"minimum": 1
},
"ventSlotRotationDeg": {
"type": "number",
"maximum": 180,
"minimum": -180
},
"basePlateThicknessMm": {
"type": "number",
"maximum": 8,
"minimum": 2
},
"diagonalVentAngleDeg": {
"type": "number",
"maximum": 45,
"minimum": 10
},
"diagonalVentLengthMm": {
"type": "number",
"maximum": 44,
"minimum": 8
},
"lidScrewHolesEnabled": {
"type": "boolean"
},
"diagonalVentSpacingMm": {
"type": "number",
"maximum": 20,
"minimum": 1
},
"driveEnclosureFromPcb": {
"type": "boolean"
},
"voronoiMaxOverhangDeg": {
"type": "number",
"const": 45
}
},
"description": "Workbench geometry parameters. Use the returned normalized values for review and quoting.",
"additionalProperties": false
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
},
"idempotencyKey": {
"type": "string",
"maxLength": 128,
"minLength": 8,
"description": "Stable unique key for retrying this complete-set quote."
},
"reviewConfirmed": {
"type": "boolean",
"const": true,
"description": "True only after the customer reviews this exact draft, mounting, openings, component and plug clearances. Does not authorize checkout."
},
"reviewedRevision": {
"type": "string",
"maxLength": 64,
"minLength": 64,
"description": "Exact revision returned by preparation and reviewed by the customer."
}
},
"additionalProperties": false
}Compliant gripper kits with two TPU pads, two rigid carriers and two keepers per kit. Quote the exact customer-reviewed configuration and revision as one complete set. Consumes one quote allowance. Reuse idempotencyKey for retries. Returns a browser link for customer checkout; individual-part update and checkout are blocked.
| Argument | Type | Description |
|---|---|---|
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
| configuration* | object | Workbench configuration including geometry, materials, quantity and order options. |
| idempotencyKey* | string | Stable unique key for retrying this complete-set quote. |
| reviewConfirmed* | boolean | True only after the customer has reviewed this exact design revision. |
| reviewedRevision* | string | Exact revision returned by preparation and reviewed by the customer. |
{
"type": "object",
"required": [
"configuration",
"reviewedRevision",
"reviewConfirmed",
"idempotencyKey"
],
"properties": {
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
},
"configuration": {
"type": "object",
"required": [
"preview_gap",
"pad_width",
"pad_height",
"gyroid_depth",
"lattice_depth",
"grip_depth",
"gyroid_period",
"gyroid_level",
"gyroid_resolution",
"wave_count",
"face_skin",
"spine_depth",
"rib_count",
"rib_thickness",
"rib_bow",
"root_fillet",
"fit_clearance",
"backer_thickness",
"rail_neck",
"rail_head",
"rail_depth",
"bottom_stop",
"vertical_clearance",
"keeper_thickness",
"retaining_bolt_diameter",
"mount_access_clearance",
"mount_spacing",
"mount_hole_diameter",
"mount_slot_extra",
"mount_head_diameter",
"mounting_slots",
"quantity",
"padMaterialId",
"rigidMaterialId",
"productionSpeed",
"fulfillmentMethod"
],
"properties": {
"rib_bow": {
"type": "number",
"maximum": 2.4,
"minimum": 0.8,
"description": "Rib bow limit"
},
"quantity": {
"type": "integer",
"maximum": 75,
"minimum": 1,
"description": "Complete kits; each kit has two pads, two carriers and two keepers."
},
"face_skin": {
"type": "number",
"maximum": 2.4,
"minimum": 1.2,
"description": "Contact wall"
},
"pad_width": {
"type": "number",
"maximum": 110,
"minimum": 50,
"description": "Pad width"
},
"rail_head": {
"type": "number",
"maximum": 8,
"minimum": 5,
"description": "Rail head"
},
"rail_neck": {
"type": "number",
"maximum": 4,
"minimum": 2.4,
"description": "Rail neck"
},
"rib_count": {
"type": "integer",
"maximum": 11,
"minimum": 5,
"description": "Rib count"
},
"grip_depth": {
"type": "number",
"maximum": 10,
"minimum": 4,
"description": "Contact depth"
},
"pad_height": {
"type": "number",
"maximum": 40,
"minimum": 16,
"description": "Pad height"
},
"rail_depth": {
"type": "number",
"maximum": 3.4,
"minimum": 1.8,
"description": "Rail depth limit"
},
"wave_count": {
"type": "integer",
"maximum": 6,
"minimum": 3,
"description": "Contact waves"
},
"bottom_stop": {
"type": "number",
"maximum": 3,
"minimum": 1.5,
"description": "Lower seat"
},
"preview_gap": {
"type": "number",
"maximum": 70,
"minimum": 10,
"description": "Opening"
},
"root_fillet": {
"type": "number",
"maximum": 0.8,
"minimum": 0.3,
"description": "Root allowance"
},
"spine_depth": {
"type": "number",
"maximum": 6,
"minimum": 4,
"description": "Retention spine"
},
"gyroid_depth": {
"type": "number",
"maximum": 8,
"minimum": 2,
"description": "Gyroid layer"
},
"gyroid_level": {
"type": "number",
"maximum": 0.8,
"minimum": 0.35,
"description": "Sheet level"
},
"fit_clearance": {
"type": "number",
"maximum": 0.6,
"minimum": 0.15,
"description": "Sliding fit"
},
"gyroid_period": {
"type": "number",
"maximum": 12,
"minimum": 4,
"description": "Cell size"
},
"lattice_depth": {
"type": "number",
"maximum": 20,
"minimum": 8,
"description": "Rib layer"
},
"mount_spacing": {
"type": "number",
"maximum": 80,
"minimum": 20,
"description": "Mounting centers"
},
"padMaterialId": {
"enum": [
"black_tpu_85a",
"black_tpu_95a"
],
"type": "string"
},
"rib_thickness": {
"type": "number",
"maximum": 2,
"minimum": 1,
"description": "Rib wall"
},
"mounting_slots": {
"type": "boolean"
},
"productionSpeed": {
"enum": [
"standard",
"rush"
],
"type": "string"
},
"rigidMaterialId": {
"enum": [
"black_pla",
"red_pla",
"silver_pla",
"matte_black_pla",
"orange_petg",
"white_petg",
"black_petg",
"black_asa",
"black_ppa_cf"
],
"type": "string"
},
"backer_thickness": {
"type": "number",
"maximum": 10,
"minimum": 6,
"description": "Carrier thickness"
},
"keeper_thickness": {
"type": "number",
"maximum": 4,
"minimum": 2,
"description": "Keeper thickness"
},
"mount_slot_extra": {
"type": "number",
"maximum": 8,
"minimum": 0,
"description": "Slot adjustment"
},
"fulfillmentMethod": {
"enum": [
"shipping",
"pickup",
"courier"
],
"type": "string"
},
"gyroid_resolution": {
"type": "number",
"maximum": 0.8,
"minimum": 0.4,
"description": "Export spacing"
},
"vertical_clearance": {
"type": "number",
"maximum": 0.5,
"minimum": 0.1,
"description": "Vertical fit"
},
"mount_head_diameter": {
"type": "number",
"maximum": 10,
"minimum": 6,
"description": "Mounting head"
},
"mount_hole_diameter": {
"type": "number",
"maximum": 5.5,
"minimum": 3,
"description": "Mounting bore"
},
"mount_access_clearance": {
"type": "number",
"maximum": 0.8,
"minimum": 0.3,
"description": "Driver clearance"
},
"retaining_bolt_diameter": {
"type": "number",
"maximum": 4,
"minimum": 2.5,
"description": "Retaining bolt bore"
}
},
"description": "Workbench configuration including geometry, materials, quantity and order options.",
"additionalProperties": false
},
"idempotencyKey": {
"type": "string",
"maxLength": 128,
"minLength": 8,
"description": "Stable unique key for retrying this complete-set quote."
},
"reviewConfirmed": {
"type": "boolean",
"const": true,
"description": "True only after the customer has reviewed this exact design revision."
},
"reviewedRevision": {
"type": "string",
"pattern": "^[0-9a-f]{64}$",
"description": "Exact revision returned by preparation and reviewed by the customer."
}
},
"additionalProperties": false
}Matched lower and upper stamping dies using the approved print process. Simulation is not exposed. Quote the exact customer-reviewed configuration and revision as one complete set. Consumes one quote allowance. Reuse idempotencyKey for retries. Returns a browser link for customer checkout; individual-part update and checkout are blocked.
| Argument | Type | Description |
|---|---|---|
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
| configuration* | object | Workbench configuration including geometry, materials, quantity and order options. |
| idempotencyKey* | string | Stable unique key for retrying this complete-set quote. |
| reviewConfirmed* | boolean | The customer reviewed this exact die pair, sheet assumptions, quantity and prototype limitations. This does not authorize checkout or certify a pressing process. |
| reviewedRevision* | string | Exact revision returned by preparation and reviewed by the customer. |
{
"type": "object",
"required": [
"configuration",
"reviewedRevision",
"reviewConfirmed",
"idempotencyKey"
],
"properties": {
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
},
"configuration": {
"type": "object",
"required": [
"parameters",
"sheet",
"quantity",
"materialId",
"fulfillmentMethod",
"productionSpeed"
],
"properties": {
"sheet": {
"type": "object",
"required": [
"material",
"E",
"nu",
"yield",
"tangent",
"friction",
"quality",
"cycle"
],
"properties": {
"E": {
"type": "number",
"maximum": 250000,
"minimum": 10000
},
"nu": {
"type": "number",
"maximum": 0.45,
"minimum": 0.2
},
"cycle": {
"enum": [
"press",
"full"
],
"type": "string"
},
"yield": {
"type": "number",
"maximum": 1500,
"minimum": 10
},
"quality": {
"enum": [
"quick",
"fine"
],
"type": "string"
},
"tangent": {
"type": "number",
"maximum": 10000,
"minimum": 0
},
"friction": {
"type": "number",
"maximum": 0.5,
"minimum": 0
},
"material": {
"enum": [
"steel",
"aluminum",
"copper"
],
"type": "string"
}
},
"additionalProperties": false
},
"quantity": {
"type": "integer",
"maximum": 150,
"minimum": 1,
"description": "Number of matched lower/upper die pairs."
},
"materialId": {
"enum": [
"black_pla"
],
"type": "string"
},
"parameters": {
"type": "object",
"required": [
"pattern",
"width",
"height",
"operation",
"artwork",
"guided",
"depth",
"thickness",
"blend",
"clearance",
"backing"
],
"properties": {
"blend": {
"type": "number",
"maximum": 4.5,
"minimum": 1
},
"depth": {
"type": "number",
"maximum": 2.4,
"minimum": 0.2
},
"width": {
"type": "number",
"maximum": 100,
"minimum": 30
},
"guided": {
"type": "boolean"
},
"height": {
"type": "number",
"maximum": 80,
"minimum": 25
},
"artwork": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"width",
"height",
"mask"
],
"properties": {
"mask": {
"type": "string",
"pattern": "^[01]+$",
"maxLength": 36864,
"minLength": 64,
"description": "Row-major binary artwork mask. Its length must equal width × height. Use the browser to convert text or SVG artwork."
},
"name": {
"type": "string",
"maxLength": 80
},
"text": {
"type": "string",
"maxLength": 32
},
"width": {
"type": "integer",
"maximum": 192,
"minimum": 8
},
"height": {
"type": "integer",
"maximum": 192,
"minimum": 8
}
},
"additionalProperties": false
}
]
},
"backing": {
"type": "number",
"const": 5,
"description": "Approved stamping-process backing thickness in millimeters."
},
"pattern": {
"enum": [
"ring",
"letter",
"rib",
"artwork"
],
"type": "string"
},
"clearance": {
"type": "number",
"maximum": 0.4,
"minimum": 0.05
},
"operation": {
"enum": [
"emboss",
"deboss"
],
"type": "string"
},
"thickness": {
"type": "number",
"maximum": 0.8,
"minimum": 0.1
}
},
"additionalProperties": false
},
"productionSpeed": {
"enum": [
"standard",
"rush"
],
"type": "string"
},
"fulfillmentMethod": {
"enum": [
"shipping",
"pickup",
"courier"
],
"type": "string"
}
},
"description": "Workbench configuration including geometry, materials, quantity and order options.",
"additionalProperties": false
},
"idempotencyKey": {
"type": "string",
"maxLength": 128,
"minLength": 8,
"description": "Stable unique key for retrying this complete-set quote."
},
"reviewConfirmed": {
"type": "boolean",
"const": true,
"description": "The customer reviewed this exact die pair, sheet assumptions, quantity and prototype limitations. This does not authorize checkout or certify a pressing process."
},
"reviewedRevision": {
"type": "string",
"pattern": "^[a-f0-9]{64}$",
"maxLength": 64,
"minLength": 64,
"description": "Exact revision returned by preparation and reviewed by the customer."
}
},
"additionalProperties": false
}Locating nests, clamped fixtures and soft jaws from dimensions or a supported straight-extrusion STL. Quote the exact customer-reviewed configuration and revision as one complete set. Consumes one quote allowance. Reuse idempotencyKey for retries. Returns a browser link for customer checkout; individual-part update and checkout are blocked.
| Argument | Type | Description |
|---|---|---|
| accessToken | string | Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token. |
| configuration* | object | Workbench configuration including geometry, materials, quantity and order options. |
| idempotencyKey* | string | Stable unique key for retrying this complete-set quote. |
| reviewConfirmed* | boolean | The complete current configuration, mounting pattern and setup notes were reviewed. Geometry checks do not certify clamping strength or the machining setup. |
| reviewedRevision* | string | Exact revision returned by preparation and reviewed by the customer. |
{
"type": "object",
"required": [
"configuration",
"reviewedRevision",
"reviewConfirmed",
"idempotencyKey"
],
"properties": {
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
},
"configuration": {
"type": "object",
"required": [
"fixtureType",
"jawMount",
"jawLength",
"jawHeight",
"jawThickness",
"jawGrip",
"jawGap",
"jawHoleSpacing",
"jawHoleHeight",
"jawBore",
"jawCounterbore",
"jawRecess",
"clampWidth",
"clampThickness",
"clampOverlap",
"clampBoltOffset",
"clampY",
"shape",
"partLength",
"partWidth",
"partHeight",
"stockLength",
"stockWidth",
"floor",
"depth",
"clearance",
"rotation",
"offsetX",
"offsetY",
"preset",
"materialId",
"quantity",
"fulfillmentMethod",
"productionSpeed",
"holes",
"outline"
],
"properties": {
"depth": {
"type": "number",
"maximum": 80,
"minimum": 1
},
"floor": {
"type": "number",
"maximum": 40,
"minimum": 1
},
"holes": {
"type": "array",
"items": {
"type": "object",
"required": [
"x",
"y",
"diameter",
"counterbore",
"recess"
],
"properties": {
"x": {
"type": "number",
"maximum": 160,
"minimum": -160
},
"y": {
"type": "number",
"maximum": 160,
"minimum": -160
},
"recess": {
"type": "number",
"maximum": 116,
"minimum": 1
},
"diameter": {
"type": "number",
"maximum": 20,
"minimum": 3
},
"counterbore": {
"type": "number",
"maximum": 30,
"minimum": 5
}
},
"additionalProperties": false
},
"maxItems": 12
},
"shape": {
"enum": [
"bracket",
"rectangle",
"round",
"custom"
],
"type": "string"
},
"clampY": {
"type": "number",
"maximum": 140,
"minimum": -140
},
"jawGap": {
"type": "number",
"maximum": 30,
"minimum": 0.5
},
"preset": {
"enum": [
"custom",
"smw-m6",
"smw-half",
"kurt"
],
"type": "string"
},
"jawBore": {
"type": "number",
"maximum": 20,
"minimum": 3
},
"jawGrip": {
"type": "number",
"maximum": 60,
"minimum": 2
},
"offsetX": {
"type": "number",
"maximum": 160,
"minimum": -160
},
"offsetY": {
"type": "number",
"maximum": 160,
"minimum": -160
},
"outline": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "number",
"maximum": 320,
"minimum": -320
},
"maxItems": 2,
"minItems": 2
},
"maxItems": 256
},
"jawMount": {
"enum": [
"kurt-dx6",
"custom"
],
"type": "string"
},
"quantity": {
"type": "integer",
"maximum": 150,
"minimum": 1
},
"rotation": {
"type": "number",
"maximum": 180,
"minimum": -180
},
"clearance": {
"type": "number",
"maximum": 2,
"minimum": 0.05
},
"jawHeight": {
"type": "number",
"maximum": 100,
"minimum": 30
},
"jawLength": {
"type": "number",
"maximum": 300,
"minimum": 50
},
"jawRecess": {
"type": "number",
"maximum": 35,
"minimum": 2
},
"partWidth": {
"type": "number",
"maximum": 280,
"minimum": 8
},
"clampWidth": {
"type": "number",
"maximum": 40,
"minimum": 14
},
"materialId": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"partHeight": {
"type": "number",
"maximum": 150,
"minimum": 3
},
"partLength": {
"type": "number",
"maximum": 280,
"minimum": 8
},
"stockWidth": {
"type": "number",
"maximum": 320,
"minimum": 25
},
"fixtureType": {
"enum": [
"nest",
"clamped",
"soft-jaws"
],
"type": "string"
},
"stockLength": {
"type": "number",
"maximum": 300,
"minimum": 25
},
"clampOverlap": {
"type": "number",
"maximum": 15,
"minimum": 3
},
"jawThickness": {
"type": "number",
"maximum": 100,
"minimum": 15
},
"jawHoleHeight": {
"type": "number",
"maximum": 80,
"minimum": 10
},
"clampThickness": {
"type": "number",
"maximum": 16,
"minimum": 6
},
"jawCounterbore": {
"type": "number",
"maximum": 32,
"minimum": 5
},
"jawHoleSpacing": {
"type": "number",
"maximum": 250,
"minimum": 20
},
"clampBoltOffset": {
"type": "number",
"maximum": 28,
"minimum": 10
},
"productionSpeed": {
"enum": [
"standard",
"rush"
],
"type": "string"
},
"fulfillmentMethod": {
"enum": [
"shipping",
"pickup",
"courier"
],
"type": "string"
}
},
"description": "Workbench configuration including geometry, materials, quantity and order options.",
"additionalProperties": false
},
"idempotencyKey": {
"type": "string",
"maxLength": 128,
"minLength": 8,
"description": "Stable unique key for retrying this complete-set quote."
},
"reviewConfirmed": {
"type": "boolean",
"const": true,
"description": "The complete current configuration, mounting pattern and setup notes were reviewed. Geometry checks do not certify clamping strength or the machining setup."
},
"reviewedRevision": {
"type": "string",
"pattern": "^[a-f0-9]{64}$",
"description": "Exact revision returned by preparation and reviewed by the customer."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [],
"properties": {
"sheet": {
"type": "object",
"required": [],
"properties": {
"E": {
"type": "number",
"maximum": 250000,
"minimum": 10000
},
"nu": {
"type": "number",
"maximum": 0.45,
"minimum": 0.2
},
"cycle": {
"enum": [
"press",
"full"
],
"type": "string"
},
"yield": {
"type": "number",
"maximum": 1500,
"minimum": 10
},
"quality": {
"enum": [
"quick",
"fine"
],
"type": "string"
},
"tangent": {
"type": "number",
"maximum": 10000,
"minimum": 0
},
"friction": {
"type": "number",
"maximum": 0.5,
"minimum": 0
},
"material": {
"enum": [
"steel",
"aluminum",
"copper"
],
"type": "string"
}
},
"description": "Workbench input: sheet. See the field constraints.",
"additionalProperties": false
},
"quantity": {
"type": "integer",
"maximum": 150,
"minimum": 1,
"description": "Number of matched lower/upper die pairs."
},
"materialId": {
"enum": [
"black_pla"
],
"type": "string",
"description": "Workbench input: materialId. See the field constraints."
},
"parameters": {
"type": "object",
"required": [],
"properties": {
"blend": {
"type": "number",
"maximum": 4.5,
"minimum": 1
},
"depth": {
"type": "number",
"maximum": 2.4,
"minimum": 0.2
},
"width": {
"type": "number",
"maximum": 100,
"minimum": 30
},
"guided": {
"type": "boolean"
},
"height": {
"type": "number",
"maximum": 80,
"minimum": 25
},
"artwork": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"width",
"height",
"mask"
],
"properties": {
"mask": {
"type": "string",
"pattern": "^[01]+$",
"maxLength": 36864,
"minLength": 64,
"description": "Row-major binary artwork mask. Its length must equal width × height. Use the browser to convert text or SVG artwork."
},
"name": {
"type": "string",
"maxLength": 80
},
"text": {
"type": "string",
"maxLength": 32
},
"width": {
"type": "integer",
"maximum": 192,
"minimum": 8
},
"height": {
"type": "integer",
"maximum": 192,
"minimum": 8
}
},
"additionalProperties": false
}
]
},
"backing": {
"type": "number",
"const": 5,
"description": "Approved stamping-process backing thickness in millimeters."
},
"pattern": {
"enum": [
"ring",
"letter",
"rib",
"artwork"
],
"type": "string"
},
"clearance": {
"type": "number",
"maximum": 0.4,
"minimum": 0.05
},
"operation": {
"enum": [
"emboss",
"deboss"
],
"type": "string"
},
"thickness": {
"type": "number",
"maximum": 0.8,
"minimum": 0.1
}
},
"description": "Workbench geometry parameters. Use the returned normalized values for review and quoting.",
"additionalProperties": false
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
},
"productionSpeed": {
"enum": [
"standard",
"rush"
],
"type": "string",
"description": "Workbench input: productionSpeed. See the field constraints."
},
"fulfillmentMethod": {
"enum": [
"shipping",
"pickup",
"courier"
],
"type": "string",
"description": "Workbench input: fulfillmentMethod. See the field constraints."
}
},
"additionalProperties": false
}| string |
| How the completed parts should be delivered. |
{
"type": "object",
"required": [
"quoteId",
"approvalConfirmed",
"idempotencyKey"
],
"properties": {
"quoteId": {
"type": "string",
"format": "uuid",
"description": "AIURION quote UUID returned by printing.quotes.create."
},
"materialId": {
"type": "string",
"description": "AIURION material identifier listed by printing.capabilities.get. Send this when creating a quote; omission defaults to black_pla. A material change re-slices the model and invalidates the prior price approval."
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
},
"idempotencyKey": {
"type": "string",
"maxLength": 128,
"minLength": 8,
"description": "Stable unique key for retrying checkout creation."
},
"productionSpeed": {
"enum": [
"standard",
"rush"
],
"type": "string",
"description": "Requested production priority: standard or rush."
},
"approvalConfirmed": {
"type": "boolean",
"const": true,
"description": "Set true only after the customer reviews and approves the quote."
},
"fulfillmentMethod": {
"enum": [
"shipping",
"courier"
],
"type": "string",
"description": "How the completed parts should be delivered."
}
},
"additionalProperties": false
}| string |
| Stable unique key for this quote attempt. |
{
"type": "object",
"oneOf": [
{
"not": {
"required": [
"fileBase64"
]
},
"required": [
"file"
]
},
{
"not": {
"required": [
"file"
]
},
"required": [
"fileName",
"fileBase64"
]
}
],
"required": [
"idempotencyKey"
],
"properties": {
"file": {
"type": "object",
"required": [
"download_url",
"file_id"
],
"properties": {
"file_id": {
"type": "string",
"description": "ChatGPT file identifier."
},
"file_name": {
"type": "string",
"description": "Optional original model filename."
},
"mime_type": {
"type": "string",
"description": "Optional MIME type."
},
"download_url": {
"type": "string",
"description": "Temporary HTTPS download URL supplied by ChatGPT."
}
},
"description": "User-selected model file supplied by ChatGPT. Use fileName if the file metadata omits its original filename.",
"additionalProperties": false
},
"fileName": {
"type": "string",
"description": "Model filename ending in STL, OBJ, STEP, STP, or 3MF."
},
"quantity": {
"type": "integer",
"default": 1,
"maximum": 150,
"minimum": 1,
"description": "Number of identical parts to quote, from 1 to 150."
},
"fileBase64": {
"type": "string",
"description": "Base64-encoded model bytes without a data URL prefix."
},
"materialId": {
"type": "string",
"description": "AIURION material identifier listed by printing.capabilities.get. Send this when creating a quote; omission defaults to black_pla. A material change re-slices the model and invalidates the prior price approval."
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
},
"idempotencyKey": {
"type": "string",
"maxLength": 128,
"minLength": 8,
"description": "Stable unique key for this quote attempt."
}
},
"additionalProperties": false
}| string |
| How the completed parts should be delivered. |
{
"type": "object",
"required": [
"quoteId"
],
"properties": {
"quoteId": {
"type": "string",
"format": "uuid",
"description": "AIURION quote UUID returned by printing.quotes.create."
},
"quantity": {
"type": "integer",
"maximum": 150,
"minimum": 1,
"description": "Updated number of identical parts, from 1 to 150."
},
"materialId": {
"type": "string",
"description": "AIURION material identifier listed by printing.capabilities.get. Send this when creating a quote; omission defaults to black_pla. A material change re-slices the model and invalidates the prior price approval."
},
"accessToken": {
"type": "string",
"maxLength": 138,
"minLength": 34,
"description": "Guest token returned by printing.sessions.start. Optional when Authorization already carries a permanent key or guest token."
},
"productionSpeed": {
"enum": [
"standard",
"rush"
],
"type": "string",
"description": "Requested production priority: standard or rush."
},
"fulfillmentMethod": {
"enum": [
"shipping",
"courier"
],
"type": "string",
"description": "How the completed parts should be delivered."
}
},
"additionalProperties": false
}