What is BotShield?
BotShield attests one truth: whether a human is present for a specific action. Verification is:- Action-scoped — tied only to the specific operation being performed or enforced
- On-demand — invoked only when and where the platform desires verification
- Non-replayable— attestations expire after use or TTL
- Hardware-backed — secured by OS-level device authentication
- Privacy-preserving — no identity collection or behavioral tracking
Anonymous by construction. Census Anonymous Human Attestation performs one operation: anonymous human attestation — one operation, no modes. No email, no user identifier, and no identity-bearing token ever crosses the partner boundary. You learn that a human is present, never who they are. You correlate results to your own system by the
request_id and metadata you supply.The Three Result States
Every Census verification resolves to one of three partner-facing result states. These are the complete partner-facing output — there is no score, no confidence value, and no separate identity field.
The result state is the verdict and the MultiPass signal combined — there is no separate MultiPass boolean.
How BotShield Fits in a Security Stack
It is typically deployed as:- Step-up verification when automated defenses flag uncertainty
- A final checkpoint before high-value actions are approved
- A low-friction alternative to challenge-based verification
- An independent human confirmation signal for risk engines
Availability
BotShield is available as a private SDK for qualified partners.Access is provided through a developer onboarding process. Approved integrations receive API credentials, implementation guidance, and deployment support. BotShield is not distributed as a public self-service download. ➡️ To begin integration, request developer access through the BotShield Pilot Program.
BotShield is for security-sensitive infrastructure, controlled distribution is required. Access to the SDK is provisioned only to approved partners.
Key Features
Human Presence Verification
Each verification resolves to one of three result states — Human Verified, MultiPass Active, or Human Unavailable — that your server acts on
Action-Scoped Verification
Verification is scoped to the specific action or security flow
Hardware-Backed Security
Requires device passcode security at minimum for valid attestations
Anonymous By Design
Verifies human presence without identity, data collection, or persistent tracking
How It Works
BotShield integrates into your platform’s critical actions via a REST API:- Your server creates a session using your API key
- Your server creates a verification link for the user’s action (carrying your own
scopeandmetadata) - The user opens BotShield via deep link, web URL, or QR code
- BotShield verifies presence using device biometrics (Passcode / Face ID / Touch ID)
- The result is delivered to your server via a Svix-signed webhook (or polling). The payload is anonymous — it carries only
{ type, event_id, request_id, <verified_at|failed_at|expired_at>, [reason], product, metadata }, whereevent_idis the samereq_…value asrequest_idandtypeis one ofcensus.human_verified/census.multipass_active/census.human_unavailable. No identity, noauth_mode, no user token. - Your server acts on the result, correlating by the
request_idyou created, and applies its own policy
A synchronous, PII-free
verification_token is also available (returned on the return_url as ?token= or in the SDK response). Its claims are only { request_id, verified, organization_id, timestamp, nonce } — there is no email, user id, or device data in it.Use Cases
BotShield is ideal for:- Limited-access drops — Ensure fair access for real customers
- Ticket purchasing — Prevent bot corruption of ticket sales
- High-value actions — Protect critical transactions
- Account recovery — Verify presence during sensitive operations
- Digital agreement execution — Confirm human presence for consent
- Public posting actions — Reduce spam and abuse
Next Steps
Quick Start
Integrate BotShield in minutes using the REST API
Request Developer Access
Apply for API credentials to start integrating