Skip to main content
The hosted page at https://app.spoofsense.ai/verify runs the same capture flow as the Web SDK, served from our origin. You create the session on your backend, then either redirect the user to the page or embed it in an iframe.
The client token always travels in the URL fragment (#token=…), never a query parameter — fragments don’t reach servers, so the token never lands in access logs.

Redirect mode

When the user finishes, they return to your return_url with:
(spoofsense_status can also be cancelled or error.) The query string is a hint, not proof — always read the decision server-side with your secret key.

Embed (iframe) mode

Messages posted to your page

The captured frame rides the message only because &origin= named your page as the target. Redirect mode can’t carry the image — your backend retrieves it from the media endpoint instead.
Always verify e.origin before trusting a message, and treat completion as a hint: the decision only counts when your backend reads status: "complete" and decision: "real" with the secret key.