agentic‑readiness docs
/
Build one › Run a scan ›

DocsTrustWeb Bot Auth directory

Web Bot Auth directory

Public keys letting verified agents prove who they are.

adoption Early productiontrend ▲ risingchecked once per sitechecks 6verified 2026-08-12
Set up Web Bot Auth directory on your site How to publish the keys that let a verified agent prove who it is, in the format verifiers read.
Free Publish a Web Bot Auth directory

Why an agent cares

It is how an automated client proves its identity instead of being judged on a user-agent string, which is the basis of every allowlist that is not guesswork. We read the published key directory, so the population that can get it wrong is signing operators.

Adoption

Early production. Several independent organisations run it in production, though it is still niche on the open web.

Direction of travel: ▲ rising, as at .

Shipping is ahead of the standard: OpenAI signs in production, Cloudflare, Vercel and Akamai verify, and Amazon Bedrock AgentCore signs by default, while the IETF working group has adopted no document of its own.

AdopterDepthEvidence
OpenAI (signs ChatGPT agent and Operator requests)productionhelp.openai.com
Cloudflare (signed agents, Verified Bots)productionblog.cloudflare.com
Vercel (verifies signatures)productionvercel.com
Amazon (Bedrock AgentCore Browser)default-oncoronium.io

What we check

Absence is never a finding. Every check below runs only once webBotAuthPresent is true, so a site that has not adopted this is not assessed on it and appears in no report. 6 of these 6 can fail it. In a Lumar crawl these land on one row per site, in the crawl-level table where itemType is web_bot_auth.
CheckSeverityRaisesOn whose authority
webBotAuthMalformedDirectoryhighconformance, usabilityspecification (RFC 7517)
webBotAuthMissingKeyshighusabilityspecification (draft-meunier-webbotauth-httpsig-directory-00 (2026-06-26))
webBotAuthInvalidKeyhighconformance, usabilityspecification (RFC 7517 + RFC 9421 (per draft-meunier-webbotauth-httpsig-directory-00 §3))
webBotAuthPrivateKeyExposedhighconformance, usability, securityspecification (RFC 7517)
webBotAuthUnregisteredAlgNamemediumconformance, usabilityspecification (draft-meunier-webbotauth-httpsig-directory-00 (2026-06-26) §3)
webBotAuthWrongMediaTypemediumconformance, usabilityspecification (draft-meunier-webbotauth-httpsig-directory-00 (2026-06-26))

Examples

Both of these are fixtures the test suite runs through the real collector, not snippets written for a document: the first is a shape we score as valid, the second is one we flag.

correctjsontest/e2e/test-pages/trust/correct.web-bot-auth.json
{
  "keys": [
    {
      "kty": "OKP",
      "crv": "Ed25519",
      "x": "JrQLj5P_89iXES9-vFgrIy29clF9CC_oPPsw3c5D0bs"
    }
  ]
}
present but wrongjsontest/e2e/test-pages/trust/issues.web-bot-auth.json
{
  "keys": [
    {
      "kty": "OKP",
      "crv": "Ed25519",
      "x": "tooShort"
    }
  ]
}

Specifications

Last re-read against the published documents: .

On pinning it. This draft formally replaces draft-meunier-http-message-signatures-directory, which expired at -05. Note that the IETF working group has adopted no document of its own: as of 2026-08-12 all nine active drafts are individual submissions.