Widget modes

Invisible, managed and interactive: what each widget mode shows and when the check appears.

The mode decides what the widget shows. It never changes what the server requires: every mode ends in the same single-use token, and your server redeems it the same way.

ModeWhat people seeWhen the check appears
invisible (default)Nothing. The widget element is hidden.Only when AgentGate asks for it, as a modal dialog.
managedA small status chip: "Protected by AgentGate", then "Verifying…", then "Verified".Only when AgentGate asks for it, inline under the chip.
interactiveThe chip and a Verify button.Always, inline. The form cannot be submitted until it passes.

Set the mode with data-mode on the widget element, the mode option of AgentGate.render(), or the mode option of AgentGate.execute(). An unknown value falls back to invisible.

HTML
<div class="agentgate" data-sitekey="site_…" data-action="submit" data-mode="managed"></div>

Invisible

Best for most forms. The widget verifies when the form is submitted, so the token is fresh when your server redeems it. If AgentGate asks for the step-up check, a modal dialog opens over the page; Escape or Cancel closes it and the submission does not go through (the error code is canceled).

Managed

Like invisible, with a visible sign that the form is protected. The chip is a polite live region, so screen-reader users hear "Verifying…" and "Verified". The check, when asked for, appears inline under the chip instead of in a dialog.

Interactive

For high-value actions where you want every visitor to act. The widget shows a Verify button; pressing it starts verification and always shows the press-and-hold check (the server asks for it even when the evidence looks fine). Submitting before verifying shows "Please complete the verification first." and moves focus to the button.

States the chip shows

StateText (English)
idleProtected by AgentGate
verifyingVerifying…
verifiedVerified
failedVerification failed. Please try again.
network errorThe check could not be sent. Check your connection and try again.
expiredVerification expired. Please verify again.

The chip carries data-state (idle, verifying, verified, error, expired) and the class agentgate-chip, which you can use to style around it. Strings exist in eight languages; see Widget configuration.

Tokens and timing

A widget clears its token five seconds before it expires (two minutes by default) and, for managed and interactive widgets, shows "Verification expired". After a successful submission the token is cleared, so the next submission verifies again.

View as Markdown