Changelog
Dated, API-visible changes to the X3D print API since it launched on 30 July 2026 — new fields, price changes, and what each one means for a caller.
This is every change to the print API that a caller could notice, since it went live on 30 July 2026. It is short because the API is small and has changed slowly. Most entries are price changes rather than shape changes: no request field has ever been removed, and no response field has ever been renamed.
2026#
| Date | Change |
|---|---|
| 9 September | These API docs published. No change to any endpoint. |
| 9 September | Stock colour palette fixed at twelve names; every other colour prices at a $0.20/g floor. |
| 7 September | US postage $5 → $7. PLA $0.10 → $0.12/g, PETG $0.11 → $0.12/g. |
| 30 August | The per-gram rate became all-in. Per-part minimum $3.00 → $1.00, premium quality became a 1.75× multiplier, billable weight now rounds up to the whole gram, PLA density 1.24 → 1.26 g/cm³. |
| 24 August | Already-sliced files priced from the slicer's measured filament and time, not from geometry. |
| 19 August | Build volume check raised from a 256 mm cube to 340 × 320 × 340 mm. |
| 6 August | modelUrl accepted as an alternative to a file upload. Chrome-extension tokens accepted on submit. |
| 30 July | The print API launched: submit, read status, manage keys, billed to the card on file. |
9 September 2026 — colours#
Twelve colours are stocked and print at the material's own rate: Black, White, Red, Cyan, Sakura Pink, Sunny Orange, Green, Yellow, Mint Green, Lavender, Silver and Brown. Anything else has to be bought in as a spool, so it prices at a floor of $0.20/g. Names are matched case-insensitively, and a hex value matching a stock spool counts as stock.
7 September 2026 — postage and two materials#
- US postage went from $5 to $7 flat. The free-shipping threshold stayed at $50, and international stayed at $30 flat, free at $500.
- PLA went from $0.10 to $0.12 per gram; PETG from $0.11 to $0.12. ABS, ASA and TPU were unchanged at $0.12, $0.14 and $0.13.
- Nothing about the request or response changed — the same fields came back with different numbers in them.
30 August 2026 — one rate, all in#
Before this, a quote was filament plus an hourly machine charge on every print, floored at $3.00 per part. After it, the per-gram rate covers filament and normal machine time together, and machine time is billed separately only where weight cannot explain it — filament changes, and sliced files whose measured hours far exceed what their weight implies. Premium quality became a 1.75× multiplier on the rate rather than a separate slower price.
- The per-part minimum dropped from $3.00 to $1.00, so small parts finally cost roughly what their weight implies.
- Billable weight rounds up to the whole gram, so quotes agree with what a slicer displays.
- PLA density moved from a generic 1.24 to 1.26 g/cm³, the figure the spools the farm actually loads are specified at. Weights came out about 2% heavier as a result.
24 August 2026 — sliced files bill what the slicer measured#
Submitting a .gcode or .gcode.3mf now prices from the filament weight and print time in the file rather than from an estimate of its geometry. This matters most for multi-colour plates: every filament change purges the hotend, so four colours on one model can use three times the material and forty times the time of a single-colour print of the same shape, and no volume estimate can see that. Meshes are unaffected.
19 August 2026 — a bigger plate#
The size check rejected anything over a 256 mm cube, a limit inherited from a printer the farm no longer runs. It is now 340 × 320 × 340 mm, measured against the model's best orientation rather than axis by axis, so a long part that fits when rotated is accepted. Models between those two sizes started going through instead of coming back as a 422.
6 August 2026 — ordering a model we already hold#
- modelUrl became an alternative to uploading a file: pass the storage URI of a model your account generated and we read it from our own storage. Ownership is re-checked on every call — someone else's URI is a 403.
- Chrome-extension tokens (x3d_ext_…) became acceptable on POST /api/print/orders alongside print-API keys. They still are not accepted on the status endpoint, which takes an x3d_live_ key only.
30 July 2026 — launch#
- POST /api/print/orders — submit a model plus a shipping address as multipart/form-data.
- GET /api/print/orders/{code} — read one order you own.
- GET, POST and DELETE /api/account/api-key — read your key's status, issue or rotate the key, and revoke it, all from a signed-in session.
- Orders are auto-billed to the card on file at submission, and a card is required before a key can be issued at all.
- nozzleDiameter, nozzleFlow and layerHeight are accepted on submit and feed the price.
- STL, GLB, .gcode and .gcode.3mf accepted, up to 100 MB. OBJ has never been accepted here.