Skip to main content

Audit log

Audit log. The API writes one row for every mutation that passes through /v1/admin, taking the actor from the x-admin-actor / x-admin-actor-email headers the dashboard sets from the session. Nothing done through the public API with an API key appears here — that is your backend's job to log.

The audit log

Columns: time, actor (name and e-mail), action in plain words, app, target, details. Filter by app with the App selector. Newest first, cursor-paged.

Actions recorded

ActionPlain-words labelTarget
app.createcreated an appslug
credentials.apns / fcm / webpushupdated a credentialbundle id / project id / subject
key.create / key.revokegenerated / revoked an API keykey label
delivery.updatechanged delivery rules
webhook.create / webhook.delete / rotate / enablewebhook changesURL
campaign.send / campaign.schedule / campaign.cancelsent / scheduled / cancelled a campaigncampaign id (name in details)
campaign.test_sendsent a testexternal id, recipients
campaign.send_winnersent the A/B winnervariant, follow-up campaign id
member.invite / reinvite / update / removemember changese-mail
auth.login / auth.accept_invite / auth.change_passwordaccount eventse-mail

Entries are kept indefinitely. The collection is audit in Mongo if you want to ship it elsewhere.