Skip to main content
Trusted Accounts uses the same <botshield-verify> element as BotShield Gate. The offer is the card that invites the person to secure their account. It is on when the gate’s Notarize account with BotShield switch is on in the Console and the element does not carry notarize="false". With the offer on and a platform-user-ref that is not yet secured, the element draws the Link BotShield ID card instead of the verify button. This page covers what is specific to that card. For everything else, see Web component.
The sample needs no notarize attribute. The gate’s switch turns the offer on.

Attributes

state is set by the widget: idle, verifying, verified or failed. Read it, do not write it.

When the offer appears

In every row except the first, the widget stays usable as a gate.

Card states

Every state is one card: a short label, a heading, a line of body text, the sign-in pill from account-hint, and the button. On a phone the button opens BotShield directly. There is no QR code and no code on the card.

The code

The code has 6 characters from the letters and digits ABCDEFGHJKLMNPQRSTUVWXYZ23456789. It lasts 5 minutes and works once. On a desktop the code is always shown beside the QR code, so a person whose camera cannot scan can type it at app.botshield.ai/link.

The two refusals

Both refusals protect the rule of one human, one account. Neither one changes any existing binding.

Events

All events bubble and cross the Shadow DOM boundary, so you can listen on the element, a parent, or document.

botshield:success

Fired when the person confirmed.
Verify the token on your server before you act on it. Fired when a code is created, for platforms that draw their own code and countdown.
The event never carries the account hint.

botshield:failure

detail.reason is always present. These reasons are specific to Trusted Accounts. For the reasons shared with BotShield Gate, such as origin_not_allowed and gate_not_active, see Web component. An Unavailable result is not an accusation. It means the account was not secured this time.

botshield:gate-status

Fired by the normal verify button when its pre-check answers. botshield:census-status and botshield:multipass-status are deprecated names for the same event. See Alias window.

Methods

verify(), reset() and getToken() work as they do for a gate. A call to verify() from your code is not a user gesture, so on a desktop the widget cannot open a new tab. The card goes straight to Scan with your phone.

Styling

The card renders in a closed Shadow DOM. Style it through these parts: The card is 520 pixels wide on a desktop and 390 pixels wide on a narrow screen.