Skip to content
Nowlark
API reference menu

Your alert email and the timeline

Each alert is pushed to your devices as soon as it is sent. Email is the second channel, for the alerts you did not get to: "if I have not opened it after 5 minutes, email me", for alerts at or above a priority you choose. The rules are yours, not the team's, so they follow you onto every team you join. These calls take your account key (nla_…) or a signed‑in console session.

Email for the alerts you miss#

Take it means telling the team you are handling an alert: everyone on the channel sees who took it, and on a form submission it is the same as claiming it. Opened means you looked at it.

curl -X POST https://nowlark.com/v1/me/notifications/contacts -H "Authorization: Bearer nla_…" \
  -H 'Content-Type: application/json' -d '{"address":"ana@yourcompany.com"}'
# {"id":"cm_…","kind":"email","address":"ana@yourcompany.com","verified":false,"paused":false,"created_at":…}
  • An address is confirmed first. Adding one emails it a link; nothing else is sent to it until you press Confirm on the page the link opens. Up to 2 addresses. POST …/contacts/{id}/resend sends a new link; DELETE …/contacts/{id} removes the address and its rules.
  • A default that needs nothing else. Confirming your first address gives you one rule: email after 5 minutes if you have not opened it, for Normal and above. Change it or remove it like any other rule.
  • Rules. PUT /v1/me/notifications/rules with {"rules":[{"contact_id":"cm_…","delay":300,"min_priority":1}]} replaces all your rules, the default included (up to 5; {"rules":[]} for no email). contact_id is the id from adding the address. delay is 0, 60, 120, 300, 600, 900, 1800 or 3600 seconds. min_priority is the lowest priority the rule emails, on the five-step scale -2 Very low, -1 Low, 0 Normal, 1 High, 2 Urgent; -2 means every alert.
  • When the wait starts. At the moment the alert reached you: when it was sent, or, if you are in a later escalation tier, when that tier was notified. A rule reads the priority your copy arrived with, after any cap you set on that source, and a source you muted is never emailed.
  • Nothing is sent once it is dealt with. Whether to send is decided when the rule is due. If by then you opened it, anyone took it, a question alert was answered, or (on a channel where one person opening it counts for everyone, ack_policy: any) anyone opened it, no email goes out.
  • Quiet hours. PUT /v1/me/notifications/quiet with {"start":1320,"end":420,"timezone":"Europe/London"} (minutes after midnight in your zone: this is 22:00 to 07:00). During them, email for High and below waits until they end and is sent then only if still unopened; Urgent is always sent at once. Send {"start":null,"end":null} to turn them off. On iPhone and Mac, Focus covers your devices, and High and Urgent break through it.
  • Your switch per channel. PUT /v1/channels/{id}/me/email with {"email": false} stops your rules for that channel only. Push is unchanged.
  • The team's switch. An admin can turn members' alert email off for the whole team with PUT /v1/teams/{id}/notifications {"member_email": false}; it also stops email already waiting. GET on the same path shows admins each member's set‑up (whether they have a confirmed address, their rules in words, whether they keep quiet hours) and each channel's escalation, email recipients and "nobody took it" wait.
  • The email. Subject [Team / channel] Title, then the alert, then two links: Take it and Open it. Opening a link changes nothing (mail scanners open every link); the Take it button on the page it opens takes it as you. A link works for that one alert and that one action, signs no one in, and stops working after 7 days. Every email has a one-click unsubscribe that pauses the address; …/resend and the new link turn it back on.
  • Limits. Each person gets at most 30 alert emails an hour. Past that, an email is not sent and the alert's timeline says so; the push still arrives.
  • GET /v1/me/notifications returns your addresses, your rules (each with a words line such as "email if unopened after 5 minutes, for Normal and above"), quiet hours and the choices on offer. POST /v1/me/notifications/test sends a test email to every confirmed address.

The timeline of an alert#

curl https://nowlark.com/v1/channels/chn_…/threads -H "Authorization: Bearer nla_…"
curl https://nowlark.com/v1/channels/chn_…/threads/ntf_…/timeline -H "Authorization: Bearer nla_…"

The first lists the channel's 30 latest alerts, newest first, each with a state: unopened (nobody has opened it), opened (someone looked at it) or taken. The second says who was told, how and when, oldest first: the send, each push (and on how many devices), each escalation tier (notified, or not needed because it had been opened), each email a rule sent or why it did not (opened, taken, quiet hours, the hourly limit), each email recipient and webhook, who opened, took or answered it, and what is still to come ("upcoming": true). Anyone on the channel may read it. Admins see addresses in full; everyone else sees them masked (a…@yourcompany.com).