Προσφορά για νέους πελάτες−20 %Έκπτωση 20 % τους πρώτους 3 μήνες με μηνιαία χρέωσηΔείτε τα πακέτα
SilentShield

Ενσωματώστε με ασφάλεια το SilentShield στη φόρμα σας

Client script, έλεγχος στον διακομιστή, κλειδιά και περιπτώσεις σφαλμάτων – η πλήρης ενσωμάτωση σε ένα σημείο.

Πώς συνεργάζονται το σενάριο και ο έλεγχος στον διακομιστή

Μια πλήρης ενσωμάτωση έχει δύο μισά: το σενάριο στο πρόγραμμα περιήγησης και έναν έλεγχο στον διακομιστή σας.

  1. 1

    Φόρτωση σεναρίου

    Η σελίδα σας φορτώνει το client.js?k=… με το κλειδί ιστότοπού σας. Το σενάριο μετρά τη συμπεριφορά στη φόρμα.

  2. 2

    Υποβολή φόρμας

    Κατά την υποβολή, το σενάριο αναφέρει τη μέτρηση και προσθέτει το πεδίο behavior_nonce στη φόρμα σας.

  3. 3

    Ο διακομιστής σας ρωτά

    Ο διακομιστής σας στέλνει το behavior_nonce στο POST /api/v1/captcha/verify-nonce, με το κλειδί σας στην κεφαλίδα X-Api-Key.

  4. 4

    Εσείς αποφασίζετε

    Η απάντηση περιέχει ok, verdict, confidence και reason_codes. Αποδεχθείτε την υποβολή αν το ok είναι true, διαφορετικά απορρίψτε την.

Χωρίς το βήμα 3 η ενσωμάτωση προστατεύει μόνο κατά το ήμισυ: το σενάριο από μόνο του δεν σταματά ένα αίτημα που αποστέλλεται απευθείας στον διακομιστή σας.

Κλειδί ιστότοπου και κλειδί διακομιστή

Κλειδί ιστότοπου (δημόσιο)

client.js?k=…

Βρίσκεται στον πηγαίο κώδικα της σελίδας σας και είναι ορατό σε όλους. Δεσμεύει το σενάριο στον τομέα σας· υποτομείς όπως www. ή staging. περιλαμβάνονται.

Κλειδί διακομιστή (μυστικό, προαιρετικό)

X-Api-Key

Προαιρετικό. Αν θέλετε οι κλήσεις που κάνει ο διακομιστής σας να φέρουν μια τιμή που δεν υπάρχει στον πηγαίο κώδικα της σελίδας σας, δημιουργήστε το στον πίνακα ελέγχου, στο κλειδί, στην καρτέλα «Κλειδί διακομιστή». Ανήκει μόνο στον διακομιστή σας, ποτέ στο πρόγραμμα περιήγησης, και μπορεί να δημιουργηθεί εκ νέου ανά πάσα στιγμή.

Ο έλεγχος στον διακομιστή λειτουργεί μόνο με το κλειδί ιστότοπου, επομένως δεν χρειάζεται να αλλάξετε τίποτα. Γίνονται δεκτά και τα δύο κλειδιά. Με το κλειδί διακομιστή, ο κώδικας του διακομιστή σας δεν περιέχει καμία τιμή που μπορεί να διαβάσει οποιοσδήποτε στον πηγαίο κώδικα της σελίδας σας.

Γρήγορη εκκίνηση

1

Εγκατάσταση & ενσωμάτωση

Προσθέστε το script και λάβετε ένα token

2

Επαλήθευση στον διακομιστή

Επικυρώστε το token στο backend σας

Γρήγορη δοκιμή με cURL

Επαληθεύστε το nonce από τη γραμμή εντολών

# Επαλήθευση Nonce
curl -X POST https://api.silentshield.io/api/v1/captcha/verify-nonce \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"nonce": "256ea6c63c3ccdd317e05cbc9ef0c659"}'

Frontend Integration

Add the client script with SRI and defer attributes

<!-- In <head> or before </body> of every page with a form -->
<script src="https://api.silentshield.io/client.js?k=YOUR_API_KEY" defer></script>

Ασφάλεια & απόρρητο

  • Χωρίς cookies – πλήρως λειτουργία χωρίς cookies
  • Χωρίς προφίλ, χωρίς cookies – κατάλληλο για χρήση σύμφωνα με τον GDPR
  • Φιλοξενία στην EU – έλεγχος και αποθήκευση στους διακομιστές μας στη Γερμανία
  • Συμβατό με WCAG – προσβάσιμο σε όλους τους χρήστες
  • Συμβατό με CSP – χρήση με Content Security Policy:
Content-Security-Policy: script-src 'self' https://api-us.silentshield.io https://api-eu.silentshield.io; connect-src 'self' https://api-us.silentshield.io https://api-eu.silentshield.io; worker-src 'self' blob:;

SDKs & Βιβλιοθήκες

Το πακέτο τρέχει στον διακομιστή σας (Node.js από 18 και πάνω). Στο πρόγραμμα περιήγησης δεν χρειάζεστε κανένα πακέτο — εκεί αρκεί το απόσπασμα client.js από τον γρήγορο οδηγό.

Node.js / Express

v1.5.0
npm i @forge12interactive/silentshield-sdk-js
import { createClient } from "@forge12interactive/silentshield-sdk-js";

const shield = createClient({ apiKey: process.env.SILENTSHIELD_API_KEY });

app.post("/signup", async (req, res) => {
  const { human } = await shield.verify(req.body.behavior_nonce);
  if (!human) return res.status(403).send("Verification failed");
  res.send("ok");
});

Πράκτορες ΤΝ (Node.js)

v1.5.0
npm i @forge12interactive/silentshield-sdk-js
import { createClient, enforce } from "@forge12interactive/silentshield-sdk-js";

const shield = createClient({ apiKey: process.env.SILENTSHIELD_API_KEY });

// Reports bot candidates only — never blocks, never sees human traffic.
app.use(shield.observe);

// Applies your policy locally from a signed bundle. Fail-open.
app.use(enforce({ apiKey: process.env.SILENTSHIELD_API_KEY }));

Αναφορά API

API Version: 2025-10-01 · Base URL: https://api.silentshield.io

POST/api/v1/captcha/verify-nonce

Επαλήθευση SilentShield Nonce

Request Headers:

X-Api-KeyYOUR_API_KEY
Content-Typeapplication/json

Request Body:

noncestringΤο Nonce προς επαλήθευση

Response:

Success (200):

{
  "ok": true,
  "verdict": "human",
  "confidence": 0.95,
  "requested_nonce": "256ea6c63c3ccdd317e05cbc9ef0c659"
}

Error:

{
  "ok": false,
  "verdict": "bot",
  "confidence": 0.12,
  "request_nonce": "256ea6c63c3ccdd317e05cbc9ef0c659",
  "reason_codes": ["NO_MOUSE_MOVEMENT"]
}

Status Codes:

200Nonce επαληθεύτηκε επιτυχώς
400Μη έγκυρη αίτηση (λείπει ή είναι λανθασμένο το Nonce)
401Μη έγκυρο Κλειδί API
403Δεν επιβεβαιώθηκε ως άνθρωπος (ok: false) – απορρίψτε την υποβολή
429Υπέρβαση ορίου ρυθμού
500Εσωτερικό σφάλμα διακομιστή

Χρονικά όρια, διακοπές λειτουργίας και όριο χρήσης

  • Ορίστε χρονικό όριο για τον έλεγχο στον διακομιστή. Τα παραδείγματα κώδικα που παρέχουμε χρησιμοποιούν 5 δευτερόλεπτα.
  • Αν ο έλεγχος δεν απαντήσει εγκαίρως, τα παραδείγματα το θεωρούν «μη επιβεβαιωμένο» και απορρίπτουν. Αν προτιμάτε να αποδέχεστε σε αυτή την περίπτωση, χειριστείτε το σφάλμα μόνοι σας — η απόφαση είναι δική σας.
  • Αν ο πρώτος host δεν απαντήσει ενώ το σενάριο φορτώνει τις ρυθμίσεις και τα στοιχεία του, μεταβαίνει στον δεύτερο (api.silentshield.io και api-eu.silentshield.io). Τα κλειδιά με αυστηρή δέσμευση στην ΕΕ παραμένουν στον host της ΕΕ.
  • Για τον έλεγχο στον διακομιστή δεν υπάρχει αυτόματος εφεδρικός host.
  • Πάνω από το μηνιαίο όριο χρήσης σας, το API συνεχίζει να ελέγχει και απαντά κανονικά. Ένα 429 σημαίνει ότι έχει υπερβεί το όριο αιτημάτων ανά λεπτό για το κλειδί σας.

Δοκιμές τοπικά και σε δοκιμαστικό τομέα

  • Το κλειδί σας δεν λειτουργεί σε localhost: είναι δεσμευμένο στον τομέα σας και το σενάριο απορρίπτεται εκεί.
  • Κάντε δοκιμές σε έναν υποτομέα του τομέα σας, για παράδειγμα staging.o-tomeas-sas.gr. Λειτουργεί με το κλειδί του κύριου τομέα και δεν καταλαμβάνει επιπλέον θέση τομέα.
  • Αν θέλετε να αξιολογείτε ξεχωριστά τη δοκιμαστική και τη ζωντανή λειτουργία, δημιουργήστε ένα δεύτερο κλειδί για τον ίδιο τομέα. Ούτε αυτό καταλαμβάνει επιπλέον θέση τομέα.
  • Υποβάλετε δοκιμαστικά μια φόρμα και ελέγξτε στον διακομιστή σας την απάντηση του verify-nonce: για καταχώριση που πληκτρολογήθηκε χειροκίνητα θα πρέπει να επιστρέφεται ok: true· διαφορετικά τα reason_codes δείχνουν γιατί όχι.
Ρυθμίστε έναν δοκιμαστικό τομέα

Εκδόσεις και αλλαγές

  • Το API φέρει την έκδοσή του στη διαδρομή: /api/v1. Οι ίδιες διαδρομές είναι διαθέσιμες και κάτω από το /api.
  • Το σενάριο δεν έχει αριθμό έκδοσης: το client.js παραδίδει πάντα την τρέχουσα έκδοση, οπότε δεν χρειάζεται να ενημερώσετε τίποτα.
  • Τα SDK για PHP, Node, Go και Edge έχουν αριθμούς έκδοσης· οι αλλαγές αναφέρονται στο αρχείο αλλαγών του κάθε πακέτου.
  • Δημοσιεύουμε τις αλλαγές στο API και στο σενάριο στο αρχείο αλλαγών.

Πόροι

Κέντρο βοήθειας

Πλήρης τεκμηρίωση με οδηγούς πρώτων βημάτων, οδηγίες ενσωμάτωσης, αναφορές ρυθμίσεων και αντιμετώπιση προβλημάτων.

Αρχείο αλλαγών

Μείνετε ενήμεροι για τις νέες λειτουργίες, τις βελτιώσεις και τις διορθώσεις.

Είστε έτοιμοι να ξεκινήσετε;

Δημιουργήστε έναν δωρεάν λογαριασμό και λάβετε το κλειδί σας.