Integration checklist
- Start Free and register the domain you want to protect.
- Copy the keys. The Public Key goes in the browser. Private credentials stay on the backend.
- Install a browser SDK or the CDN snippet. Use a stable pseudonymous User HID on signed-in checks.
- Allow required connections in your Content Security Policy.
- Retrieve the result by Identification ID, or receive signed webhooks.
- Protect the action. Verify domain, account association, freshness and reuse before acting.
Plain JavaScript snippet
checkAuthenticatedUser('PSEUDONYMOUS_USER_ID') on signed-in pages. Importing the module alone does not start a check. See snippet methods for initialization callbacks and cooldown behavior.
What you receive
The scored webhook includes the check’s identifiers, Risk Score, signal contributions, detection flags and available account-event evaluations. This is an abbreviated example:X-Shield-Signature over the original raw body. Persist and deduplicate by event_id before acknowledging; delivery can retry. The reference contains the full versioned model and the separately enabled multi-account group event.
History uses its own response projection, including score rather than risk_score. Read it with the matching domain’s Private API Key. Processing is asynchronous, so handle pending and unavailable results explicitly.