Ontwikkelaarsdocumentatie
Onzichtbare botbeveiliging. Geen CAPTCHA's. API-first.
Quickstart
1
Installeren & Invoegen
Voeg het script toe en ontvang een token
2
Verifiëren op Server
Valideer de token op uw backend
Snelle Test met cURL
Nonce verifiëren via de commandoregel
# Nonce verifiëren
curl -X POST https://api.silentshield.io/v1/verify \
-H "api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"nonce": "256ea6c63c3ccdd317e05cbc9ef0c659"}'Frontend Integration
Add the client script with SRI and defer attributes
<!-- Add to <head> with SRI for security -->
(function () {
var KEY = "YOUR_API_KEY";
var SITE = location.hostname;
var V = "2025.09.1";
var s = document.createElement('script');
s.src = "https://api.silentshield.io/client.js?k=" + encodeURIComponent(KEY)
+ "&v=" + encodeURIComponent(V)
+ "&site=" + encodeURIComponent(SITE);
s.async = true;
s.crossOrigin = "anonymous";
document.head.appendChild(s);
})();Beveiliging & Privacy
- Geen cookies – volledig cookieloze werking
- Geen verzameling van PII – AVG & CCPA compliant
- EU-hosting – alle data blijft in Europa
- WCAG-conform – toegankelijk voor alle gebruikers
- CSP-compatibel – gebruik met Content Security Policy:
Content-Security-Policy: script-src 'self' https://api.silentshield.io;API-referentie
API Version: 2025-10-01 · Base URL: https://api.silentshield.io
POST
/v1/verifySilentShield Nonce verifiëren
Request Headers:
AuthorizationBearer YOUR_API_KEYContent-Typeapplication/jsonRequest Body:
tokenstringDe te verifiëren NonceResponse:
Success (200):
{
"ok": true,
"verdict": "human",
"confidence": 0.95,
"request_nonce": "req_abc123"
}Error:
{
"ok": false,
"verdict": "error",
"confidence": 0,
"request_nonce": "req_abc123",
"error": "Invalid nonce"
}Status Codes:
200Nonce succesvol geverifieerd400Ongeldig verzoek (ontbrekende of onjuiste Nonce)401Ongeldige API-sleutel429Rate-limiet overschreden (100 verzoeken/min.)500Interne ServerfoutSDK's & Bibliotheken
JavaScript ES6+
v1.0.1TypeScript
v1.0.1npm i @forge12interactive/silentshield-sdk-jsimport { SilentShield, type SilentShieldConfig } from "@forge12interactive/silentshield-sdk-js";
const config: SilentShieldConfig = {
siteKey: 'your-site-key',
timeout: 10000
};
const shield = new SilentShield(config);
const token: string = await shield.getToken();Node.js Backend
v1.0.1npm i @forge12interactive/silentshield-sdk-jsimport { SilentShieldBackend } from "@forge12interactive/silentshield-sdk-js";
const backend = new SilentShieldBackend('your-secret-key');
// Form verification
const result = await backend.verifyFormSubmission(formData);
if (result.isValid) {
console.log('Human verified!', result.formData);
}Vue.js
v1.0.1npm i @forge12interactive/silentshield-sdk-jsimport { SilentShield } from "@forge12interactive/silentshield-sdk-js";
export default {
async mounted() {
this.shield = new SilentShield({ siteKey: 'your-key' });
await this.shield.initialize();
},
methods: {
async handleSubmit() {
const token = await this.shield.getToken();
// Submit with token
}
}
};React
v1.0.1npm i @forge12interactive/silentshield-sdk-jsimport { SilentShield } from "@forge12interactive/silentshield-sdk-js";
import { useEffect, useState } from 'react';
function MyForm() {
const [shield, setShield] = useState(null);
useEffect(() => {
const init = async () => {
const s = new SilentShield({ siteKey: 'your-key' });
await s.initialize();
setShield(s);
};
init();
}, []);
const handleSubmit = async (e) => {
const token = await shield?.getToken();
// Submit with token
};
return <form onSubmit={handleSubmit}>...</form>;
}Resources
Help Center
Comprehensive documentation with getting started guides, integration tutorials, configuration references, and troubleshooting.
Changelog
Stay up to date with the latest features, improvements, and fixes.
Klaar om te starten?
Maak een gratis account aan en ontvang uw Site Key binnen enkele seconden.
Nu starten