Dokumentazzjoni għall-Iżviluppaturi
Protezzjoni inviżibbli kontra l-bots. L-ebda CAPTCHA. API-first.
Bidu Mgħaġġel
1
Installa u Integra
Żid l-iskript u akkwista token
2
Ivverifika fuq is-Server
Ivvalida t-token fuq il-backend tiegħek
Test Mgħaġġel bil-cURL
Ivverifika l-nonce mil-linja tal-kmand
# Ivverifika Nonce
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);
})();Sigurtà u Privatezza
- Ebda cookies – tħaddim kompletament mingħajr cookies
- Ebda ġbir ta' PII – konformi mal-GDPR u s-CCPA
- Hosting fl-UE – id-dejta kollha tibqa' fl-Ewropa
- Konformi ma' WCAG – aċċessibbli għall-utenti kollha
- Konformi ma' CSP – uża ma' Content Security Policy:
Content-Security-Policy: script-src 'self' https://api.silentshield.io;Referenza tal-API
API Version: 2025-10-01 · Base URL: https://api.silentshield.io
POST
/v1/verifyIvverifika SilentShield Nonce
Request Headers:
AuthorizationBearer YOUR_API_KEYContent-Typeapplication/jsonRequest Body:
tokenstringNonce li għandu jiġi vverifikatResponse:
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 ġie vverifikat b'suċċess400Talba invalida (Nonce nieqes jew żbaljat)401Ċavetta tal-API invalida429Il-limitu tar-rata nqabeż (100 talba/min.)500Żball intern tas-serverSDKs u Libreriji
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');
// Verifika tal-Formola
const result = await backend.verifyFormSubmission(formData);
if (result.isValid) {
console.log('Bniedem ivverifikat!', 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();
// Issottometti bit-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();
// Issottometti bit-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.