Skip to main content

API keys reference

Notifizz uses five distinct secrets across its surface — each scoped to a single role, each scoped per environment (dev, prod, …). This page lists them all so you know which one to copy into which place.

TL;DR

  • sdkSecretKey — backend → POST /v1/events/track (Bearer + body field).
  • authSecretKey — backend → client.generateHashedToken(userId) for widget backend-token auth.
  • Front API Key — frontend → widget apiKey option, used by /v1/users/auth.
  • webhookSigningSecret — backend → enricher constructor, verifies HMAC on incoming enricher webhooks.
  • verificationSecret — per-source → connectors (Segment, Stripe, HubSpot, Intercom).
  • All five are environment-scoped: dev keys never reach prod, and vice versa.

The five secrets

1. SDK Secret Key (sdkSecretKey)

2. Auth Secret Key (authSecretKey)

3. Front API Key

4. Webhook Signing Secret (webhookSigningSecret)

The Notifizz backend signs every enricher webhook request with this secret over the verbatim payload string in the body envelope. The SDK verifies the signature on receipt. Mismatch → { ok: false, error: { code: "hmac-invalid" } } in the response body.

5. Connector Verification Secret (verificationSecret)

The exact algorithm differs per provider — see connector webhooks.

Quick reference table

Environments

Each Notifizz organisation has multiple environments — typically dev and prod, plus optional staging or per-team environments. Each has its own copy of every secret. Never share keys across environments:
  • A dev sdkSecretKey posted to prod’s API resolves to dev’s environment, not prod’s — your prod traffic ends up in dev’s queue.
  • A prod Front API Key in your dev frontend means dev users see prod notifications.
Most failures classified as “weird” turn out to be cross-environment key contamination. Treat keys as environment-scoped from day one.

Rotation

Keys can’t be rotated from the dashboard yet. If a key needs replacing — a leak, a departure, a routine policy — contact support: the key is replaced and the old one stops working at once. Backend-side keys (SDK secret, auth secret) are read on every call, so the new key takes effect as soon as your service redeploys with it.

Region note

The default API host is https://api.notifizz.com/v1. Future US/APAC regions will have their own hostnames; keys generated in one region don’t work against another. The dashboard surfaces the right hostname for your environment.

FAQ

auth/invalid-authorization on /events/track always means the sdkSecretKey (Bearer + body) didn’t resolve to an environment. Two suspects: (1) wrong environment (most common), (2) typo / extra whitespace.
No — they belong to different environments. Each environment has its own pair. Sharing causes hard-to-debug cross-traffic; avoid even on internal tools.
All of them: Environment settings → API Keys (one section per role). Connector verification secrets live separately under Connectors → source detail.
No — never embed sdkSecretKey in a mobile or web frontend. Mobile clients should hit your own backend, which then calls Notifizz with its server-side secret. The widget’s Front API Key is the only Notifizz secret intended to ship in a frontend.
Contact support at once: the leaked key is replaced and stops working immediately. Treat a leaked SDK secret as serious — it can send events on your behalf, which trigger your campaigns, and link or unlink identities in its environment, which can show one person’s history in another’s record. Pair it with your incident process: review recent events for anything you didn’t send, and ask support to review the identity changes made with the key.

See also

Event Tracking

Where sdkSecretKey is used.

Backend tokens

Where authSecretKey is used.

Enrichers protocol

Where webhookSigningSecret is used.

Connector webhooks

Where verificationSecret is used.