Bulk aanmaken
Body-parameters
itemsarrayverplicht1 tot 500 codes. Elke is { content, name?, slug?, folder?, fileName?, ref? }.items[].contentobjectverplichtDe inhoud van de code; het type moet gelijk zijn aan codeType.items[].refstringoptioneelJe eigen referentie (SKU, CRM-id), teruggegeven in de rijen en het resultatenbestand.items[].folderstringoptioneelDe naam van een submap onder folderId, aangemaakt als die ontbreekt.codeTypestringoptioneelEén type per verzoek. Standaard url.dynamicbooleanoptioneelStandaard true.folderIdstring | nulloptioneelWaar de codes heen gaan. Standaard de root van de werkruimte.templateIdstring | nulloptioneelHet ontwerp van elke code. Standaard het standaardontwerp van Dotwick.exportobject | nulloptioneelMaak ook een ZIP wanneer de run klaar is, bijvoorbeeld { formats: ["svg", "pdf"] }.Voorbeeldverzoek
curl -X POST https://api.dotwick.com/v1/codes/bulk \ -H "Authorization: Bearer sk_live_…" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: fleet-2026-09-batch-3" \ -d '{ "codeType": "url", "folderId": "fld_8k2m4q7x", "items": [ { "name": "Van 15", "content": { "type": "url", "url": "https://example.com/fleet/van-015" }, "ref": "VAN-015" }, { "name": "Van 16", "content": { "type": "url", "url": "https://example.com/fleet/van-016" }, "ref": "VAN-016" } ], "export": { "formats": [ "svg", "pdf" ] } }'{ "id": "blk_9f24ab7c3e1d5f80", "status": "queued", "source": "api", "codeType": "url", "dynamic": true, "counts": { "total": 2, "valid": 2, "invalid": 0, "created": 0, "failed": 0, "canceled": 0 }, "progress": 0, "folderId": "fld_8k2m4q7x", "exportId": null, "createdAt": "2026-09-12T14:03:51.000Z"}De run volgen
Het antwoord is 202 Accepted met de run. Vraag GET /v1/bulk-imports/{id} op totdat de status succeeded, partially_succeeded of failed is, en lees dan de codes met GET /v1/bulk-imports/{id}/rows of download GET /v1/bulk-imports/{id}/results.csv. Of abonneer je op bulk.completed en sla het pollen over.
Een misvormd item laat het hele verzoek mislukken met validation_failed bij items.N. Items die databasecontroles niet doorstaan (een slug die al bestaat) worden overgeslagen en als ongeldig geteld; de rest wordt aangemaakt. Probeer de mislukte opnieuw met POST /v1/bulk-imports/{id}/retry.
Limieten
Eén codetype per verzoek: stuur één verzoek per type. De bulkrijlimiet van het abonnement en de limiet voor dynamische codes gelden, en runs boven de gelijktijdige taken van het abonnement wachten in een wachtrij.