---
title: "Quote a reviewed complete enclosure base and lid"
method: POST
path: "/workbenches/enclosure/quote"
---

# Quote a reviewed complete enclosure base and lid

`POST /workbenches/enclosure/quote`

## Request

- Base URL: `https://aiurion.com/api/agent/v1`
- URL: `https://aiurion.com/api/agent/v1/workbenches/enclosure/quote`
- Auth: HTTP bearer

Consumes one allowance for both parts. Requires exact parameters and quantity returned by prepare, their reviewedRevision, and explicit customer reviewConfirmed. A changed revision is rejected. Reuse Idempotency-Key for retries. Returns authoritative complete-build pricing and a browser review/checkout link. Single-part update/checkout tools cannot modify or purchase these parts. No payment or checkout is created by this operation.

## Headers

- `Idempotency-Key` string, required

## Request body

- object
  - `parameters` object, required
    - `activeTemplate` 'enclosure'
    - `lengthMm` number
    - `widthMm` number
    - `heightMm` number
    - `wallMm` number
    - `basePlateThicknessMm` number
    - `lidThicknessMm` number
    - `cornerRadiusMm` number
    - `holeDiameterMm` number
    - `riserHeightMm` number
    - `standoffCount` integer
    - `portCount` integer
    - `ioCutouts` object[]
      - `shape` 'rectangle' | 'circle', required
      - `wall` 'front' | 'back' | 'left' | 'right', required
      - `offsetMm` number, required
      - `verticalOffsetMm` number, required
      - `widthMm` number, required
      - `heightMm` number, required
      - `diameterMm` number, required
    - `wallPattern` 'none' | 'diagonal_vents' | 'voronoi'
    - `diagonalVentAngleDeg` number
    - `diagonalVentLengthMm` number
    - `diagonalVentWidthMm` number
    - `diagonalVentSpacingMm` number
    - `voronoiWallEnabled` boolean
    - `voronoiWallTarget` 'all'
    - `voronoiMaxOverhangDeg` 45
    - `voronoiCellSizeMm` number
    - `voronoiWebMm` number
    - `voronoiSeed` integer
    - `includePcb` boolean
    - `driveEnclosureFromPcb` boolean
    - `pcbLengthMm` number
    - `pcbWidthMm` number
    - `pcbThicknessMm` number
    - `pcbHoleSpacingX` number
    - `pcbHoleSpacingY` number
    - `pcbWallClearanceMm` number
    - `pcbMountingHoles` object[], nullable
      - `x` number, required
      - `y` number, required
      - `diameterMm` number, required
    - `includeLid` true
    - `includeLidLip` boolean
    - `fastenerMode` 'none' | 'heat_set'
    - `lidScrewHolesEnabled` boolean
    - `lidScrewPlacement` 'external'
    - `lidScrewSize` 'm2' | 'm3'
    - `pcbScrewSize` 'm2' | 'm3'
    - `lidLipDepthMm` number
    - `lidFitClearanceMm` 0.08
    - `ventEnabled` boolean
    - `ventPattern` 'slots'
    - `ventSlotCount` integer
    - `ventSlotLengthMm` number
    - `ventSlotWidthMm` number
    - `ventSlotSpacingMm` number
    - `ventSlotRotationDeg` number
    - `materialId` string
  - `quantity` integer, required
  - `reviewedRevision` string, required
  - `reviewConfirmed` true, required: True only after the customer reviews this exact draft, mounting, openings, component and plug clearances. Does not authorize checkout.

## Response `200`

Idempotent replay

- object
  - `success` true, required
  - `workbench` 'enclosure'
  - `parameters` object, required
    - `activeTemplate` 'enclosure'
    - `lengthMm` number
    - `widthMm` number
    - `heightMm` number
    - `wallMm` number
    - `basePlateThicknessMm` number
    - `lidThicknessMm` number
    - `cornerRadiusMm` number
    - `holeDiameterMm` number
    - `riserHeightMm` number
    - `standoffCount` integer
    - `portCount` integer
    - `ioCutouts` object[]
      - `shape` 'rectangle' | 'circle', required
      - `wall` 'front' | 'back' | 'left' | 'right', required
      - `offsetMm` number, required
      - `verticalOffsetMm` number, required
      - `widthMm` number, required
      - `heightMm` number, required
      - `diameterMm` number, required
    - `wallPattern` 'none' | 'diagonal_vents' | 'voronoi'
    - `diagonalVentAngleDeg` number
    - `diagonalVentLengthMm` number
    - `diagonalVentWidthMm` number
    - `diagonalVentSpacingMm` number
    - `voronoiWallEnabled` boolean
    - `voronoiWallTarget` 'all'
    - `voronoiMaxOverhangDeg` 45
    - `voronoiCellSizeMm` number
    - `voronoiWebMm` number
    - `voronoiSeed` integer
    - `includePcb` boolean
    - `driveEnclosureFromPcb` boolean
    - `pcbLengthMm` number
    - `pcbWidthMm` number
    - `pcbThicknessMm` number
    - `pcbHoleSpacingX` number
    - `pcbHoleSpacingY` number
    - `pcbWallClearanceMm` number
    - `pcbMountingHoles` object[], nullable
      - `x` number, required
      - `y` number, required
      - `diameterMm` number, required
    - `includeLid` true
    - `includeLidLip` boolean
    - `fastenerMode` 'none' | 'heat_set'
    - `lidScrewHolesEnabled` boolean
    - `lidScrewPlacement` 'external'
    - `lidScrewSize` 'm2' | 'm3'
    - `pcbScrewSize` 'm2' | 'm3'
    - `lidLipDepthMm` number
    - `lidFitClearanceMm` 0.08
    - `ventEnabled` boolean
    - `ventPattern` 'slots'
    - `ventSlotCount` integer
    - `ventSlotLengthMm` number
    - `ventSlotWidthMm` number
    - `ventSlotSpacingMm` number
    - `ventSlotRotationDeg` number
    - `materialId` string
  - `quantity` integer, required
  - `revision` string, required: SHA-256 revision of exact normalized parameters and set quantity.
  - `reviewUrl` string, uri, required: Editable browser review link. Contains enclosure dimensions in its fragment; treat it as private design information.
  - `reviewRequired` boolean
  - `warnings` string[]
  - `build` object: Authoritative complete base and lid build, total and quote items. Present after quoting.
  - `quotes` object[]
  - `checkout` object
    - `mode` 'browser'
    - `url` string, uri
    - `approvalRequired` true
  - `idempotentReplay` boolean
  - `usage` object
    - `remainingQuotes` integer, nullable

## Other responses

- `201`: Complete enclosure quote
- `400`: Invalid request
- `401`: Missing, invalid, inactive, or expired token
- `403`: The credential lacks the required scope
- `404`: Resource not found
- `409`: Request conflict
- `413`: Uploaded request is too large
- `415`: Unsupported request content type
- `429`: Rate or beta quota exceeded
- `500`: Unexpected server error
- `503`: Agent API temporarily unavailable

---

[API](https://skmtc.dev/aiurion/apis/aiurion-agentic-3d-printing-api.md) · [All operations](https://skmtc.dev/aiurion/apis/aiurion-agentic-3d-printing-api/llms.txt) · [OpenAPI document](https://skmtc.dev/aiurion/apis/aiurion-agentic-3d-printing-api/revisions/949ce997a10c?raw)
