Aurabase Logo
aurabasedocs
docs›Services›Notifications

Notifications

SMTP email, SMS, mobile push, outgoing webhooks. i18n templates, rate-limit per channel, bounce management, HMAC signatures. Everything from a job edge.

5 min read·Level beginner·Revised on Apr 15, 2026
This English text was generated automatically from the French original and has not been reviewed yet.
#
Overview

Four channels, one unified SDK

The aura-notifications service exposes a single aura.notify.* surface which manages email, SMS, push and webhooks. Calls go through a NATS queue with retry, backoff, and DLQ — you send, we guarantee delivery (or refund the credit).

Info

Templates, logs and quotas live in project_{uuid}_platform.notifications_*. 30-day retention of delivery logs (2 years on Enterprise).

#
4 channels

What each channel guarantees

Email (SMTP)

MJML/HTML templates with Liquid, DKIM/SPF/DMARC, rate-limit by domain, bounces managed automatically.

SMS

Multiple providers (Twilio, Vonage, OVH), routing by country, automatic fallback.

Push

APNs (iOS), FCM (Android), Web Push (VAPID). Self-validated device tokens, purging invalid ones.

Outgoing webhooks

HMAC-SHA256 signing, exponential retry (5 attempts), DLQ, rotating signatures.

#
Templates

MJML + Liquid, native i18n

Create templates from the Studio or via CLI. MJML syntax for email (responsive out-of-the-box), Liquid for templating. Locales managed by file welcome.fr.mjml, welcome.en.mjml.

EMAIL TEMPLATES

~12 per project

on average

LOCAL SUPPORTED

38

Liquid + auto fallback

DELIVERY P99

< 8s

queue → recipient

INBOX RATE

97.8%

DKIM + dedicated IP

#
Examples

Four channels in code

functions/send-welcome.tstypescript
await aura.notify.email({
  to: user.email,
  template: 'welcome',
  locale: 'fr',
  vars: { name: user.name, plan: 'Pro' },
})
Astuce

Continue with a edge.job() to decouple: the transmitter pushes into the notificationsqueue, the worker sends asynchronously with automatic retry.

Info

Signed webhook: configure a secret in Notifications → Settings → Webhook (or WEBHOOK_SIGNING_SECRET on the service side). Each send then carries the X-Aurabase-Signature: t={timestamp},v1={hmac-sha256} header — verification on the receiver side documented in the README of the @aurabase/notificationspackage.

Last updated · Apr 15, 2026