Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Novu

Schemesnovu://
Cargo featureservice-novu
Servicehttps://novu.co/
Body formatstext, html, markdown (first is the default)
Attachmentsno
Title length250 characters
Body length32,768 characters
Body linesunlimited
Request throttlenone
Vendor URLs acceptedno

URL formats

novu://{api_key}/{workflow_id}/{targets}

URL tokens

TokenMeaningTypeRequiredDefaultNotes
{api_key}API Keystringyessecret
{targets}Subscriberslistyesseparated by /; subscriber id, e-mail or +phone
{workflow_id}Workflow IDstringyes

Query parameters

ParameterMeaningTypeDefaultNotes
hostAPI Hoststringself-hosted API, host[:port][/path] or a full http(s):// URL; wins over region
regionRegionchoiceusone of us, eu
toSubscriberslistsets {targets}
transactionTransaction IDstring

Prefixed parameters:

  • :name=value: Payload Extras
  • +name=value: HTTP Header

The common URL parameters (format, overflow, verify, redirect, cto, rto, retry, wait, store, tag, tz, user, password, port, optional, emojis) apply as well.

Examples

Accepted URLs (tokens are fake):

novu://apikey/welcome/sub1
novu://apikey/welcome/sub1/user@example.com/+15551234567
novu://apikey/welcome?region=EU&to=a,b
novu://apikey/welcome/sub1?host=http://10.0.0.5:3000
novu://apikey/welcome/sub1?host=novu.example.com:3000/api&transaction=tx-1&:env=prod&+X-Trace=abc

Rejected URLs:

novu://
novu://apikey
novu://apikey/welcome
novu://apikey/welcome/sub1?region=mars

Send one from the command line:

mercurio -t 'Backup' -b 'Finished in 42s' 'novu://apikey/welcome/sub1'

Notes

Novu (novu://): triggers a Novu workflow for subscribers. Written from the Novu API reference (https://docs.novu.co/api-reference/events/trigger-event).

novu://{api_key}/{workflow_id}/{subscriber}[/{subscriber}...]

Options:

  • ?region=eu uses https://eu.api.novu.co (default https://api.novu.co).
  • ?host=novu.example.com[:port][/path] (or a full http(s):// URL) points at a self-hosted Novu API; it wins over region.
  • ?to=a,b adds subscribers; ?transaction=.. sets transactionId.
  • :key=value adds key to the trigger payload; +Header=value adds an HTTP header.

Each subscriber is a subscriber id, an e-mail ({"subscriberId": email, "email": email}) or +<phone> ({"subscriberId": phone, "phone": phone}). One POST /v1/events/trigger is sent per 100 subscribers with Authorization: ApiKey {api_key} and {"name": workflow_id, "to": [...], "payload": {"title", "body", "type"}}. Success is any 2xx whose body (or its data object) does not say "acknowledged": false.

Differences with Apprise

  • Not in Apprise; written from the vendor documentation (hand-written fixtures).