Automatiseer via de API
Dezelfde functies als in je werkruimte, met expliciete rechten en accountgrenzen.
Toegang
Log in in de werkruimte en maak een token onder ‘API & tokens’. Bewaar het geheim in je eigen systeem. Stuur het als Bearer-header. Je kunt het direct intrekken; de geldigheid kies je zelf, maximaal 365 dagen.
Authorization: Bearer <YOUR_TOKEN> Content-Type: application/json
Lees- en schrijfrechten zijn afzonderlijk voor prints, links, websites en generatie. Tokens kunnen geen andere tokens maken. Publicatie van Smart Links gebeurt via je browsersessie na een preview. Een token voor één Smart Link kan alleen dat concept bewerken.
Een print berekenen en aanvragen
- Upload het bestand zonder account. Bewaar het ID en het private bestandstoken uit het antwoord.
- Stuur je keuzes met x-estimate-token. Vraag daarna de status op totdat de prijs of handmatige beoordeling beschikbaar is.
- Bewaar de aanvraag met prints:write: adres, bestand-ID/token, notitie en optionele foto-ID's. Upload foto's eerst met POST /images.
curl https://omnitechs.nl/api/v1/calculator \
-F "[email protected]"
curl https://omnitechs.nl/api/v1/calculator/<FILE_ID> \
-H "x-estimate-token: <FILE_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"unit":"mm","scalePercent":100,"materialId":"pla","colourId":"unsure","qualityId":"standard","useId":"functional","quantity":1,"customerTypeId":"private"}'STL/3MF: maximaal 40 MiB. Een indicatie is geen geaccepteerde offerte of printopdracht. Ingestuurde bestanden: maximaal 90 dagen; overige uploads: 7 dagen. Adressen zijn momenteel beperkt tot Nederland.
Generatie en herhaalde verzoeken
Gebruik generation:write om een basisgeneratie te starten. Je saldo wordt gereserveerd; een mislukte provider-taak wordt terugbetaald. Geef één idempotency-key per poging en hergebruik die bij een netwerkfout. Verander de inhoud niet onder dezelfde sleutel. Maximaal drie actieve taken per account.
curl https://omnitechs.nl/api/v1/generation \
-H "Authorization: Bearer <YOUR_TOKEN>" \
-H "idempotency-key: <OPAQUE_ATTEMPT_ID>" \
-H "Content-Type: application/json" \
-d '{"kind":"text","prompt":"A simple low-poly planter","imageIds":[]}'Controleer /capabilities voor beschikbaarheid. Resultaten worden lokaal bewaard voordat de taak ‘SUCCEEDED’ wordt. Download ze met generation:read. Voor beeldgeneratie zijn eigen JPEG/PNG-upload-ID's nodig; externe afbeelding-URL's worden geweigerd.
Smart Link MCP
Maak een Smart Link in de werkruimte en daar een token voor die ene link. Verbind je AI met /api/v1/mcp via Streamable HTTP en een Bearer-header. Tools: get_smart_link en update_smart_link. Gebruik de actuele revision bij een wijziging. Een conflict geeft geen overschrijving; laad het concept opnieuw.
MCP ondersteunt protocol 2025-11-25, 2025-06-18 en 2025-03-26. De client moet application/json én text/event-stream accepteren. Er is geen OAuth-aanmeldflow; kies een client die aangepaste Bearer-headers ondersteunt.
Websites
/websites bewaart je projectdoel en platformkeuze: wordpress, nextjs of advise. Provisioning en publiceren zijn nog niet beschikbaar; een opgeslagen concept is geen live website.
Endpointoverzicht
GET /api/v1/printsList account-owned printsPOST /api/v1/printsCreate account-owned printsGET /api/v1/linksList account-owned linksPOST /api/v1/linksCreate account-owned linksGET /api/v1/websitesList account-owned website drafts (provisioning unavailable)POST /api/v1/websitesCreate account-owned website drafts (provisioning unavailable)GET /api/v1/links/{id}Read account-owned Smart LinkPATCH /api/v1/links/{id}Save Smart Link with revision checkingGET /api/v1/websites/{id}Read account-owned website draftPATCH /api/v1/websites/{id}Save website draft with revision checkingGET /api/v1/prints/{id}Read your saved print applicationGET /api/v1/prints/{id}/fileDownload your original print file within its retention windowGET /api/v1/generationList your generation jobsPOST /api/v1/generationReserve balance and start a base Meshy generationGET /api/v1/generation/{id}Poll your provider task and settle its outcomeGET /api/v1/generation/files/{id}/{format}Download your retained local modelPOST /api/v1/imagesUpload an account-owned image, up to 8 MiB, for prints or generationGET /api/v1/tokensBrowser session: list redacted token metadataPOST /api/v1/tokensBrowser session: issue a one-time tokenDELETE /api/v1/tokens/{id}Browser session: revoke your token immediatelyPOST /api/v1/calculatorPublic STL/3MF upload, up to 40 MiBGET /api/v1/calculator/{id}Read an estimate with its private capabilityPOST /api/v1/calculator/{id}Queue slicing with approved material, quality and quantity choicesPOST /api/v1/mcpSmart Link MCP Streamable HTTP; link scopes and JSON-RPC 2.0GET /api/v1/capabilitiesRead current generation and provisioning availability without secretsGET /api/v1/openapiRead this OpenAPI contract
Fouten en limieten
401: log in of vervang een ongeldig token. 403: controleer rechten en browserorigin. 409: laad de versie opnieuw of controleer de eerdere generatiepoging. 429: wacht of verlaag je gebruik. 503: afhankelijkheid niet beschikbaar. Bewaar x-request-id voor ondersteuning; stuur nooit je token mee in een log of URL.
Werkruimte: 30 verzoeken per minuut per IP en 90 per account. Calculator per IP: 20 uploads en 60 berekeningen per uur, 90 statusverzoeken per minuut. Maximaal 50 records per type en 20 actieve API-tokens. Verzoeken en downloads zijn privé en worden niet openbaar gecachet.