@insureco/relay 0.9.1

Released: 2026-09-26

@insureco/relay 0.9.1 — email attachments (sendEmail.attachments, ≤10 files / ~25 MB decoded), delivery status lookup and signed delivery webhooks. No breaking changes for 0.6.x callers.

Migration

Migrating from: 0.6.2

Guide: https://tawa.insureco.io/docs/reference/relay

Notes

Recorded by iec-ledger#541 (invoice email with the PDF attached), which bumps the ledger from ^0.6.2 to ^0.9.1. Verified against the ledger's existing sends (event-binding emails and the template test-send): RelayClient.fromEnv(), sendEmail({ to, content, options, metadata }) and the SendResponse.messageId contract are unchanged, and the TypeScript build is clean with no code changes to those callers.

New since 0.6.x, as used by the ledger:

  • sendEmail({ attachments: [{ filename, content (base64), contentType, disposition? }] }) — email channel only; the relay service refuses more than 10 files or more than ~25 MB total decoded with a 400. Enforce the limit before sending for a clear error.
  • SendResponse carries providerMessageId and the RFC 5322 Message-ID for reply matching.
  • getStatus(messageId) and listMessages() for delivery status; POST /webhook-subscriptions for signed delivered / bounced / failed events (HMAC-SHA256 over the raw body).

Last updated: October 6, 2026