Skip to content

DRSE API

Design once in the web app. Then create campaigns, load recipients and send letters.

Send your first letter

bash
curl -X POST http://localhost:3000/api/v1/campaigns \
  -H "x-api-key: drse_your_api_key" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Summer promo",
    "templateId": "<template-uuid>",
    "recipients": [
      { "name": "Alice Andersson", "street": "1 First St", "postCode": "111 11", "postTown": "Stockholm", "country": "SE" }
    ]
  }'

That creates a list, imports the recipient, renders a personalised document and queues it for print. Check the state at GET /api/v1/campaigns/:id

Before you start

There is no unsend

A campaign that reaches processing is being printed. It cannot be recalled, edited or stopped. Treat campaign creation as an irreversible, billable action — and always send an Idempotency-Key to avoid duplication.

Two ways to supply content

Reference a template by id — designed in the web app, the only manual step — or send your own print-ready PDF. Raw editor content is not supported.

Find your way around

If you want to…Start here
Send something todayQuickstart
Understand the model firstIntroduction
Send to a reusable audienceCampaign from a saved list
Send addresses you already holdCampaign with inline recipients
Upload a spreadsheetCampaign from a CSV or Excel file
Print your own artworkCampaign from a PDF
Add a QR code you can repoint laterTrack QR scans
Look up a field or status codeAPI reference
Go live safelyProduction checklist