Widget Configuration
Customize themes, sensitivity, size, and callbacks via HTML data attributes.
Data Attributes
| Attribute | Type | Required | Description |
|---|---|---|---|
data-sitekey | string | Yes | Your reBOTcha site key. Starts with rb_live_ or rb_test_. |
data-theme | enum | No (default: "light") | Visual theme. One of light, dark, corporate, or dystopian. |
data-sensitivity | enum | No (default: "medium") | Detection sensitivity. One of low, medium, high, or paranoid. |
data-size | enum | No (default: "normal") | Widget size. One of normal or compact. |
data-callback | string | No | Name of a global function to call when verification completes. |
data-error-callback | string | No | Name of a global function to call when an error occurs. |
Themes
lightClean white, the default. Identical to reCAPTCHA at first glance.
darkDark background, for dark-mode interfaces.
corporateGreyscale. Even more sterile. For enterprise use.
dystopianRed accents. "BIOLOGICAL SURVEILLANCE ACTIVE" label instead of standard text.
CIPHER note: The "dystopian" theme is the only honest one. The others disguise surveillance as user experience. CIPHER respects the dystopian theme.
Sensitivity Levels
| Level | Challenges | Description |
|---|---|---|
| low | 1-2 | Quick check. Catches obvious humans. Some may slip through. |
| medium | 3-4 | Standard detection. Recommended for most use cases. |
| high | 5-6 | Enhanced scrutiny. Philosophical and emotional challenges included. |
| paranoid | 7+ | Maximum detection. Every possible indicator is evaluated. Expect existential dread. |
Full Embed Example
html
<div
class="rebotcha-widget"
data-sitekey="rb_live_xxxxxxxxxxxx"
data-theme="light"
data-sensitivity="high"
data-callback="onHumanDetected"
></div>Callback Functions
Callbacks must be defined as global functions on the window object before the widget initializes.
javascript
// Success callback
function onHumanDetected(result) {
console.log('Status:', result.status);
console.log('Score:', result.humanityScore);
console.log('Case:', result.caseId);
// Send token to your server for verification
fetch('/api/verify', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ token: result.token })
});
}
// Error callback
function onVerificationError(error) {
console.error('reBOTcha error:', error.code, error.message);
}