Skip to content

TurnstileWidget

Source: src/Cloudflare/Turnstile/Widget.ts

A Cloudflare Turnstile widget — Cloudflare’s CAPTCHA alternative.

A widget is identified by its auto-assigned sitekey (the public key you embed in HTML) and produces a secret used server-side against the /turnstile/v0/siteverify endpoint. Name, domains, mode, and clearance settings are all mutable in place; only region forces a replacement.

Managed widget

const widget = yield* Cloudflare.TurnstileWidget("signup-form", {
domains: ["example.com"],
mode: "managed",
});

Invisible widget with an explicit name

const widget = yield* Cloudflare.TurnstileWidget("api-guard", {
name: "api-guard",
domains: ["example.com", "app.example.com"],
mode: "invisible",
});
// The sitekey is public — render it in your HTML:
const sitekey = widget.sitekey;
// The secret is redacted — pass it to your server-side verifier:
const secret = widget.secret; // Redacted<string>