Cloudflare Turnstile

cloudflareBot managementcloudflare-turnstile

CAPTCHA alternative that verifies visitors with invisible JavaScript challenges and a short-lived token.

Provider
cloudflare
Category
Security
Properties · 4 set by this component
propertytypevaluesrequiredkind defaultthis component
challengeActionenumblock | managed-challenge | js-challenge | captcha | logno—▸ managed-challenge
jsDetectionsboolean—no—▸ true
machineLearningboolean—no—inherited
managedboolean—nofalse▸ true
preClearance · component propertyboolean—nofalseinherited
scoreHeaderboolean—no—inherited
scoreThresholdinteger—no—inherited
sessionTokenLifetimeMinutesinteger—no—▸ 5
singleUseToken · component propertyboolean—notrueinherited
verifiedBotsAllowedboolean—notrueinherited
widgetMode · component propertyenummanaged | non-interactive | invisiblenomanagedinherited
Rules that apply · 0

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

No rule reads this kind yet. That is a gap, not a guarantee.
Use it in a design
nodes:
  - { id: "turnstile", component: "cloudflare-turnstile" }
Other Bot management products · 3
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Cloudflare Turnstile: a CAPTCHA alternative that runs non-interactive JavaScript challenges and
# only shows a checkbox when the managed widget decides the visitor is risky ("Turnstile overview");
# a widget token is valid for 300 seconds and may be redeemed once ("Server-side validation").
schemaVersion: "1"
type: "component"
id: "cloudflare-turnstile"
kind: "bot-management"
provider: "cloudflare"
docs: "https://developers.cloudflare.com/turnstile/get-started/server-side-validation/"
defaults:
  managed: true
  challengeAction: "managed-challenge"
  jsDetections: true
  sessionTokenLifetimeMinutes: 5
properties:
  widgetMode:
    type: "enum"
    values: ["managed", "non-interactive", "invisible"]
    default: "managed"
  singleUseToken:
    type: "boolean"
    default: true
  preClearance:
    type: "boolean"
    default: false

The same page as markdown, for an agent: /catalogue/components/cloudflare-turnstile.md