Changelog

Changes to the Reggio Digital API that an integration would notice, newest first.

Changes an integration would notice, newest first. Additions within v1 never break existing code; see versioning.

2026-09-25

  • The account API: read websites, backups and visits, support requests and replies, domains, DNS zones and records, invoices and plans, with the new websites:read, tickets:read, domains:read and billing:read abilities. Keys for it are made under API keys in the dashboard.
  • Lists share one shape, data, has_more and next_cursor, paged with limit and cursor.
  • An address under /api/v1 that does not exist now answers 404 with not_found in the standard error shape, and a method an address does not take answers 405 with method_not_allowed. Both carry error.request_id like every other error.
  • GET /api/v1/me tells a key which account it belongs to, what abilities it has and when it stops working, if it has been replaced.
  • The versioning promise now says how long v1 keeps working once a new version ships: at least 12 months.

2026-09-14

  • Published these developer docs.
  • A 429 from the rate limit now uses the standard error shape, with the type rate_limited, instead of a bare message.

2026-09-11

  • Connect several applications to one account, each with its own key, abilities and optional sending-domain limits.
  • Replace a key with an overlap of up to a week, so the old one keeps working while you deploy the new one.
  • New newsletter:read ability, for a key that can look subscribers up but not change them.

2026-09-10

  • Webhooks: signed notifications for email delivery events, newsletter subscribers, preference changes and received mail.
  • Every response carries X-Reggio-Request-Id, and every error repeats it as error.request_id.
  • PATCH /api/v1/emails/{id} moves a scheduled message to a new time.

2026-09-09

  • The newsletter subscriber API: lists, fields, add or update, look up and unsubscribe, with the newsletter:manage ability.

2026-09-08

  • Send a published email template with template_id and variables.
  • Validation failures use the standard error shape, with error.fields.
  • suppressed is returned on every kind of send, including scheduled sends and each message in a batch.

2026-09-01

  • Scheduled sends with scheduled_at, cancelled with DELETE /api/v1/emails/{id}.
  • POST /api/v1/emails/batch for up to 100 messages at once.
  • tags, custom headers and the Idempotency-Key header.
  • Attachments, by content or by link, and inline images.
  • GET /api/v1/emails/{id} to see what happened to a message.

2026-08-24

  • The transactional email API: POST /api/v1/emails.
  • SMTP credentials for any verified sending domain.