BotShield SDK Overview
BotShield provides a REST API for integrating human presence verification into your platform. There is no client-side library to install — integration happens server-to-server via API calls, with the user interacting through deep links, web URLs, or QR codes.Access to the BotShield API is provisioned through a developer application process. Once approved, you receive an API key to authenticate your requests.
Integration Model
- Creates a session using your API key
- Creates a verification link for a specific user action
- Presents the link to the user (deep link, web URL, or QR code)
- Receives the result via webhook or polling
- Opens the BotShield app (or is prompted to set it up on first use)
- Completes a biometric check (Face ID / Touch ID)
- Is returned to your platform
Human Presence Signal (HPS)
Each successful verification produces an HPS — a short-lived, cryptographically signed token that confirms:- A real human was present on a device
- The verification occurred within the expiry window
- The signal is tamper-proof and single-use
SDK A: Signal-Only (Available Now)
SDK A performs momentary human presence verification with no persistent state:- Each action requires a fresh biometric check
- The HPS expires quickly (5-minute window)
- No anchors, no continuity, no session persistence
- Binary signal: human present (yes/no)
API Flow
What SDK A Guarantees
Guaranteed:- Real human was present on a device at verification time
- Verification occurred within the expiry window
- Signal is cryptographically signed and tamper-proof
- Signal cannot be replayed (one-time use)
- User identity (presence is not identity)
- Device ownership
- Account state
- Future presence (signal expires quickly)
SDK B: Presence SDK (Planned — Phase II)
SDK B will add platform-scoped Presence Anchors that enable:- Reduced verification friction for returning users
- Continuity system (skip biometric if recently verified, based on anchor state)
- Time-bound anchors that expire automatically (default: 30 days)
- User-revocable anchors
- Scope-based action gating with impact classification
Scopes
Scopes identify what action is being verified. They follow the formatcategory.action:
| Scope | Description |
|---|---|
checkout.complete | Complete a purchase |
payment.authorize | Authorize a payment |
listing.create | Create a marketplace listing |
bid.place | Place a bid on an item |
withdrawal.initiate | Initiate a fund withdrawal |
Next Steps
- Quick Start — Step-by-step integration guide
- SDK Features — Detailed capabilities
- Use Cases — Real-world applications
- API Reference — Developer Application endpoint