Audit logs and SIEM
Pull audit events and logs with the Organization API, or stream them to Splunk, Datadog, Microsoft Sentinel, Elastic or a signed webhook.
Pull with the API
Audit events are numbered in order (sequence) and hash-chained (event_hash), so a poller can resume exactly where it stopped and detect gaps. /v1/logs adds sign-ins, API calls, emails and alerts with filters and cursor pages (pagination). Every API call is itself recorded in the organization’s Logs.
# Start from 0 (or your last stored sequence) and keep next_after for the next run
curl -s 'https://passkey-x.com/api/org/v1/audit-events?after=0&limit=100' \
-H "Authorization: Bearer $PASSKEY_X_API_KEY"
# → { "data": [ … ], "next_after": 18342, "has_more": true }
# Sign-ins, API calls, emails and alerts, newest first
curl -s 'https://passkey-x.com/api/org/v1/logs?type=api&level=error&limit=100' \
-H "Authorization: Bearer $PASSKEY_X_API_KEY"const org = new PasskeyX({ apiKey: process.env.PASSKEY_X_ORG_KEY }); // pxk_…
// Every audit event, page by page, without handling cursors
for await (const event of org.org.auditEvents.iterate({ limit: 500 })) {
console.log(event.sequence, event.occurred_at, event.action);
}
// Signature requests still waiting
for await (const request of org.org.signatureRequests.iterate({ status: "pending" })) {
console.log(request.label, request.signed, "of", request.total, "signed");
}Endpoints
| Method | Path | What it does | Scope or credential |
|---|---|---|---|
| GET | /v1/logs | Read logs | logs:read |
| GET | /v1/audit-events | Read audit events | audit:read |
| GET | /v1/items/{item_id}/timeline | Who used a password | audit:read |
| GET | /v1/security | Security summary | security:read |
| GET | /v1/incidents | Incidents | security:read |
| GET | /v1/device-trust | Device trust | security:read |
Scopes
| Scope | Allows |
|---|---|
audit:read | Audit events and item timelines |
alerts:read | Security alerts |
reports:read | Security summary, weekly reports, member security |
security:read | Sign-in risk, incidents and device trust |
logs:read | Logs: audit, sign-ins, API calls, emails and alerts |
webhooks:read | Webhooks, delivery log and the event catalog |
webhooks:write | Create, change, test, replay and delete webhooks |
Stream to your SIEM
Send every audit event to your security tools as it happens.
- Open Admin console › Company & billing › Integrations & API keys › Audit streaming.
- Choose Splunk HEC, Datadog, Microsoft Sentinel, Elastic or a signed webhook, and enter the endpoint details.
- Send a test event, then turn streaming on.
- Alerts can also go to Slack or Microsoft Teams channels.
For your own collector, choose a signed webhook: ordered, at-least-once batches of up to 200 events with retries, dead letters and replay of the last 30 days.
Evidence and integrity
- Open Admin console › Activity & reports › Audit log to see every admin action, share, secret reveal and sign-in event.
- Filter by person, vault, action or date.
- Choose Verify integrity to check the hash chain: any edited or deleted entry shows up.
- Export CSV or JSON for your auditors, or stream events to your SIEM continuously.
Need help building on Passkey-X?
Questions about the API, a bug or a missing endpoint? Our team replies by email, usually within one business day.