Full flow: discover products or upload a model → price → address → pay → track PDS and delivery. Stable REST; MCP rolling out.
Manifest at /api/open3d/mcp.json. Tools: list_products, create_quote, create_order, get_order. Fits Cursor, Claude Desktop, and MCP-capable agents.
Public read (products, docs). Write (orders/payment) will require a Bearer API key in production — Authorization: Bearer <key>. Request a key at hello@open3d.pt.
JSON spec at /api/open3d/openapi.json. Machine-readable summary at /llms.txt for crawlers and agents.
curl -s -X POST https://open3d.pt/api/open3d/quote \
-F file=@part.stl \
-F material=pla \
-F finish=raw \
-F quantity=1
curl -s -X POST https://open3d.pt/api/open3d/orders \
-H 'Content-Type: application/json' \
-d '{
"product_id": "hex-tray",
"quantity": 1,
"email": "agent@example.com",
"payment_method": "card",
"shipping_address": {
"name": "Agent Bot",
"line1": "Rua Example 1",
"city": "Lisboa",
"postal_code": "1000-001",
"country": "PT"
}
}'
curl -s "https://open3d.pt/api/open3d/orders/{id}/pds?email=agent@example.com"
Quote and catalog are live. Checkout/payment/PDS return a stable contract with preview status while the payment gateway lands.