Docs
The Dotwick API
REST over JSON. Create a code, change where it goes, get a signed webhook when someone scans it. The reference below is generated from the same contracts the API validates with. No SDK needed: every example is curl, JavaScript or Python.
Getting started
Getting startedQuickstartThree steps: create a key in the app, create a code, and scan the short link it returns.Getting startedAuthenticationSend your secret key as a bearer token. Keys carry scopes and act with their creator's role in one workspace, capped at Editor.Getting startedErrorsErrors are JSON with a stable code to branch on, a human message and a request id for support.
Codes
Codes / Create a codeCreate a codeCreates a code and returns it with its short link. The destination of a dynamic code can be changed later with PATCH without touching the printed code.Codes / List codesList codesLists the codes the key can see, newest first, a page at a time. Filter by folder, type, status or a search term.Codes / Update a codeUpdate a codeChanges the destination, name, design, rules, folder or status of a code. The short link and every printed copy keep working — only where it points changes.Codes / Bulk createBulk createCreates up to 500 codes of one type in one request, as a background run you can follow — the same runs as a CSV upload in the app.
Analytics
Webhooks
Webhooks / Register an endpointRegister an endpointRegister an https endpoint and pick the events. We POST each event to it as JSON, signed so you can check it came from us, and retry until it answers 2xx.Webhooks / Event typesEvent typesEvery event shares one envelope. data carries the same objects the API returns, so one parser serves both.Webhooks / Verifying signaturesVerifying signaturesDeliveries are signed per the Standard Webhooks spec. Check the signature before you trust a payload.
Conversions
ConversionsConversion pixelCount visits and orders that follow a scan. A small script on your site keeps the click id and reports your goal. It waits for consent and sends no personal data.ConversionsServer postbackReport a conversion from your own server when an order is confirmed or the pixel never loaded. Send the click id your page kept, the event and an optional value.
Integrations
IntegrationsZapierSend scans, form answers and new codes to the apps Zapier connects, and create or change codes from a Zap. The Dotwick app for Zapier uses an API key.IntegrationsMakeRun Make scenarios on scans, form answers and new codes, and create or change codes from a scenario. The Dotwick app for Make uses an API key.IntegrationsShopifySee the revenue each QR code brings to your Shopify shop. The app reads order totals and the scan's click id, never who the customer is. Listing coming soon.IntegrationsSlackSend scan alerts and a weekly digest to a Slack channel, and create or check codes with /dotwick. The Slack listing is coming soon.IntegrationsHubSpot and SalesforceCreate contacts in HubSpot and leads in Salesforce from form answers and business card leads, and see a code’s scans on a timeline. Listings coming soon.
Business cards
Apps
AI assistants
Reference
ReferenceAPI referenceEvery route an API key can call and the scope it needs. Base URL https://api.dotwick.com, OpenAPI document at https://api.dotwick.com/openapi.json.ReferenceRate limitsLimits are per workspace, shared by every API key in it, and scale with the plan.ReferencePaginationLists are cursor paginated: { data, nextCursor }, newest first unless a sort says otherwise.ReferenceIdempotencySend an Idempotency-Key with a POST and retrying it can never do the work twice.ReferenceVersioningOne version, v1, under /v1. It only ever grows; nothing in it changes or disappears without a year's notice.ReferenceChangelogEvery addition and every deprecation of the API, newest first. Deprecation headers link here.