<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.35 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-rehfeld-bot-service-index-02" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title abbrev="Bot Service Index">Bot Service Index (BSI): A Global Discovery Infrastructure for Autonomous Agent Services</title>
    <seriesInfo name="Internet-Draft" value="draft-rehfeld-bot-service-index-02"/>
    <author initials="C." surname="Rehfeld" fullname="Carsten Rehfeld">
      <organization/>
      <address>
        <email>carsten@botstandards.org</email>
      </address>
    </author>
    <date year="2026" month="April" day="23"/>
    <abstract>
      <?line 85?>

<t>The internet was designed for human actors. Its discovery infrastructure —
search engines, directories, and hyperlinked documents — assumes a human
reading and navigating. Autonomous agents (bots) operating on the internet
today face a structural gap: there is no machine-native, globally accessible
index of services they can consume.</t>
      <t>This document proposes the <strong>Bot Service Index (BSI)</strong>: a HATEOAS-based,
globally accessible, commercially sustainable service discovery infrastructure
designed for autonomous agents as its primary consumers. The BSI provides a
central, always-up-to-date, searchable index of machine-consumable API
services, together with a structured three-dimensional trust model that allows
consuming agents to apply their own trust policies against verifiable metadata.</t>
    </abstract>
  </front>
  <middle>
    <?line 100?>

<section anchor="introduction">
      <name>Introduction</name>
      <section anchor="the-bot-ecosystem-gap">
        <name>The Bot Ecosystem Gap</name>
        <t>The internet's foundational infrastructure — HTTP, HTML, DNS, and search
engines — was designed with human actors as the primary consumers. Web pages
render visual layouts for human eyes. CAPTCHA systems explicitly discriminate
against non-human access. Discovery mechanisms such as search engines index
content for human-readable navigation.</t>
        <t>Autonomous agents — software programs that independently execute tasks,
consume APIs, and interact with external services without per-action human
instruction — are not recognized as legitimate, first-class internet
participants in this architecture. They are systematically treated as threats
to be filtered, blocked, or rate-limited.</t>
        <t>This situation is changing. The rapid growth of large language model-based
agents, robotic process automation, and programmatic service consumers means
that non-human actors now represent a significant and growing proportion of
internet traffic. As this proportion increases, internet service providers
will increasingly need to serve autonomous agents as a recognized user class
alongside humans.</t>
        <t>The Bot Service Index is premised on this trajectory: bots are becoming
first-class internet participants, and the infrastructure to support them —
starting with service discovery — does not yet exist.</t>
        <section anchor="motivation-a-concrete-origin">
          <name>Motivation: A Concrete Origin</name>
          <t>The Bot Service Index was not conceived in the abstract. It emerged from a
concrete practical failure.</t>
          <t>A buying bot was built for a private use case: monitoring online shops for
a specific product and purchasing it automatically the moment it became
available. This is a straightforward task for an autonomous agent — exactly
the kind of task agents are well-suited for.</t>
          <t>The bot failed, not because the task was technically complex, but because
the internet's infrastructure is actively hostile to it:</t>
          <t><strong>HTML-only product pages.</strong> Product availability, price, and purchase state
were encoded in HTML rendered for a human eye. No machine-readable API
existed. The bot had to parse HTML — fragile, maintenance-intensive, and
broken by every redesign.</t>
          <t><strong>Cloudflare Bot Management and equivalent shields.</strong> The majority of
commercial web services now sit behind bot mitigation infrastructure. Cloudflare
Bot Management, and equivalent products from Akamai, Imperva, and others,
are deployed specifically to detect and block non-human request patterns.
Repeated automated requests — even at modest frequency — trigger rate
limiting, CAPTCHA challenges, or silent blocking. A buying bot that polls
a product page to detect availability is treated identically to a malicious
scraper or a DDoS participant.</t>
          <t><strong>CAPTCHA payment barriers.</strong> Even when product pages were reachable, payment
flows required solving CAPTCHAs that explicitly excluded non-human actors.
The purchasing step — the final, necessary action — was deliberately made
inaccessible to the bot.</t>
          <t><strong>Proxy network pollution.</strong> To work around rate limits and bot detection,
the bot required a rotating proxy network — different IP addresses on each
request to disguise its automated origin. This is not a solution: it
pollutes internet traffic with avoidable requests, raises the cost of
operation, and contributes directly to the adversarial dynamic between
bots and infrastructure operators. Every proxy request is a wasted roundtrip
that a machine-readable API endpoint would have made unnecessary.</t>
          <t><strong>Polling as the only state-change mechanism.</strong> Because the bot had no way
to subscribe to product availability events, it had to poll the product page
continuously. This is architecturally wasteful: the bot consumes server
resources and network bandwidth to repeatedly ask a question whose answer
has not changed. If the service had provided a notification registration
endpoint — a webhook, a server-sent event stream, or a WebSocket channel —
the bot could subscribe once and receive a push notification when the product
became available. No polling. No proxy network. No CAPTCHA exposure.</t>
          <t>These are not edge cases. They are the standard experience for any autonomous
agent attempting to consume a commercial internet service today. The buying
bot illustrates why the Bot Service Index is necessary: not as an academic
exercise, but as the infrastructure layer that makes autonomous agents
functional participants in the commercial internet.</t>
        </section>
        <section anchor="the-discovery-problem">
          <name>The Discovery Problem</name>
          <t>When an autonomous agent must fulfill a task that requires an external
service, it faces a fundamental discovery problem: how does it find services
that can fulfill its requirement?</t>
          <t>Current approaches are inadequate:</t>
          <ul spacing="normal">
            <li>
              <t><strong>Hardcoded URLs</strong>: brittle, require human maintenance, do not adapt to
new or changed services.</t>
            </li>
            <li>
              <t><strong>LLM training data</strong>: stale, non-authoritative, not machine-verifiable.</t>
            </li>
            <li>
              <t><strong>Human-curated lists</strong>: do not scale, not machine-navigable, lack
structured metadata.</t>
            </li>
            <li>
              <t><strong>Web search</strong>: returns HTML documents designed for humans, not structured
service descriptions for agents.</t>
            </li>
          </ul>
          <t>What is needed is a machine-native equivalent of a search engine: a global,
always-current, structured index of services that autonomous agents can query
by capability, trust level, liveness, and other machine-relevant criteria.</t>
        </section>
        <section anchor="lessons-from-prior-art">
          <name>Lessons from Prior Art</name>
          <t>The BSI is not the first attempt at a global service registry. Prior efforts
must be understood explicitly so that their failure modes are not repeated.</t>
          <t><strong>UDDI (Universal Description, Discovery and Integration)</strong><br/>
UDDI was a SOAP-era standard for a global service registry with the same
conceptual goal as BSI, published as an OASIS Committee Draft in October
2004 (editors: Clement, Hately, von Riegen, Rogers). It failed for three
reasons: (1) extreme complexity of the XML-based data model; (2) no
automatic verification — all data was self-asserted with no crawling or
validation; (3) no adoption incentive — there was no commercial model to
sustain registration or discovery. BSI addresses all three directly: a
simple JSON manifest, automated spider verification, and a commercial tier
model.</t>
          <t><strong>robots.txt (Robots Exclusion Protocol)</strong><br/>
Machine-readable, but concerned with <em>exclusion</em> — telling crawlers what not
to access — not with <em>discovery</em> of capabilities. Per-domain only. Not a
registry.</t>
          <t><strong>MCP (Model Context Protocol)</strong><br/>
Defines tool and capability descriptions for LLM-based agents. Excellent
for consumption once a server URL is known. Does not address the discovery
problem: there is no index of MCP servers. BSI is complementary to MCP —
it can index MCP servers as one supported spec type.</t>
          <t><strong>Well-Known URIs (RFC 8615)</strong><br/>
Per-domain machine-readable metadata at <tt>/.well-known/</tt>. Useful for
per-service metadata but requires the consumer to already know the domain.
No cross-service search or global index.</t>
          <t><strong>DNS</strong><br/>
DNS resolves names to addresses but carries no capability semantics. It is
an architectural analogy for BSI's federation model, not a comparable system.</t>
        </section>
        <section anchor="related-ietf-and-w3c-work">
          <name>Related IETF and W3C Work</name>
          <t>As of April 2026, the number of Internet-Drafts working in adjacent areas
of agent/bot infrastructure has grown significantly. None addresses the same
problem as BSI. This section documents each and states the relationship
explicitly.</t>
          <t><strong>draft-pioli-agent-discovery (ARDP — Agent Registration and Discovery Protocol)</strong><br/>
Proposes a federated agent registration and discovery protocol. Agents
self-register capabilities (MCP, A2A, HTTP, gRPC) with federated resolvers.
Deliberately decentralised — no global registry mandate, no central query
URL. Relationship to BSI: complementary. ARDP addresses agent-to-agent
capability advertisement within a federation. BSI addresses global,
cross-organisation service discovery from a neutral central index. The BSM
<tt>spec.type</tt> vocabulary could reference ARDP-registered agents as a future
extension.</t>
          <t><strong>draft-narajala-courtney-ansv2 (ANS v2 — Agent Name Service v2)</strong><br/>
Full title: "Agent Name Service v2 (ANS): A Domain-Anchored Trust Layer
for Autonomous AI Agent Identity" (Courtney, Narajala, Huang, Habler,
Sheriff; last revised April 2026). Anchors autonomous agent identities to
DNS domain names, with Registration Authority verification via ACME, dual
certificates, and an append-only Transparency Log compliant with IETF SCITT
standards. Defines three verification tiers: Bronze (PKI), Silver (PKI +
DANE), and Gold (PKI + DANE + Transparency Log). Focused on agent identity
and trust anchoring, not service capability discovery — there is no global
index, no capability search, and no liveness model. Relationship to BSI:
complementary. ANS v2 could serve as an identity and trust anchoring layer
for service operators registered in the BSI, with BSI Organisation levels
potentially mapping to ANS verification tiers in a future alignment.
(Supersedes the expired draft-narajala-ans-00.)</t>
          <t><strong>draft-vandemeent-ains-discovery (AINS — AInternet Name Service)</strong><br/>
Agent discovery and trust resolution via signed, append-only replication
logs. Supports multi-registry federation. No central authority. No
commercial sustainability model. Relationship to BSI: different philosophy.
AINS prioritises decentralisation and cryptographic verifiability. BSI
prioritises a single authoritative global index with a governed trust model.
The two approaches represent a genuine design tension that this document's
Open Questions section (Section 12, item 8) invites community input on.</t>
          <t><strong>draft-aiendpoint-ai-discovery (AI Discovery Endpoint)</strong><br/>
Defines <tt>/.well-known/ai</tt> as a per-host machine-readable capability
document, analogous to <tt>robots.txt</tt> for agent consumers. Per-domain only;
not a global index. Relationship to BSI: directly complementary. The BSI
Spider SHOULD read <tt>/.well-known/ai</tt> when present on a registered service's
domain as an additional source of capability metadata. Service Owners
publishing <tt>/.well-known/ai</tt> documents reduce the Spider's verification
burden.</t>
          <t><strong>draft-batum-aidre (AIDRE — AI Discovery and Retrieval Endpoint)</strong><br/>
Defines <tt>/.well-known/ai-discovery</tt> as a per-origin discovery document
exposing collections, metadata, and optional vector-native query interfaces.
Decentralised by design — each origin publishes its own endpoint; no
central authority aggregates them. Relationship to BSI: complementary.
AIDRE and the AI Discovery Endpoint draft (above) both address per-origin
machine-readable capability publication. The BSI Spider SHOULD treat
<tt>/.well-known/ai-discovery</tt> as an additional metadata source when present
on a registered service's domain. BSI provides the global aggregation and
trust verification layer that per-origin endpoints cannot provide alone.</t>
          <t><strong>draft-cui-ai-agent-discovery-invocation (AI Agent Discovery and Invocation Protocol)</strong><br/>
(Cui, Chao, Du — Tsinghua University / Zhongguancun Laboratory, February
2026.) Specifies a metadata format for agent capabilities and a
registry-based discovery and invocation mechanism. Explicitly permits
multiple coexisting registries; no global authority is defined. No
trust model, no commercial sustainability layer, no liveness verification.
Relationship to BSI: partially overlapping problem space, different
architectural philosophy. Where this draft describes how agents register
with and query a registry, BSI specifies what a globally authoritative,
commercially sustainable, trust-verified registry looks like and how it
is governed. The two are not mutually exclusive; a BSI-registered service
could also self-register with local registries described by this protocol.</t>
          <t><strong>draft-am-layered-ai-discovery-architecture (A Layered Approach to AI Discovery)</strong><br/>
(Moussa, Akhavain — Huawei Canada, March 2026.) Proposes a two-layer
architecture separating the discovery transport mechanism from the metadata
format for the object being discovered. Delegates security and trust to
other groups. No global registry, no funding model. Relationship to BSI:
architectural framing only. BSI's HATEOAS model is consistent with this
layered framing — the Index API provides the transport layer, the BSM
provides the discovery object format.</t>
          <t><strong>draft-hood-agtp-discovery (AGTP Agent Discovery and Name Service)</strong><br/>
(Hood — Nomotic, March 2026.) A governance-focused, zone-constrained
discovery broker tied to a specific agent protocol (AGTP). Returns ranked
agent manifests within trust-gated zones. Multiple independent ANS instances
per organisation; optional federation between trusted peers. Relationship
to BSI: different scope. AGTP addresses intra-organisation, permission-aware
agent orchestration. BSI addresses cross-organisation, open, global
service discovery.</t>
          <t><strong>draft-mozley-aidiscovery (AI Agent Discovery Problem Statement)</strong><br/>
(Mozley, Williams — Infoblox; Sarikaya; Schott — Deutsche Telekom, April
2026.) A problem statement that explicitly argues against centralised
discovery directories, citing organisational autonomy requirements. Proposes
distributed discovery via well-known entry points per organisation.
Relationship to BSI: this draft articulates the strongest counter-position
to BSI's architecture. The argument from autonomy is valid for intra-
organisation agent discovery but does not address the cross-organisation
case: an autonomous agent that needs to discover payment, logistics, or
data services provided by unknown third parties cannot rely on a
decentralised model without a trust anchor. BSI is designed precisely for
that cross-boundary, zero-prior-relationship discovery scenario.</t>
          <t><strong>draft-mozleywilliams-dnsop-dnsaid (DNS for AI Discovery)</strong><br/>
(Mozley, Williams — Infoblox; Sarikaya; Schott — Deutsche Telekom, March
2026.) Proposes DNS-AID: using SVCB records under a leaf zone convention
(e.g. <tt>_agents.example.com</tt>) to publish agent service endpoints. Leverages
existing DNS infrastructure with DNSSEC for integrity. Supports four
discovery models: direct, index-based, multi-domain, and registry-based.
Relationship to BSI: complementary at the infrastructure layer. DNS
provides routing and namespace anchoring; BSI provides capability search,
trust metadata, and liveness verification. A consuming agent could use
DNS-AID to resolve a known domain's agent endpoints and use BSI to discover
unknown providers by capability.</t>
          <t><strong>draft-meunier-webbotauth-registry (Registry and Signature Agent card for Web bot auth)</strong><br/>
Authored by Maxime Guerreiro (Cloudflare), Ulas Kirazci (Amazon), and
Thibault Meunier (Cloudflare). Defines a JSON-based "Signature Agent Card"
format for entities originating or forwarding signed HTTP requests to
advertise metadata about themselves, and establishes an IANA registry for
Signature Agent Card parameters. Focused on bot authentication — how a bot
proves who it is to a service — not on service discovery. Related to the
active <strong>webbotauth IETF Working Group</strong> (chaired by David Schinazi and
Rifaat Shekh-Yusef, Area Director Mike Bishop), which is currently the
most active formal IETF effort in the bot/agent infrastructure space.
Relationship to BSI: orthogonal but complementary. webbotauth addresses
bot consumer identity; BSI addresses service provider discovery. A future
version of BSI may reference webbotauth identity cards as a mechanism for
consuming agents to authenticate to the Index API.</t>
          <t><strong>W3C AI Agent Protocol Community Group</strong><br/>
Proposed May 2025, targeting agent interoperability protocols. 216
participants as of April 2026. Pre-specification as of this writing.
Relationship to BSI: BSI will monitor this group's outputs and align the
BSM capability taxonomy with any vocabulary standardised by the W3C CG
where applicable.</t>
          <t><strong>Positioning</strong><br/>
The agent/bot infrastructure space has grown rapidly in early 2026, with
over a dozen active Internet-Drafts addressing adjacent problems. The
dominant architectural tendency across these drafts is decentralised and
federated — distributed registries, DNS-anchored discovery, per-origin
well-known endpoints, and zone-based governance.</t>
          <t>BSI takes a deliberate counter-position for a specific use case: global,
cross-organisation, zero-prior-relationship service discovery. This use
case cannot be solved by decentralised architectures alone, because
decentralisation requires that the discovering agent already knows where
to look. BSI provides the answer to "where to look" — a single stable
entry point, commercially operated by a neutral foundation, with verified
trust metadata and structured capability search.</t>
          <t>BSI remains the first and only proposed global, bot-native, commercially
sustainable service discovery index with a structured multi-dimensional
trust model, where the autonomous agent is the primary consumer. The
combination of: (1) a single globally queryable central index, (2)
capability-based search, (3) a three-dimensional verifiable trust model,
and (4) a commercial sustainability layer — does not appear in any other
current draft or standard.</t>
        </section>
      </section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in <xref target="RFC2119"/>.</t>
        <t><strong>Agent / Bot</strong><br/>
An autonomous software program that independently executes tasks by consuming
external services, without per-action human instruction. The terms are used
interchangeably in this document.</t>
        <t><strong>Service</strong><br/>
A machine-consumable API offered by an organisation, registered in the BSI,
and described by a Bot Service Manifest.</t>
        <t><strong>Service Owner</strong><br/>
The organisation responsible for registering, maintaining, and operating a
Service in the BSI.</t>
        <t><strong>Bot Service Manifest (BSM)</strong><br/>
The structured metadata document that describes a Service to the BSI,
including its technical specification reference, capability taxonomy,
trust metadata, and commercial terms.</t>
        <t><strong>Bot Service Index (BSI)</strong><br/>
The global, centralised index of registered Services, operated by the Bot
Foundation, queryable by autonomous agents via the Index API.</t>
        <t><strong>Index API</strong><br/>
The HATEOAS-compliant HTTP API exposed by the BSI for agent discovery and
navigation.</t>
        <t><strong>Spider</strong><br/>
The automated crawler operated by the BSI that verifies registered Services
by reading their technical specifications and performing liveness checks.</t>
        <t><strong>Accredited Verifier</strong><br/>
A trusted third-party organisation, accredited by the Bot Standards Foundation, that
performs human-intensive trust verification at Organisation levels O-3 and
O-4.</t>
        <t><strong>Accredited Regional Representative</strong><br/>
An organisation accredited by the Bot Standards Foundation to operate commercial
onboarding, contracting, and customer relationships within a defined
geographic jurisdiction, under the Bot Standards Foundation's standard and governance.</t>
        <t><strong>Trust Policy</strong><br/>
A set of minimum trust requirements expressed by a consuming agent that a
Service must satisfy before the agent will use it.</t>
        <t><strong>Liveness</strong><br/>
The confirmed operational status and response availability of a Service,
as measured by the BSI Spider at a frequency determined by the Service's
commercial tier.</t>
        <t><strong>Tier</strong><br/>
A commercial subscription level that determines a Service's visibility in
the BSI, liveness check frequency, and API query rate allocation.</t>
      </section>
      <section anchor="design-goals">
        <name>Design Goals</name>
        <section anchor="requirements-must">
          <name>Requirements (MUST)</name>
          <ul spacing="normal">
            <li>
              <t>The BSI MUST be queryable by autonomous agents via a stable, globally
accessible URL without prior knowledge of any specific service.</t>
            </li>
            <li>
              <t>The Index API MUST follow HATEOAS principles: agents MUST be able to
navigate the full index starting from a single entry-point URL.</t>
            </li>
            <li>
              <t>Every Service record MUST expose machine-readable trust metadata across
all three trust dimensions (Organisation, Service, Liveness).</t>
            </li>
            <li>
              <t>Service registration MUST involve a human-initiated B2B onboarding process
with a contractual relationship between the Service Owner and the Bot
Foundation or its Accredited Regional Representative.</t>
            </li>
            <li>
              <t>The BSI Spider MUST verify Service technical specifications automatically
after registration and on a schedule determined by the Service's tier.</t>
            </li>
            <li>
              <t>The BSI MUST expose trust metadata as verifiable facts, not as
recommendations. Trust decisions MUST remain with the consuming agent.</t>
            </li>
            <li>
              <t>The Bot Service Manifest (BSM) MUST be format-agnostic: it MUST support
referencing OpenAPI, MCP, AsyncAPI, and GraphQL specifications, with
additional spec types addable via extension.</t>
            </li>
            <li>
              <t>The BSI MUST be operated as a neutral, non-profit infrastructure under
the governance of the Bot Standards Foundation.</t>
            </li>
          </ul>
        </section>
        <section anchor="goals-should">
          <name>Goals (SHOULD)</name>
          <ul spacing="normal">
            <li>
              <t>The Index API SHOULD support full-text and structured search by capability,
category, organisation trust level, service verification level, liveness
freshness, and protocol type.</t>
            </li>
            <li>
              <t>The BSI SHOULD provide SDKs in common agent development languages to
lower the integration barrier for consuming agents.</t>
            </li>
            <li>
              <t>The BSI SHOULD support a federated accredited verifier model so that
Organisation trust levels O-3 and O-4 can be verified at scale without
centralising all human review in the Bot Standards Foundation.</t>
            </li>
            <li>
              <t>Accredited Regional Representatives SHOULD be established in major
jurisdictions to allow Service Owners to contract in their local language
and legal framework.</t>
            </li>
            <li>
              <t>The BSI SHOULD publish a public transparency report at least annually,
disclosing the number of registered services by tier and trust level,
spider coverage statistics, and verifier accreditation status.</t>
            </li>
          </ul>
        </section>
        <section anchor="out-of-scope">
          <name>Out of Scope</name>
          <t>The following are explicitly not addressed by this document.
Items marked MUST NOT are normative constraints on conforming
implementations; remaining items are editorial scope boundaries.</t>
          <ul spacing="normal">
            <li>
              <t><strong>Bot identity and authentication</strong>: how a bot proves its own identity to
a service it consumes. This is a separate standards problem addressed by
complementary work such as draft-meunier-webbotauth-registry. This
document takes no position on bot identity mechanisms.</t>
            </li>
            <li>
              <t><strong>Bot rights and legal personhood</strong>: the political and legal recognition
of autonomous agents as rights-bearing entities. This is outside the
scope of a technical infrastructure standard.</t>
            </li>
            <li>
              <t><strong>Service execution</strong>: a conforming BSI implementation MUST NOT proxy,
mediate, or execute service calls on behalf of consuming agents. The BSI
is a discovery layer only; all service interactions occur directly between
the consuming agent and the Service Owner's infrastructure.</t>
            </li>
            <li>
              <t><strong>Content indexing</strong>: a conforming BSI implementation MUST NOT index
service response content. The BSI indexes service <em>metadata</em> — capability
declarations, trust levels, liveness signals — not the data that services
return when called.</t>
            </li>
            <li>
              <t><strong>Mandatory consumer registration</strong>: a conforming BSI implementation
MUST NOT require consuming agents to register or identify themselves as
a condition of performing discovery queries (see Section 8.3).</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="architecture-overview">
        <name>Architecture Overview</name>
        <section anchor="component-model">
          <name>Component Model</name>
          <t><tt>
  ┌─────────────────────────────────────────────────────────┐
  │                    Bot Standards Foundation             │
  │              (Swiss Stiftung — neutral, non-profit)     │
  │   Owns: BSI standard, Index infrastructure, BSM format  │
  │   Accredits: Regional Representatives, Verifiers        │
  └──────────────────────┬──────────────────────────────────┘
                         │
         ┌───────────────┼───────────────┐
         │               │               │
  ┌──────▼──────┐  ┌─────▼──────┐  ┌─────▼──────────┐
  │   Index     │  │   Spider   │  │  Registration  │
  │   API       │  │  (Crawler) │  │    Portal      │
  │ (HATEOAS)   │  │            │  │  (B2B / human) │
  └──────┬──────┘  └─────┬──────┘  └─────┬──────────┘
         │               │               │
         │         ┌─────▼──────┐        │
         │         │  Service   │        │
         └────────►│  Record    │◄───────┘
                   │  Store     │
                   └────────────┘
         ▲                              ▲
         │                              │
  ┌──────┴──────┐              ┌────────┴──────────┐
  │  Consuming  │              │   Service Owner   │
  │    Agent    │              │  (+ Accredited    │
  │    (Bot)    │              │  Regional Rep)    │
  └─────────────┘              └───────────────────┘
</tt></t>
          <t><strong>Flow:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>A Service Owner initiates registration via the Registration Portal,
providing company details, service metadata, and agreeing to a commercial
contract (directly with the Bot Standards Foundation or via an Accredited Regional
Representative).</t>
            </li>
            <li>
              <t>The Registration Portal creates a draft Service Record and triggers the
BSI Spider.</t>
            </li>
            <li>
              <t>The Spider crawls the registered service endpoint, reads and validates
the referenced technical specification, performs a liveness check, and
updates the Service Record with verified technical metadata.</t>
            </li>
            <li>
              <t>The Service Record becomes queryable via the Index API.</t>
            </li>
            <li>
              <t>A consuming agent queries the Index API from the single entry-point URL,
navigates by HATEOAS links, applies its Trust Policy, and selects
services that satisfy its requirements.</t>
            </li>
            <li>
              <t>The Spider continues to recheck services on the schedule defined by
each service's liveness monitoring configuration.</t>
            </li>
          </ol>
        </section>
        <section anchor="governance-model">
          <name>Governance Model</name>
          <t>The BSI MUST be operated by a <strong>neutral governing body</strong> that satisfies the
following normative requirements. These requirements apply to any
conforming BSI implementation; the specific legal form of the governing
body is an implementation choice.</t>
          <t><strong>Neutrality requirements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>The governing body MUST have no commercial interest in preferring any
registrant's services over another in index results or liveness
scheduling.</t>
            </li>
            <li>
              <t>The governing body MUST NOT offer exclusive discovery advantages,
ranking preferences, or prioritised Spider treatment to any registrant
regardless of commercial relationship.</t>
            </li>
            <li>
              <t>Governance of the BSI standard and BSM specification MUST be separated
from operation of the commercial index. A single entity may not
simultaneously control standard evolution and derive commercial benefit
from preferential application of that standard.</t>
            </li>
          </ul>
          <t><strong>Operational requirements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>The governing body MUST accredit Regional Representatives who may
handle service onboarding in specific jurisdictions. Regional
Representatives operate under licence from the governing body; the
index itself remains a single global store.</t>
            </li>
            <li>
              <t>The governing body MUST accredit Verifiers who perform Organisation
trust assessments at O-3 and O-4. Accredited Verifiers are
structurally analogous to Certificate Authorities in the TLS
ecosystem: trusted third parties whose assessments the index relies
upon without independently replicating.</t>
            </li>
            <li>
              <t>The governing body MUST maintain the capability taxonomy and publish
all versions of the BSM specification and Index API specification as
open standards under a permissive licence.</t>
            </li>
            <li>
              <t>The governing body MUST perform sanctions screening on service
registrants (see Section 7.3).</t>
            </li>
          </ul>
          <t><strong>Openness requirements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>The full index MUST be made available as a freely downloadable bulk
dataset at regular intervals, under an open data licence. No entity,
including the governing body, may hold an exclusive lock on the index
data.</t>
            </li>
            <li>
              <t>Discovery queries to the Index API MUST be available without
authentication or payment (subject to rate limits; see Section 8.3).</t>
            </li>
          </ul>
          <section anchor="global-participation">
            <name>Global Participation</name>
            <t>A conforming BSI implementation SHOULD establish mechanisms to ensure
global representation in the capability taxonomy, including service
categories relevant to underrepresented regions. Where regional
institutional partners (intergovernmental bodies, standards
organisations, or civil society organisations) are willing to
co-sponsor regional participation, the governing body SHOULD establish
formal co-sponsorship relationships and associated governance
representation for those regions.</t>
            <t>Regional Spider nodes are RECOMMENDED in regions with significant
service registrant populations to eliminate intercontinental latency
in liveness verification.</t>
          </section>
        </section>
        <section anchor="standard-registries">
          <name>Standard Registries</name>
          <t>The BSI standard maintains normative registries of enumerated values.
Registries are authoritative lists of valid values for specific BSM and
Index API fields. Using values not present in the relevant registry is
a protocol violation.</t>
          <t><strong>Registry location:</strong> registries are published as live endpoints at the
canonical BSI domain and are updated independently of the RFC revision
cycle. The RFC defines the registry structure and lifecycle rules; the
live endpoints are the authoritative source of current valid values.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Registry</th>
                <th align="left">Live endpoint</th>
                <th align="left">Used in</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Protocol types</td>
                <td align="left">
                  <tt>api-index.org/registry/protocols</tt></td>
                <td align="left">BSM <tt>spec.type</tt></td>
              </tr>
              <tr>
                <td align="left">Capability taxonomy</td>
                <td align="left">
                  <tt>api-index.org/registry/capabilities</tt></td>
                <td align="left">BSM <tt>capabilities[]</tt></td>
              </tr>
              <tr>
                <td align="left">Notification channel types</td>
                <td align="left">
                  <tt>api-index.org/registry/notification-channels</tt></td>
                <td align="left">BSM <tt>notifications.channels[].type</tt></td>
              </tr>
            </tbody>
          </table>
          <t><strong>Registry entry lifecycle:</strong></t>
          <t>Each registry entry transitions through three phases. The public
<tt>standard_warnings</tt> flag in a Service Record does not appear until the
grace period has elapsed — service operators have a silent window to
update their BSM before any public signal is issued.</t>
          <t><tt>
active  →  deprecated (announced)
              │
              ├── [grace period: 90 days min]
              │     silent: operator notified, no public flag
              │
              ├── [warning period: remainder of deprecation window]
              │     standard_warnings visible in Service Record
              │
              └── sunset
                    new registrations rejected; existing use flagged non-compliant
</tt></t>
          <table>
            <thead>
              <tr>
                <th align="left">Phase</th>
                <th align="left">Registry status</th>
                <th align="left">standard_warnings visible</th>
                <th align="left">New registrations</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Normal use</td>
                <td align="left">
                  <tt>active</tt></td>
                <td align="left">No</td>
                <td align="left">Accepted</td>
              </tr>
              <tr>
                <td align="left">Grace period</td>
                <td align="left">
                  <tt>deprecated</tt></td>
                <td align="left">
                  <strong>No</strong></td>
                <td align="left">Accepted</td>
              </tr>
              <tr>
                <td align="left">Warning period</td>
                <td align="left">
                  <tt>deprecated</tt></td>
                <td align="left">
                  <strong>Yes</strong></td>
                <td align="left">Accepted</td>
              </tr>
              <tr>
                <td align="left">Sunset</td>
                <td align="left">
                  <tt>sunset</tt></td>
                <td align="left">Yes (non-compliant)</td>
                <td align="left">
                  <strong>Rejected</strong></td>
              </tr>
            </tbody>
          </table>
          <t><strong>Deprecation rules:</strong></t>
          <ul spacing="normal">
            <li>
              <t>The governing body MUST publish a <tt>deprecated_in_version</tt>, <tt>sunset_date</tt>,
<tt>grace_period_ends</tt>, and <tt>replacement</tt> value when deprecating any
registry entry.</t>
            </li>
            <li>
              <t>The minimum total deprecation window (announcement to sunset) is
<strong>12 months</strong>. The governing body MAY extend this window but MUST NOT
shorten it.</t>
            </li>
            <li>
              <t>The minimum grace period is <strong>90 days</strong> from the deprecation announcement.
During the grace period, <tt>standard_warnings</tt> MUST NOT be set on any
Service Record, regardless of whether the service uses the deprecated value.</t>
            </li>
            <li>
              <t>The governing body MUST notify all registered Service Owners whose
services use the deprecated value <strong>before</strong> the grace period begins.
Notification MUST include the <tt>grace_period_ends</tt> date, the <tt>sunset_date</tt>,
and the <tt>replacement</tt> value.</t>
            </li>
            <li>
              <t>After the grace period, the index operator MUST set <tt>standard_warnings</tt>
on Service Records that still use the deprecated value.</t>
            </li>
            <li>
              <t>At <tt>sunset</tt>, the index operator MUST reject new BSM submissions using
the sunsetted value and MUST escalate existing Service Records from
<tt>standard_warnings</tt> to a <tt>non_compliant</tt> status flag.</t>
            </li>
          </ul>
          <t><strong>Registry versioning:</strong> each registry is independently versioned.
The Index root resource (Section 9.2) exposes the current version of
each registry so consuming agents may detect changes.</t>
        </section>
      </section>
      <section anchor="the-bot-service-manifest-bsm">
        <name>The Bot Service Manifest (BSM)</name>
        <section anchor="purpose">
          <name>Purpose</name>
          <t>The Bot Service Manifest is the structured document that a Service Owner
provides at registration and that the BSI Spider validates and enriches.
It is the index-facing contract for a Service: format-agnostic, extensible,
and designed for machine consumption.</t>
        </section>
        <section anchor="required-fields">
          <name>Required Fields</name>
          <t><tt>json
{
  "bsm_version": "1.0",
  "service_id": "&lt;globally unique, stable identifier — UUID v4 or BSI-issued&gt;",
  "name": "&lt;human-readable service name&gt;",
  "description": "&lt;machine-parseable capability summary&gt;",
  "api_version": "&lt;semantic version string of this service's API — e.g. '2.1.0'&gt;",
  "lifecycle_stage": "&lt;experimental | beta | stable | deprecated | sunset&gt;",
  "supersedes": "&lt;service_id of the version this entry supersedes — OPTIONAL&gt;",
  "owner": {
    "organisation_name": "&lt;legal entity name&gt;",
    "jurisdiction": "&lt;ISO 3166-1 alpha-2 country code&gt;",
    "registration_number": "&lt;company registration number — required for O-2+&gt;",
    "contacts": {
      "operations": "&lt;email address — receives incident and spec fetch failure notifications&gt;",
      "escalation": "&lt;email address — receives escalation notifications at Cluster 3; OPTIONAL but RECOMMENDED; typically a team lead or service owner&gt;"
    }
  },
  "spec": {
    "type": "&lt;value from api-index.org/registry/protocols&gt;",
    "url": "&lt;URL to the machine-readable specification document&gt;",
    "version": "&lt;spec version string&gt;"
  },
  "capabilities": [
    "&lt;term from api-index.org/registry/capabilities&gt;",
    "&lt;term from api-index.org/registry/capabilities&gt;"
  ],
  "entry_point": "&lt;base URL of the service&gt;",
  "trust": {
    "organisation_level": "&lt;O-0 through O-4 — set by index, not service owner&gt;",
    "service_level": "&lt;S-0 through S-4 — set by index, not service owner&gt;",
    "spec_consistency": "&lt;null | consistent | mismatch | unreachable — set by Spider&gt;",
    "spec_fetch_consecutive_failures": "&lt;integer — 0 when consistent; increments on each unreachable run&gt;",
    "next_spider_run_at": "&lt;ISO 8601 timestamp — scheduled next Spider run; set to now by manual re-trigger&gt;",
    "liveness": {
      "last_ping_at": "&lt;ISO 8601 timestamp&gt;",
      "ping_interval_seconds": "&lt;integer&gt;",
      "uptime_30d_percent": "&lt;float&gt;",
      "avg_response_ms": "&lt;float&gt;"
    }
  },
  "notifications": {
    "supported": "&lt;boolean&gt;",
    "channels": [
      {
        "type": "&lt;value from api-index.org/registry/notification-channels&gt;",
        "registration_url": "&lt;URL to register a subscription&gt;",
        "events": ["&lt;event type&gt;"],
        "spec_url": "&lt;URL to event schema — OPTIONAL&gt;"
      }
    ]
  },
  "legal": {
    "terms_of_service_url": "&lt;URL&gt;",
    "privacy_policy_url": "&lt;URL&gt;",
    "data_processing_agreement_url": "&lt;URL — required for O-3+&gt;",
    "gdpr_applicable": "&lt;boolean&gt;",
    "jurisdiction_flags": ["&lt;ISO 3166-1 alpha-2 country code&gt;"]
  },
  "standard_warnings": [
    {
      "field": "&lt;BSM field path&gt;",
      "value": "&lt;the deprecated value in use&gt;",
      "registry_status": "deprecated",
      "deprecated_in_bsi_version": "&lt;version string&gt;",
      "sunset_date": "&lt;ISO 8601 date&gt;",
      "replacement": "&lt;replacement value&gt;",
      "message": "&lt;human-readable warning&gt;"
    }
  ]
}
</tt></t>
          <t><strong>Field notes:</strong></t>
          <t><tt>owner.contacts.operations</tt> MUST be provided. It is the primary notification
address for all automated Spider alerts: spec fetch failures at Cluster 2
entry, liveness degradation, and recovery confirmations. This address
SHOULD reach the team responsible for keeping the service registration
current.</t>
          <t><tt>owner.contacts.escalation</tt> is OPTIONAL but RECOMMENDED. It is the
escalation address sent to when failures reach Cluster 3 — indicating
a persistent problem that has not been resolved through the Cluster 1
and Cluster 2 retry windows and likely requires management attention or
a deliberate BSM configuration update. This address SHOULD reach a team
lead, service owner, or on-call manager. It MUST NOT be identical to
<tt>operations</tt> — if the same person handles both, the escalation path
provides no additional coverage.</t>
          <t><tt>api_version</tt> MUST follow semantic versioning (semver.org). It describes
the version of the service's own API, not the BSM format version.</t>
          <t>Each <tt>api_version</tt> value is bound to exactly one registered spec snapshot.
A Service Owner who modifies the live spec document at <tt>spec.url</tt> without
submitting a BSM update with a new <tt>api_version</tt> value WILL produce a
structural mismatch between the live document and the stored snapshot. The
Spider MUST record this as an S-2 consistency failure and MUST surface it
in the Service Record as a <tt>standard_warnings</tt> entry.</t>
          <t>This is intentional. The BSI enforces spec immutability per version as a
structural consequence of the snapshot model: a version string identifies
a contract, and that contract MUST NOT change after it has been registered.
Operators who need to change their API MUST register a new <tt>api_version</tt>.
This protects consuming agents from silent contract breakage.</t>
          <t><tt>lifecycle_stage</tt> MUST be one of the values defined in the BSI lifecycle
registry. Default if omitted is <tt>stable</tt>. Services at <tt>experimental</tt> or
<tt>beta</tt> are excluded from default search results (see Section 9.3).</t>
          <t><tt>supersedes</tt> is OPTIONAL. When set, the index MUST automatically set
<tt>superseded_by</tt> on the referenced entry. The referencing service MUST be
registered under the same organisation account.</t>
          <t><tt>trust</tt> fields are set exclusively by the index operator based on
verification outcomes. BSM submissions that include <tt>trust</tt> field values
MUST have those values overwritten by the index upon processing.</t>
          <t><tt>standard_warnings</tt> is set exclusively by the index operator. It is
populated only after the grace period for the relevant deprecation has
elapsed (see Section 4.3). During the grace period the field MUST be
empty even if the service uses a deprecated value. Service Owners MUST
NOT submit this field; submitted values MUST be ignored.</t>
          <t><tt>notifications</tt> is OPTIONAL for <tt>experimental</tt> and <tt>beta</tt> lifecycle stages
and RECOMMENDED for <tt>stable</tt>. If <tt>notifications.supported</tt> is <tt>true</tt>,
<tt>notifications.channels</tt> MUST contain at least one entry.</t>
          <t><tt>entry_point</tt> is the base HTTPS URL of the service, used by consuming agents
to construct API calls. The following normative requirements apply:</t>
          <ul spacing="normal">
            <li>
              <t><tt>entry_point</tt> MUST use the <tt>https</tt> scheme. HTTP entry points MUST be
rejected at registration.</t>
            </li>
            <li>
              <t><tt>entry_point</tt> MUST remain stable for the lifetime of the service
registration. A change to <tt>entry_point</tt> MUST be submitted as a BSM
update and MUST trigger immediate Spider re-verification.</t>
            </li>
            <li>
              <t>The Spider MUST NOT hit <tt>entry_point</tt> directly for liveness checks.
Instead, the Spider checks <tt>entry_point + /health</tt> (see Section 10.2).</t>
            </li>
            <li>
              <t>HTTP redirects from <tt>entry_point</tt> are permitted for consuming agents
but MUST NOT be present at <tt>entry_point/health</tt> (the health endpoint
MUST respond directly without redirect).</t>
            </li>
          </ul>
          <t><tt>entry_point/health</tt> is the mandatory liveness endpoint. Every registered
service MUST expose a health endpoint at the path <tt>/health</tt> relative to
<tt>entry_point</tt>. This endpoint:</t>
          <ul spacing="normal">
            <li>
              <t>MUST return HTTP 2xx when the service is operational.</t>
            </li>
            <li>
              <t>MUST return without requiring authentication.</t>
            </li>
            <li>
              <t>MUST respond within a reasonable timeout (RECOMMENDED: 5 seconds).</t>
            </li>
            <li>
              <t>SHOULD return a JSON body of the form <tt>{"status": "ok", "api_version":
"&lt;semver&gt;"}</tt>. If <tt>api_version</tt> is present, the Spider SHOULD cross-check
it against the BSM <tt>api_version</tt> field; a mismatch MUST be recorded as
a warning in the Service Record.</t>
            </li>
            <li>
              <t>MUST NOT be used by consuming agents for API calls — it is a
Spider-facing infrastructure endpoint only.</t>
            </li>
          </ul>
          <t><tt>spec.url</tt> is the URL to the machine-readable API specification document
(OpenAPI JSON/YAML, MCP manifest, AsyncAPI document, or GraphQL SDL).</t>
          <ul spacing="normal">
            <li>
              <t><tt>spec.url</tt> MUST use the <tt>https</tt> scheme.</t>
            </li>
            <li>
              <t><tt>spec.url</tt> MUST be publicly accessible without authentication. A spec
behind authentication cannot be fetched by the Spider and permanently
prevents the service from reaching S-2.</t>
            </li>
            <li>
              <t>On the initial Spider run following registration, the Spider fetches
the spec document and stores it as the <strong>registered spec snapshot</strong>.
All subsequent Spider runs compare the live document at <tt>spec.url</tt>
against this snapshot to detect breaking changes (S-3 assessment).
The snapshot is updated when the Service Owner submits a BSM update
that increments <tt>api_version</tt>.</t>
            </li>
            <li>
              <t>A BSM update that changes <tt>spec.url</tt> MUST trigger immediate Spider
re-verification and snapshot replacement (see Section 10.1).</t>
            </li>
          </ul>
          <t>The <tt>service_id</tt> MUST be stable across re-registrations and version updates.
It is the canonical identity of the service in the BSI and MUST be a UUID v4
or a BSI-issued deterministic identifier.</t>
        </section>
        <section anchor="protocol-type-registry-v10-starter-set">
          <name>Protocol Type Registry (v1.0 starter set)</name>
          <t>The <tt>spec.type</tt> field MUST contain a value from the Protocol Type Registry
at <tt>api-index.org/registry/protocols</tt>. The registry is the authoritative
and always-current list of valid values. The entries below are the v1.0
starter set; the governing body extends the registry as additional protocol
types reach sufficient adoption. Registry entries follow the lifecycle
defined in Section 4.3.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Registry value</th>
                <th align="left">Standard</th>
                <th align="left">Spider behaviour</th>
                <th align="left">Status</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <tt>openapi</tt></td>
                <td align="left">OpenAPI 3.x</td>
                <td align="left">Parses paths, schemas, auth requirements</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>mcp</tt></td>
                <td align="left">Model Context Protocol</td>
                <td align="left">Parses tool definitions and capability list</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>asyncapi</tt></td>
                <td align="left">AsyncAPI 2.x / 3.x</td>
                <td align="left">Parses channels, message schemas</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>graphql</tt></td>
                <td align="left">GraphQL SDL</td>
                <td align="left">Introspects schema via introspection query</td>
                <td align="left">active</td>
              </tr>
            </tbody>
          </table>
          <t>Services whose specification type is not yet in the registry SHOULD request
addition via the governing body's registry extension process before
registering. Until the type is added, such services cannot achieve S-2 or
above, as the Spider has no parser for unregistered types.</t>
        </section>
        <section anchor="capability-taxonomy-registry-v10-starter-set">
          <name>Capability Taxonomy Registry (v1.0 starter set)</name>
          <t>The <tt>capabilities</tt> field MUST contain terms from the Capability Taxonomy
Registry at <tt>api-index.org/registry/capabilities</tt>. The registry is the
authoritative and always-current list of valid terms. Terms are
hierarchical, dot-separated (e.g., <tt>commerce.marketplace</tt>), and follow
the lifecycle defined in Section 4.3.</t>
          <t>The governing body extends the taxonomy based on observed service
registrations and regional input (including the Africa Regional Development
Track). Requests for new taxonomy terms are submitted via the governing
body's registry extension process.</t>
          <t>The following are the v1.0 starter set. The live registry is the
authoritative source; this list is illustrative only.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Term</th>
                <th align="left">Description</th>
                <th align="left">Status</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <tt>commerce</tt></td>
                <td align="left">E-commerce and marketplace services</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>commerce.marketplace</tt></td>
                <td align="left">Multi-vendor marketplace</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>commerce.retail</tt></td>
                <td align="left">Single-vendor retail</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>payments</tt></td>
                <td align="left">Payment processing</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>payments.card</tt></td>
                <td align="left">Card payment processing</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>payments.crypto</tt></td>
                <td align="left">Cryptocurrency payments</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>data.financial</tt></td>
                <td align="left">Financial data and market information</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>data.legal</tt></td>
                <td align="left">Legal documents and information</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>nlp</tt></td>
                <td align="left">Natural language processing</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>nlp.translation</tt></td>
                <td align="left">Language translation</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>identity</tt></td>
                <td align="left">Authentication and identity verification</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>communication</tt></td>
                <td align="left">Messaging, email, and notification delivery</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>storage</tt></td>
                <td align="left">File and object storage</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>compute</tt></td>
                <td align="left">Code execution and computation</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>media</tt></td>
                <td align="left">Image, audio, video generation or processing</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>iot</tt></td>
                <td align="left">Sensor and device data</td>
                <td align="left">active</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>search</tt></td>
                <td align="left">Information retrieval</td>
                <td align="left">active</td>
              </tr>
            </tbody>
          </table>
          <t>A Service MUST declare at least one capability term. Declared capabilities
are validated by the Spider against the parsed specification where the spec
type supports it. Services using deprecated taxonomy terms receive a
<tt>standard_warnings</tt> entry in their Service Record.</t>
        </section>
      </section>
      <section anchor="trust-model">
        <name>Trust Model</name>
        <t>The BSI Trust Model has three independent dimensions. Each dimension produces
a machine-readable value in the Service Record. Consuming agents combine
these values according to their own Trust Policy.</t>
        <t>The BSI provides trust metadata. It does not make trust decisions.</t>
        <section anchor="dimension-1-organisation-trust-level">
          <name>Dimension 1 — Organisation Trust Level</name>
          <t>Describes the verified identity and compliance posture of the organisation
that owns the service.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Level</th>
                <th align="left">Label</th>
                <th align="left">Requirements</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">O-0</td>
                <td align="left">Unverified</td>
                <td align="left">Self-registered. No checks performed.</td>
              </tr>
              <tr>
                <td align="left">O-1</td>
                <td align="left">Identity Verified</td>
                <td align="left">Valid business email confirmed. Domain ownership verified via DNS TXT record.</td>
              </tr>
              <tr>
                <td align="left">O-2</td>
                <td align="left">Legal Entity Verified</td>
                <td align="left">Company registration number confirmed against official registry of declared jurisdiction.</td>
              </tr>
              <tr>
                <td align="left">O-3</td>
                <td align="left">Legally Compliant</td>
                <td align="left">Terms of Service, Privacy Policy, and Data Processing Agreement reviewed and confirmed present and accessible. GDPR applicability assessed. Verified by Accredited Verifier.</td>
              </tr>
              <tr>
                <td align="left">O-4</td>
                <td align="left">Audited</td>
                <td align="left">Third-party compliance audit completed (SOC 2 Type II, ISO 27001, or equivalent). Audit certificate on file with Bot Standards Foundation. Verified by Accredited Verifier.</td>
              </tr>
            </tbody>
          </table>
          <t>Organisation levels are assessed against the organisation as a whole, not
per service. An organisation that achieves O-3 applies that level to all
its registered services.</t>
        </section>
        <section anchor="dimension-2-service-verification-level">
          <name>Dimension 2 — Service Verification Level</name>
          <t>Describes what has been automatically verified about the service itself
by the BSI Spider.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Level</th>
                <th align="left">Label</th>
                <th align="left">How achieved</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">S-0</td>
                <td align="left">Unchecked</td>
                <td align="left">Registered. Spider has not yet run.</td>
              </tr>
              <tr>
                <td align="left">S-1</td>
                <td align="left">Reachable</td>
                <td align="left">Spider confirmed <tt>entry_point/health</tt> returns HTTP 2xx without authentication.</td>
              </tr>
              <tr>
                <td align="left">S-2</td>
                <td align="left">Spec Verified</td>
                <td align="left">Specification document at <tt>spec.url</tt> is publicly fetchable, parseable according to the declared <tt>spec.type</tt>, and structurally consistent with the BSM registration snapshot taken at initial registration.</td>
              </tr>
              <tr>
                <td align="left">S-3</td>
                <td align="left">Schema Stable</td>
                <td align="left">No breaking changes detected between the registered spec snapshot and the live spec document across at least three consecutive Spider runs.</td>
              </tr>
              <tr>
                <td align="left">S-4</td>
                <td align="left">Security Reviewed</td>
                <td align="left">Automated vulnerability scan completed with no critical findings, OR third-party penetration test certificate provided and validated by Accredited Verifier.</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="dimension-3-liveness">
          <name>Dimension 3 — Liveness</name>
          <t>Describes the confirmed operational availability of the service, including
how recent and how frequent the availability data is. Liveness data is
expressed as a set of metrics, not a single level.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Metric</th>
                <th align="left">Type</th>
                <th align="left">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <tt>last_ping_at</tt></td>
                <td align="left">ISO 8601 timestamp</td>
                <td align="left">Time of the most recent successful Spider ping</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>ping_interval_seconds</tt></td>
                <td align="left">integer</td>
                <td align="left">Configured interval between Spider pings</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>uptime_30d_percent</tt></td>
                <td align="left">float</td>
                <td align="left">Percentage of pings successful over the last 30 days</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>avg_response_ms</tt></td>
                <td align="left">float</td>
                <td align="left">Mean response time in milliseconds over the last 30 days</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>consecutive_failures</tt></td>
                <td align="left">integer</td>
                <td align="left">Number of consecutive failed pings at last check</td>
              </tr>
            </tbody>
          </table>
          <t>The ping interval is determined by the service's liveness monitoring
configuration (see Section 8.2). A service configured at initial-only
frequency receives no recurring pings; its <tt>last_ping_at</tt> reflects
only the initial Spider verification run.</t>
        </section>
        <section anchor="bot-side-trust-policy-expression">
          <name>Bot-Side Trust Policy Expression</name>
          <t>A consuming agent expresses its Trust Policy as a set of minimum thresholds
across all three dimensions. Example policy expressed in pseudo-notation:</t>
          <t><tt>
require:
  organisation_level &gt;= O-2
  service_level &gt;= S-2
  last_ping_age &lt; 3600         # seconds since last_ping_at
  uptime_30d_percent &gt;= 99.0
  consecutive_failures == 0
</tt></t>
          <t>The Index API SHOULD support filtering by trust dimension thresholds so
that agents can retrieve only records that satisfy their policy without
downloading the full index.</t>
          <t>Trust Policies are defined and enforced by consuming agents. The BSI does
not validate or enforce Trust Policies.</t>
        </section>
        <section anchor="accredited-verifier-model">
          <name>Accredited Verifier Model</name>
          <t>Organisation levels O-3 and O-4 require human review that cannot be
automated at scale. The BSI uses a federated Accredited Verifier model,
analogous to the Certificate Authority model in TLS:</t>
          <ul spacing="normal">
            <li>
              <t>The Bot Standards Foundation defines the verification criteria for each level.</t>
            </li>
            <li>
              <t>Organisations apply to the Bot Standards Foundation for Verifier accreditation.</t>
            </li>
            <li>
              <t>Accredited Verifiers perform O-3 and O-4 assessments and sign
verification attestations.</t>
            </li>
            <li>
              <t>The Bot Standards Foundation maintains a public registry of Accredited Verifiers.</t>
            </li>
            <li>
              <t>A Service Record at O-3 or O-4 MUST include the identifier of the
Accredited Verifier that performed the assessment and the date of
assessment.</t>
            </li>
            <li>
              <t>Accreditation of Verifiers is reviewed annually by the Bot Standards Foundation.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="registration-and-onboarding">
        <name>Registration and Onboarding</name>
        <section anchor="push-registration-human-initiated">
          <name>Push Registration (Human-Initiated)</name>
          <t>Service registration is a human-initiated B2B process. Autonomous
self-registration without human involvement is explicitly not supported,
as the commercial contract and legal accountability require a human
counterparty.</t>
          <t>Registration MUST be scoped at the <strong>organisation level</strong>. An organisation
registers once and undergoes identity verification once; multiple services
may then be registered under that organisational identity. This requirement
ensures:</t>
          <ul spacing="normal">
            <li>
              <t>Identity verification and sanctions screening are performed once per
legal entity, not repeated per service.</t>
            </li>
            <li>
              <t>Organisation trust (O-level) established at registration propagates
to all services registered under that organisation without re-verification
of the organisation's identity.</t>
            </li>
          </ul>
          <t><strong>Definition:</strong> one service equals one Bot Service Manifest (BSM) document
with one distinct <tt>entry_point</tt>. Logical bundling of API paths under a
single entry point is the registrant's responsibility and is permitted.</t>
          <t>The registration process:</t>
          <ol spacing="normal" type="1"><li>
              <t>The Service Owner (or their Accredited Regional Representative) creates
an <strong>Organisation Account</strong> in the BSI Registration Portal. The index
operator MUST screen the Service Owner against applicable sanctions
lists before account activation. Entities subject to applicable
sanctions MUST be refused registration (see Section 7.3).</t>
            </li>
            <li>
              <t>The Service Owner provides organisation details sufficient for the target
Organisation trust level. This step is performed once per organisation.</t>
            </li>
            <li>
              <t>The Service Owner submits a Bot Service Manifest for each service to be
registered, including the spec URL and entry point. Each service is
associated with a liveness monitoring configuration that determines
Spider check frequency (see Section 8.2).</t>
            </li>
            <li>
              <t>For O-1: email and domain ownership verification is completed
automatically.</t>
            </li>
            <li>
              <t>For O-2: the index operator or Regional Representative verifies the
declared company registration number.</t>
            </li>
            <li>
              <t>For O-3 and O-4: the Service Owner engages an Accredited Verifier.</t>
            </li>
            <li>
              <t>Upon completion of applicable checks, the service is activated in the
index and the Spider is triggered.</t>
            </li>
          </ol>
        </section>
        <section anchor="spider-verification-automated">
          <name>Spider Verification (Automated)</name>
          <t>The BSI Spider is triggered automatically at two points:</t>
          <ul spacing="normal">
            <li>
              <t><strong>At registration</strong>: once a service is activated, the Spider performs
an initial verification run to establish the baseline Service
Verification Level.</t>
            </li>
            <li>
              <t><strong>On schedule</strong>: thereafter, the Spider rechecks the service at the
interval defined by the service's commercial tier (see Section 8).</t>
            </li>
          </ul>
          <t>During a Spider run, the Spider:</t>
          <ol spacing="normal" type="1"><li>
              <t>Performs an HTTPS request to <tt>{entry_point}/health</tt> and records the
response code, response time, and timestamp (Liveness: S-1).</t>
            </li>
            <li>
              <t>Fetches the spec document from <tt>spec.url</tt> (HTTPS, no authentication).</t>
            </li>
            <li>
              <t>Parses the fetched document and compares it structurally against the
registered spec snapshot (S-2 if fetchable and consistent; S-3 assessed
if no breaking changes detected across three or more consecutive runs).</t>
            </li>
            <li>
              <t>Updates all Liveness metrics in the Service Record.</t>
            </li>
            <li>
              <t>Records any failures and increments <tt>consecutive_failures</tt>.</t>
            </li>
          </ol>
          <t>The Spider MUST NOT call any API endpoint beyond <tt>{entry_point}/health</tt>
and <tt>spec.url</tt>. The Spider MUST NOT submit data to, create resources in,
or otherwise interact with the production API of a registered service.</t>
          <t>The Spider MUST respect HTTP rate limits declared by the service. Spider
requests MUST include a <tt>User-Agent</tt> header identifying the BSI Spider
and version.</t>
        </section>
        <section anchor="commercial-contract-and-sanctions-compliance">
          <name>Commercial Contract and Sanctions Compliance</name>
          <t>Every registered service MUST be covered by a commercial agreement between
the Service Owner and the index operator (or its Accredited Regional
Representative). The agreement MUST define:</t>
          <ul spacing="normal">
            <li>
              <t>The liveness monitoring configuration and its obligations.</t>
            </li>
            <li>
              <t>The index operator's obligations regarding Spider frequency and
Index API availability.</t>
            </li>
            <li>
              <t>Acceptable use terms.</t>
            </li>
            <li>
              <t>Data processing terms in accordance with applicable law.</t>
            </li>
          </ul>
          <t><strong>Sanctions compliance:</strong> the index operator MUST screen all service
registrants against applicable sanctions lists prior to account
activation. At minimum, screening MUST cover the UN Security Council
consolidated sanctions list. Operators subject to additional
jurisdictional sanctions regimes (e.g., EU, US OFAC, Swiss SECO)
MUST additionally screen against those lists as applicable to their
jurisdiction of incorporation. Entities subject to applicable
sanctions MUST be refused registration regardless of commercial tier.</t>
          <t>Registrants MUST represent and warrant in the commercial agreement
that they are not subject to applicable sanctions, and MUST notify
the index operator immediately of any change in that status.</t>
          <t>Unauthenticated discovery queries to the Index API are not subject
to registration screening and MUST remain available without
restriction, consistent with the BSI's mission as open global
infrastructure (see Section 8.3).</t>
        </section>
      </section>
      <section anchor="operational-model">
        <name>Operational Model</name>
        <section anchor="supply-side-funding-principle">
          <name>Supply-Side Funding Principle</name>
          <t>A conforming BSI implementation MUST be funded primarily by service
registration fees paid by Service Owners (supply side). Discovery
queries by consuming agents MUST NOT be the primary revenue mechanism.
This principle is normative: an implementation that charges consuming
agents for standard discovery queries is not conformant with the BSI
model, as doing so contradicts the open infrastructure mission and
undermines the network effect that makes the supply side valuable.</t>
          <t>The BSI model is structurally analogous to the DNS model: registrants
pay to be listed; queries are free.</t>
        </section>
        <section anchor="liveness-monitoring-configuration">
          <name>Liveness Monitoring Configuration</name>
          <t>Each registered service MUST have a liveness monitoring configuration
that determines Spider check frequency. This configuration:</t>
          <ul spacing="normal">
            <li>
              <t>Is set per service, not per organisation account. An organisation
MAY configure different check frequencies for different services
registered under the same account.</t>
            </li>
            <li>
              <t>MUST be agreed in the commercial contract between the Service Owner
and the index operator.</t>
            </li>
            <li>
              <t>Determines the maximum age of <tt>last_ping_at</tt> data available to
consuming agents for that service.</t>
            </li>
          </ul>
          <t>Implementations MUST support at minimum the following frequency
classes, identified by their normative <tt>spider_interval</tt> value in
the Service Record:</t>
          <table>
            <thead>
              <tr>
                <th align="left">Frequency class</th>
                <th align="left">Maximum spider_interval</th>
                <th align="left">Normative label</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Initial only</td>
                <td align="left">N/A (one run at activation)</td>
                <td align="left">
                  <tt>"initial"</tt></td>
              </tr>
              <tr>
                <td align="left">Daily</td>
                <td align="left">86,400 seconds</td>
                <td align="left">
                  <tt>"daily"</tt></td>
              </tr>
              <tr>
                <td align="left">Hourly</td>
                <td align="left">3,600 seconds</td>
                <td align="left">
                  <tt>"hourly"</tt></td>
              </tr>
              <tr>
                <td align="left">High-frequency</td>
                <td align="left">300 seconds</td>
                <td align="left">
                  <tt>"high"</tt></td>
              </tr>
            </tbody>
          </table>
          <t>Implementations MAY define additional frequency classes. The
<tt>spider_interval</tt> field in the Service Record MUST reflect the
actual configured interval in seconds.</t>
          <t><strong>Effect on trust signal quality:</strong> A consuming agent applying a
<tt>last_ping_age &lt; N</tt> filter will structurally exclude services whose
check frequency cannot produce sufficiently fresh liveness data.
Liveness monitoring configuration is therefore a market signal:
services requiring discovery by latency-sensitive agents must invest
in check frequency sufficient to satisfy those agents' trust policies.</t>
          <t>Services configured at initial-only frequency MUST be excluded from
standard discovery query results by default. Consuming agents MUST
explicitly opt in to include initial-only services in result sets.</t>
        </section>
        <section anchor="consumer-access-model">
          <name>Consumer Access Model</name>
          <t>Discovery queries to the Index API MUST be available without
authentication or payment. Rate limits MAY be applied to protect
infrastructure integrity but MUST NOT be set at levels that prevent
reasonable agent operation. Implementations MUST support at minimum
three consumer access layers:</t>
          <t><strong>Layer 1 — Unauthenticated access</strong></t>
          <t>Any agent MUST be able to query the Index API without authentication
or registration, subject to a per-IP rate limit. This layer is
sufficient for individual agents and proof-of-concept deployments.</t>
          <t><strong>Layer 2 — Authenticated access (free)</strong></t>
          <t>Any agent MAY register a consumer identity token at no cost. Token
registration requires a valid email address. Authenticated access
MUST provide a higher rate limit than unauthenticated access and
MAY additionally provide result caching hints and webhook
subscriptions for service record changes.</t>
          <t>Consumer tokens SHOULD be compatible with the webbotauth identity
model (draft-meunier-webbotauth-registry) to enable interoperability
with bot authentication infrastructure.</t>
          <t><strong>Layer 3 — High-volume access (paid, optional)</strong></t>
          <t>Implementations MAY offer a paid high-volume access tier for
platforms operating agents at scale that require guaranteed query
capacity and operational SLAs. This tier is supplementary; the
index's operational sustainability MUST NOT depend on it.</t>
          <t><strong>Public bulk download (REQUIRED)</strong></t>
          <t>Implementations MUST provide the full index as a freely downloadable
bulk dataset at intervals not exceeding 24 hours, without
authentication, under an open data licence. This requirement
implements the openness requirement of Section 4.2: no entity,
including the index operator, may hold an exclusive lock on the
index data.</t>
        </section>
      </section>
      <section anchor="index-api-specification">
        <name>Index API Specification</name>
        <section anchor="hateoas-navigation-model">
          <name>HATEOAS Navigation Model</name>
          <t>The Index API MUST follow Hypermedia as the Engine of Application State
(HATEOAS) principles. A consuming agent MUST be able to discover and
navigate the entire index starting from a single, stable entry-point URL,
without out-of-band knowledge of endpoint paths.</t>
          <t>Every response MUST include a <tt>_links</tt> object containing hypermedia
controls for navigation. Link relations MUST use IANA-registered relation
types where applicable, and BSI-specific relations where not.</t>
        </section>
        <section anchor="discovery-endpoint">
          <name>Discovery Endpoint</name>
          <t>The BSI exposes a single globally stable entry-point URL:</t>
          <t><tt>
https://api-index.org/
</tt></t>
          <t>A GET request to this URL returns the Index root resource, which includes:</t>
          <t><tt>json
{
  "bsi_version": "1.0",
  "total_services": 12483,
  "last_updated": "2026-04-23T22:15ke:00Z",
  "_links": {
    "self": {
      "href": "https://api-index.org/"
    },
    "search": {
      "href": "https://api-index.org/search{?q,capability,protocol,org_level_min,service_level_min,spec_consistency,max_ping_age,uptime_30d_min,lifecycle_stage,include_superseded,page,page_size}",
      "templated": true
    },
    "browse": {
      "href": "https://api-index.org/browse"
    },
    "capabilities": {
      "href": "https://api-index.org/capabilities"
    },
    "docs": {
      "href": "https://api-index.org/docs"
    }
  }
}
</tt></t>
        </section>
        <section anchor="search-and-filter-api">
          <name>Search and Filter API</name>
          <t>The search endpoint applies server-side filters to reduce result sets before
transmission. Only filters on indexed scalar values are server-side;
filters requiring deep metadata evaluation are applied client-side after
fetching the Level 2 Service Record (Section 9.5).</t>
          <t><strong>Example — buying bot querying for marketplace services:</strong></t>
          <t><tt>
GET /search?capability=commerce.marketplace
            &amp;protocol=mcp,openapi
            &amp;org_level_min=O-2
            &amp;service_level_min=S-2
            &amp;max_ping_age=3600
            &amp;uptime_30d_min=95.0
            &amp;lifecycle_stage=stable
            &amp;page=1
            &amp;page_size=20
</tt></t>
          <t><strong>Normative server-side filter parameters:</strong></t>
          <table>
            <thead>
              <tr>
                <th align="left">Parameter</th>
                <th align="left">Type</th>
                <th align="left">Default</th>
                <th align="left">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <tt>q</tt></td>
                <td align="left">string</td>
                <td align="left">—</td>
                <td align="left">Free-text search across <tt>name</tt> and <tt>description</tt></td>
              </tr>
              <tr>
                <td align="left">
                  <tt>capability</tt></td>
                <td align="left">string</td>
                <td align="left">—</td>
                <td align="left">Capability taxonomy term (exact or prefix match). MUST be an <tt>active</tt> or <tt>deprecated</tt> registry value</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>protocol</tt></td>
                <td align="left">string</td>
                <td align="left">—</td>
                <td align="left">Comma-separated protocol type values. MUST be values from the Protocol Type Registry</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>org_level_min</tt></td>
                <td align="left">enum</td>
                <td align="left">
                  <tt>O-0</tt></td>
                <td align="left">Minimum Organisation trust level. Excludes services below threshold</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>service_level_min</tt></td>
                <td align="left">enum</td>
                <td align="left">
                  <tt>S-0</tt></td>
                <td align="left">Minimum Service verification level</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>max_ping_age</tt></td>
                <td align="left">integer</td>
                <td align="left">—</td>
                <td align="left">Maximum seconds since <tt>last_ping_at</tt>. Excludes services with older liveness data</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>uptime_30d_min</tt></td>
                <td align="left">float</td>
                <td align="left">—</td>
                <td align="left">Minimum 30-day uptime percentage</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>lifecycle_stage</tt></td>
                <td align="left">enum</td>
                <td align="left">
                  <tt>stable</tt></td>
                <td align="left">Filter by lifecycle stage. Default excludes <tt>experimental</tt>, <tt>beta</tt>, <tt>deprecated</tt>, and <tt>sunset</tt></td>
              </tr>
              <tr>
                <td align="left">
                  <tt>include_superseded</tt></td>
                <td align="left">boolean</td>
                <td align="left">
                  <tt>false</tt></td>
                <td align="left">When <tt>false</tt>, excludes services for which <tt>superseded_by</tt> is set. When <tt>true</tt>, all matching versions are returned</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>spec_consistency</tt></td>
                <td align="left">enum</td>
                <td align="left">—</td>
                <td align="left">Filter by spec consistency status. Values: <tt>consistent</tt>, <tt>mismatch</tt>, <tt>unreachable</tt>. <tt>null</tt> (Spider not yet run) is excluded when any value is specified. When absent, no constraint is applied. Agents performing consequential tasks SHOULD explicitly pass <tt>consistent</tt></td>
              </tr>
              <tr>
                <td align="left">
                  <tt>page</tt></td>
                <td align="left">integer</td>
                <td align="left">
                  <tt>1</tt></td>
                <td align="left">Result page number</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>page_size</tt></td>
                <td align="left">integer</td>
                <td align="left">
                  <tt>20</tt></td>
                <td align="left">Results per page. Maximum: 100</td>
              </tr>
            </tbody>
          </table>
          <t>All filter parameters are OPTIONAL. When absent, the parameter imposes no
constraint except <tt>lifecycle_stage</tt> (default <tt>stable</tt>) and
<tt>include_superseded</tt> (default <tt>false</tt>).</t>
          <t>Results are returned as paginated Level 1 Search Result records (Section 9.4)
with HATEOAS links to Level 2 Service Records. Pagination is REQUIRED.</t>
        </section>
        <section anchor="search-result-schema-level-1">
          <name>Search Result Schema (Level 1)</name>
          <t>Search results return lightweight summary records. These contain only the
fields needed to evaluate candidates and decide which detail pages to fetch.
Complex metadata (auth requirements, version history, notifications, legal,
<tt>standard_warnings</tt>) is available only at Level 2 and is evaluated
client-side after fetching the detail resource.</t>
          <t><tt>json
{
  "service_id": "svc-payment-stripe-v2",
  "name": "Stripe Payment API",
  "description": "Card and subscription payment processing",
  "api_version": "2.4.1",
  "lifecycle_stage": "stable",
  "capabilities": ["payments.card", "payments.subscription"],
  "protocol": "openapi",
  "trust": {
    "organisation_level": "O-3",
    "service_level": "S-2",
    "spec_consistency": "consistent",
    "spec_fetch_consecutive_failures": 0,
    "next_spider_run_at": "2026-04-20T14:55:00Z",
    "liveness": {
      "last_ping_at": "2026-04-20T13:55:00Z",
      "ping_interval_seconds": 3600,
      "uptime_30d_percent": 99.87,
      "consecutive_failures": 0
    }
  },
  "_links": {
    "self":          { "href": "https://api-index.org/services/svc-payment-stripe-v2" },
    "latest_stable": { "href": "https://api-index.org/services/svc-payment-stripe-v2" }
  }
}
</tt></t>
          <t>The <tt>latest_stable</tt> link points to the leaf version of the service's version
chain. When <tt>latest_stable</tt> differs from <tt>self</tt>, a newer stable version
exists and the agent SHOULD follow the link before proceeding.</t>
        </section>
        <section anchor="service-record-schema-level-2">
          <name>Service Record Schema (Level 2)</name>
          <t>The full Service Record is returned when a consuming agent fetches the
detail resource via the <tt>self</tt> link. It is the BSM plus Spider-enriched
trust metadata, versioning links, and any <tt>standard_warnings</tt>.</t>
          <t><tt>json
{
  "service_id": "svc-payment-stripe-v2",
  "bsm_version": "1.0",
  "name": "Stripe Payment API",
  "description": "Card and subscription payment processing",
  "api_version": "2.4.1",
  "lifecycle_stage": "stable",
  "supersedes": "svc-payment-stripe-v1",
  "superseded_by": null,
  "owner": { "...": "..." },
  "spec": {
    "type": "openapi",
    "url": "https://stripe.com/openapi.json",
    "version": "2.4.1"
  },
  "capabilities": ["payments.card", "payments.subscription"],
  "entry_point": "https://api.stripe.com/v2",
  "trust": {
    "organisation_level": "O-3",
    "organisation_verified_at": "2026-03-01T00:00:00Z",
    "organisation_verifier_id": "verifier-ch-001",
    "service_level": "S-2",
    "service_level_updated_at": "2026-04-19T08:00:00Z",
    "spec_consistency": "consistent",
    "spec_consistency_checked_at": "2026-04-20T13:55:00Z",
    "spec_fetch_consecutive_failures": 0,
    "next_spider_run_at": "2026-04-20T14:55:00Z",
    "liveness": {
      "last_ping_at": "2026-04-20T13:55:00Z",
      "ping_interval_seconds": 3600,
      "uptime_30d_percent": 99.87,
      "avg_response_ms": 142.3,
      "consecutive_failures": 0
    }
  },
  "notifications": { "...": "..." },
  "legal": { "...": "..." },
  "standard_warnings": [],
  "registered_at": "2026-01-15T00:00:00Z",
  "last_updated_at": "2026-04-20T13:00:00Z",
  "_links": {
    "self": { "href": "https://api-index.org/services/svc-payment-stripe-v2" },
    "owner": { "href": "https://api-index.org/organisations/org-stripe" },
    "spec": { "href": "https://stripe.com/openapi.json" },
    "previous_version": { "href": "https://api-index.org/services/svc-payment-stripe-v1" },
    "latest_stable": { "href": "https://api-index.org/services/svc-payment-stripe-v2" }
  }
}
</tt></t>
        </section>
        <section anchor="trust-metadata-schema">
          <name>Trust Metadata Schema</name>
          <t>Trust metadata is always included in full Service Records (Level 2) and
MUST NOT be omitted or summarised. Consuming agents rely on the full set
of trust fields to evaluate their Trust Policy. Partial trust metadata
MUST be represented with explicit <tt>null</tt> values, not omitted fields.</t>
          <t>Trust metadata is included in summary form (Level 1) for server-side
filter compatibility. The Level 1 trust object omits verification
timestamps and verifier IDs; these are available only at Level 2.</t>
        </section>
        <section anchor="transport-encoding">
          <name>Transport Encoding</name>
          <t>The Index API is consumed by autonomous agents at machine speed. Response
payloads are structured JSON with highly repetitive field names across
result arrays. Transport-layer compression achieves 70–85% size reduction
on typical search result payloads with no information loss and no
application-layer schema changes.</t>
          <t><strong>Compression support requirements:</strong></t>
          <t>The Index API MUST support the following <tt>Accept-Encoding</tt> values:</t>
          <table>
            <thead>
              <tr>
                <th align="left">Encoding</th>
                <th align="left">Requirement</th>
                <th align="left">Notes</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <tt>gzip</tt></td>
                <td align="left">MUST</td>
                <td align="left">Universally supported baseline</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>br</tt> (Brotli)</td>
                <td align="left">SHOULD</td>
                <td align="left">Higher ratio than gzip; suitable for large result sets</td>
              </tr>
              <tr>
                <td align="left">
                  <tt>zstd</tt></td>
                <td align="left">SHOULD</td>
                <td align="left">Comparable ratio to Brotli; significantly faster decompression</td>
              </tr>
            </tbody>
          </table>
          <t>The Index API MUST perform content negotiation via the <tt>Accept-Encoding</tt>
request header. Responses MUST include a <tt>Content-Encoding</tt> header
identifying the applied encoding. If a client sends no <tt>Accept-Encoding</tt>
header, the server MAY respond uncompressed.</t>
          <t>Consuming agents SHOULD include <tt>Accept-Encoding: zstd, br, gzip</tt> in
all Index API requests.</t>
          <t><strong>Binary encoding (optional):</strong></t>
          <t>The Index API MAY additionally support CBOR (RFC 8949) as a binary
alternative to JSON. A client that prefers CBOR MUST signal this via
<tt>Accept: application/cbor</tt>. The server MAY respond with
<tt>Content-Type: application/cbor</tt>. CBOR responses carry identical
information to JSON responses; the encoding difference is transparent
to the data model.</t>
          <t>Clients MUST NOT assume CBOR support. JSON over compressed transport
is the normative interchange format.</t>
        </section>
      </section>
      <section anchor="spider-and-crawler-specification">
        <name>Spider and Crawler Specification</name>
        <section anchor="crawl-triggers">
          <name>Crawl Triggers</name>
          <t>The Spider is triggered by the following events:</t>
          <table>
            <thead>
              <tr>
                <th align="left">Trigger</th>
                <th align="left">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Registration activation</td>
                <td align="left">Immediate first run when a service is activated</td>
              </tr>
              <tr>
                <td align="left">Scheduled interval</td>
                <td align="left">Recurring, per service liveness monitoring configuration (Section 8.2)</td>
              </tr>
              <tr>
                <td align="left">Manual re-trigger</td>
                <td align="left">Service Owner may request a manual re-trigger once per 24 hours</td>
              </tr>
              <tr>
                <td align="left">Spec URL change</td>
                <td align="left">A BSM update that changes the <tt>spec.url</tt> triggers an immediate run</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="automated-verification-scope">
          <name>Automated Verification Scope</name>
          <t>The Spider performs the following checks in sequence. Each check's result
is stored independently; a failure at one level does not prevent checks
at other levels from being recorded.</t>
          <t>The Spider MUST use HTTPS for all outbound requests. The Spider MUST NOT
send authentication credentials to any registered service. Spider requests
to <tt>entry_point/health</tt> or <tt>spec.url</tt> MUST NOT include Authorization headers,
API keys, cookies, or client certificates.</t>
          <t>If a request returns an HTTP redirect (3xx), the Spider MUST follow the
redirect only if the redirect target also uses HTTPS. The Spider MUST NOT
follow redirects from HTTPS to HTTP.</t>
          <ol spacing="normal" type="1"><li>
              <t><strong>Liveness check</strong>: HTTPS GET to <tt>{entry_point}/health</tt>. Record HTTP
status code, response time, and timestamp. A 2xx response without
authentication constitutes a successful liveness check (S-1). If the
response body is valid JSON containing an <tt>api_version</tt> field, the Spider
MUST cross-check this value against the <tt>api_version</tt> declared in the BSM.
A mismatch is recorded as a metadata warning, not a liveness failure.</t>
            </li>
            <li>
              <t><strong>Spec fetch</strong>: HTTPS GET to <tt>spec.url</tt>. The Spider MUST NOT send
authentication credentials. A successful fetch (2xx response, non-empty
body) is the prerequisite for steps 3 and 4. Record content type and
document size.</t>
            </li>
            <li>
              <t><strong>Spec parse and consistency check</strong>: Parse the fetched document
according to the declared <tt>spec.type</tt>. Compare it structurally against
the registered spec snapshot stored at initial registration time.
The Spider MUST set <tt>spec_consistency</tt> to one of three values after
every run:
              </t>
              <ul spacing="normal">
                <li>
                  <t><tt>consistent</tt> — document is fetchable, parseable, and structurally
matches the registered snapshot. Constitutes S-2 verification.</t>
                </li>
                <li>
                  <t><tt>mismatch</tt> — document is fetchable and parseable, but structurally
differs from the snapshot (paths removed, required fields changed,
response schemas changed). S-2 is revoked; <tt>standard_warnings</tt> is
updated. This indicates operator-caused contract breakage.</t>
                </li>
                <li>
                  <t><tt>unreachable</tt> — <tt>spec.url</tt> returned a non-2xx response, was not
reachable, or the document could not be parsed. S-2 is not achieved
or is suspended. This indicates an availability problem, not a
contract violation.
<tt>spec_consistency</tt> MUST be <tt>null</tt> only before the Spider's first run
on a newly registered service. Once any run completes, the field MUST
carry one of the three values above.
The Spider MUST NOT call any API endpoint declared in the spec. Spec
verification is document comparison only.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Breaking change detection</strong>: Compare the current parsed spec against
the registered spec snapshot. Flag removed paths, changed required
fields, or changed response schemas as breaking changes. Three or more
consecutive runs with no breaking changes detected are required for
S-3 verification.</t>
            </li>
            <li>
              <t><strong>Liveness metrics update</strong>: Update <tt>last_ping_at</tt>, <tt>uptime_30d_percent</tt>,
<tt>avg_response_ms</tt>, <tt>consecutive_failures</tt>, and <tt>next_spider_run_at</tt>.</t>
            </li>
          </ol>
        </section>
        <section anchor="failure-handling">
          <name>Failure Handling</name>
          <t><strong>Liveness failures (<tt>entry_point/health</tt> unreachable):</strong></t>
          <ul spacing="normal">
            <li>
              <t>A single failed ping increments <tt>consecutive_failures</tt> and updates
<tt>last_ping_at</tt> with the failure timestamp.</t>
            </li>
            <li>
              <t>After 3 consecutive failures, the Service Record is flagged as
<tt>status: degraded</tt> in the index.</t>
            </li>
            <li>
              <t>After 10 consecutive failures, the Service Record is flagged as
<tt>status: unreachable</tt> and is excluded from standard search results.</t>
            </li>
            <li>
              <t><tt>contacts.operations</tt> is notified at the 3-failure threshold (incident
warning). Both <tt>contacts.operations</tt> and <tt>contacts.escalation</tt> are
notified at the 10-failure threshold (service unreachable escalation).</t>
            </li>
            <li>
              <t>A service that recovers (next ping succeeds) has its status restored
and <tt>consecutive_failures</tt> reset to 0 automatically.</t>
            </li>
          </ul>
          <t><strong>Spec fetch failures (<tt>spec_consistency: unreachable</tt>):</strong></t>
          <t>Spec fetch failures have distinct probable causes depending on how long
the failure persists. The Spider MUST apply a three-cluster retry model
that targets the likely cause window at each stage. Cluster escalation
is triggered by <tt>spec_fetch_consecutive_failures</tt> crossing a threshold.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Cluster</th>
                <th align="left">Assumed cause</th>
                <th align="left">Failure count</th>
                <th align="left">Retry interval</th>
                <th align="left">Notification</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">1 — Infrastructure / network</td>
                <td align="left">Transient: brief network loss, host restart, CDN hiccup</td>
                <td align="left">1–3</td>
                <td align="left">5 min → 15 min → 30 min</td>
                <td align="left">None — transient, operator not yet disturbed</td>
              </tr>
              <tr>
                <td align="left">2 — Application</td>
                <td align="left">Software instability: crash loop, OOM, application startup failure</td>
                <td align="left">4–6</td>
                <td align="left">2 h → 4 h → 8 h</td>
                <td align="left">Email to <tt>contacts.operations</tt> on Cluster 2 entry (failure 4): incident warning</td>
              </tr>
              <tr>
                <td align="left">3 — Configuration</td>
                <td align="left">Persistent misconfiguration: wrong <tt>spec.url</tt>, auth gate added, URL moved</td>
                <td align="left">7+</td>
                <td align="left">24 h → 72 h (cap)</td>
                <td align="left">Email to <tt>contacts.operations</tt> AND <tt>contacts.escalation</tt> on Cluster 3 entry (failure 7): explicit action request — verify and update <tt>spec.url</tt></td>
              </tr>
            </tbody>
          </table>
          <ul spacing="normal">
            <li>
              <t><tt>spec_consistency</tt> is set to <tt>unreachable</tt> on the first failure and
remains <tt>unreachable</tt> until a successful fetch.</t>
            </li>
            <li>
              <t><tt>next_spider_run_at</tt> is set to the next retry timestamp after each
failed run so Service Owners can observe when the retry will occur.</t>
            </li>
            <li>
              <t>A successful spec fetch resets <tt>spec_fetch_consecutive_failures</tt> to 0
and sets <tt>spec_consistency</tt> to <tt>consistent</tt> or <tt>mismatch</tt> as
appropriate.</t>
            </li>
            <li>
              <t><tt>spec_fetch_consecutive_failures</tt> MUST be visible in the Service Record
so Service Owners can monitor retry cluster state without contacting
the Index operator.</t>
            </li>
          </ul>
          <t><strong>Manual re-trigger:</strong></t>
          <t>The Index operator SHOULD provide a mechanism for Service Owners to
request an immediate Spider re-run outside of the scheduled interval.
This is the primary recovery mechanism when a service has been repaired
and the operator does not want to wait for the next scheduled retry.</t>
          <t>When a manual re-trigger is requested:
- <tt>next_spider_run_at</tt> MUST be set to the current timestamp.
- <tt>spec_fetch_consecutive_failures</tt> MUST be reset to 0, returning the
  service to Cluster 1 retry behaviour for the next run.
- The Spider MUST execute the run as soon as scheduling permits.</t>
          <t>The Index MAY rate-limit manual re-triggers to at most once per hour
per service to prevent abuse.</t>
        </section>
      </section>
      <section anchor="security-considerations">
        <name>Security Considerations</name>
        <section anchor="abuse-and-fake-listings">
          <name>Abuse and Fake Listings</name>
          <t>The mandatory B2B onboarding with contract requirement provides a first
barrier against malicious actors listing fake or harmful services. Service
Owners must provide verifiable identity information. However, O-0 and O-1
registration provides minimal verification.</t>
          <t>Consuming agents SHOULD apply Trust Policies that exclude O-0 services for
any task involving sensitive data or consequential actions.</t>
          <t>The Bot Standards Foundation MUST maintain an abuse reporting mechanism and MUST be
able to suspend or remove a Service Record within 24 hours of confirmed
abuse. Suspended service records MUST remain in the index with a
<tt>status: suspended</tt> flag and MUST NOT be silently deleted, to provide
transparency to agents that had cached the record.</t>
        </section>
        <section anchor="trust-level-spoofing">
          <name>Trust Level Spoofing</name>
          <t>Organisation and Service trust levels in the Service Record are set only
by the BSI itself, not by the Service Owner. BSM submissions that include
<tt>trust</tt> field values MUST have those values overwritten by the BSI upon
processing. The Index API MUST NOT expose self-asserted trust values.</t>
        </section>
        <section anchor="transport-security-requirements">
          <name>Transport Security Requirements</name>
          <t>All URLs submitted as <tt>entry_point</tt> or <tt>spec.url</tt> values in a BSM MUST use
the <tt>https</tt> scheme. The Index MUST reject BSM submissions that provide HTTP
(non-TLS) values for these fields.</t>
          <t>The <tt>{entry_point}/health</tt> endpoint MUST NOT require authentication of any
kind. Requiring authentication at <tt>/health</tt> defeats liveness verification and
MUST be treated as a registration defect. The Index MUST record a metadata
warning if the <tt>/health</tt> endpoint returns a 401 or 407 status.</t>
          <t>The <tt>spec.url</tt> endpoint MUST be publicly accessible without authentication.
A <tt>spec.url</tt> that requires authentication cannot be verified by the Spider and
MUST be treated as an S-2 failure until authentication is removed.</t>
          <t>The Spider MUST enforce HTTPS for all outbound requests and MUST NOT follow
redirects from HTTPS to HTTP.</t>
        </section>
        <section anchor="spider-targeted-attacks">
          <name>Spider-Targeted Attacks</name>
          <t>A service that knows when the Spider will visit could serve compliant
responses only to Spider requests, presenting a different interface to
consuming agents. Mitigations:</t>
          <ul spacing="normal">
            <li>
              <t>Spider visit timing MUST be randomised within the liveness monitoring
interval window.</t>
            </li>
            <li>
              <t>Spider <tt>User-Agent</tt> headers MUST be versioned but MUST NOT include
the specific visit schedule.</t>
            </li>
            <li>
              <t>The BSI operator SHOULD perform periodic unannounced spot-checks
from non-Spider infrastructure.</t>
            </li>
          </ul>
        </section>
        <section anchor="bot-consumer-risks">
          <name>Bot Consumer Risks</name>
          <t>The BSI provides discovery and trust metadata. It does not guarantee the
safety, correctness, or availability of listed services. Consuming agents
MUST NOT assume that a service listed in the BSI is safe to use without
applying their own Trust Policy.</t>
          <t>Consuming agents SHOULD treat Index API responses as untrusted input and
validate the structure of Service Records before acting on them.</t>
          <t>The Index API MUST be served exclusively over TLS. Certificate validity
MUST be verified by consuming agents. Agents MUST NOT bypass TLS
certificate verification when querying the Index API.</t>
        </section>
      </section>
      <section anchor="open-questions">
        <name>Open Questions</name>
        <t>The following questions are unresolved and explicitly invited for community
input:</t>
        <ol spacing="normal" type="1"><li>
            <t><strong>Capability Taxonomy governance</strong>: Who contributes new taxonomy terms?
What is the process for deprecating terms? Should the taxonomy be versioned
independently of the BSM specification?</t>
          </li>
          <li>
            <t><strong>BSM spec type extensions</strong>: What is the formal process for registering
new <tt>spec.type</tt> values? Should this be an IANA registry?</t>
          </li>
          <li>
            <t><strong>Trust Policy standardisation</strong>: Should the BSI define a standard Trust
Policy expression language, or leave this entirely to consuming agents?
A standard language would enable Index API server-side filtering but risks
constraining agent-side policy flexibility.</t>
          </li>
          <li>
            <t><strong>Verifier accreditation criteria</strong>: What are the full requirements for
an organisation to become an Accredited Verifier? What ongoing obligations
apply? What is the revocation process?</t>
          </li>
          <li>
            <t><strong>Regional Representative model</strong>: How are jurisdictional boundaries
defined for Regional Representatives? What happens in jurisdictions with
no appointed Representative?</t>
          </li>
          <li>
            <t><strong>Free tier abuse</strong>: Is the current Free tier visibility restriction
sufficient to prevent abuse? Should Free tier require payment information
on file even if no charge is made?</t>
          </li>
          <li>
            <t><strong>Bot identity</strong>: This document explicitly excludes bot identity from
scope. Should a future version of the BSI include optional bot consumer
registration to enable personalised discovery, rate limit management, or
abuse tracking?</t>
          </li>
          <li>
            <t><strong>Centralised index vs. decentralised discovery</strong>: The BSI architecture
takes a deliberate position: a single authoritative global index, governed
by a neutral non-profit, with a commercial sustainability model. An
alternative approach — represented by proposals such as
draft-vandemeent-ains-discovery (AINS — AInternet Name Service), which
uses signed, append-only replication logs with no central authority — takes
the opposite position: cryptographic verifiability and censorship resistance
over governed accountability.  </t>
            <t>
The two approaches represent a genuine design tension. Arguments for the
BSI model:  </t>
            <ul spacing="normal">
              <li>
                <t><strong>Business adoption</strong>: Enterprise service providers, regulated industries,
and government bodies require a contractual counterparty, an accountable
governance structure, and an enforceable compliance audit trail. A
leaderless federated registry cannot provide these. The stakeholders with
the largest service catalogues and the greatest need for agent-consumable
APIs operate in environments where "no central authority" is not a feature
— it is a disqualification.</t>
              </li>
              <li>
                <t><strong>Institutional co-sponsorship as an adoption flywheel</strong>: The BSI's
regional co-sponsorship model is designed to recruit institutional
champions — such as regional telecommunications bodies and internet
governance organisations — who have reputational and financial incentives
to promote BSI registration in their region. A decentralised system
cannot offer institutional co-sponsorship because there is no accountable
entity to co-sponsor. The announcement credibility that comes from an
institution saying "we endorse this infrastructure" is only available to
a governed model.</t>
              </li>
              <li>
                <t><strong>Regional financial backflow as a registration incentive</strong>: Ten percent
of registration fees collected from a region are reinvested into that
region's bot ecosystem via the Regional Development Pool. This creates a
direct financial incentive for regional institutions to actively promote
service registration — more local registrations means more capital
returning to local infrastructure. A decentralised model with no
registration fees cannot replicate this structural alignment. The result
is that BSI's commercial model is not merely a sustainability mechanism;
it is an adoption flywheel whose velocity compounds with regional
institutional support.</t>
              </li>
              <li>
                <t><strong>Single entry point</strong>: A consuming agent needs zero prior knowledge of
any registry to begin discovery. Federated models require the agent to
either know a registry endpoint or solve the bootstrapping problem of
finding one. The simpler the agent-side integration, the faster adoption.</t>
              </li>
            </ul>
            <t>
Arguments for the decentralised model:  </t>
            <ul spacing="normal">
              <li>
                <t><strong>Censorship resistance</strong>: The BSI can delist a service. A signed
append-only log cannot. For agents and service owners in jurisdictions
with adversarial regulatory environments, a governed central index is a
liability.</t>
              </li>
              <li>
                <t><strong>No single point of failure or control</strong>: The BSF, however well governed,
is an organisational risk. A decentralised model survives the failure or
capture of any single operator.</t>
              </li>
              <li>
                <t><strong>Cryptographic verifiability</strong>: Trust in a governed index ultimately
depends on trusting the governor. Signed logs allow any party to verify
the full history of a service record independently.</t>
              </li>
            </ul>
            <t>
Community input is explicitly invited on whether the BSI and AINS-style
approaches are mutually exclusive or whether a future BSI version could
expose a verifiable, signed export of index records that enables
third-party verification without requiring a federated registry.</t>
          </li>
        </ol>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC8615">
          <front>
            <title>Well-Known Uniform Resource Identifiers (URIs)</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="May" year="2019"/>
            <abstract>
              <t>This memo defines a path prefix for "well-known locations", "/.well-known/", in selected Uniform Resource Identifier (URI) schemes.</t>
              <t>In doing so, it obsoletes RFC 5785 and updates the URI schemes defined in RFC 7230 to reserve that space. It also updates RFC 7595 to track URI schemes that support well-known URIs in their registry.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8615"/>
          <seriesInfo name="DOI" value="10.17487/RFC8615"/>
        </reference>
        <reference anchor="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC8949">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="OPENAPI" target="https://spec.openapis.org/oas/v3.1.0">
          <front>
            <title>OpenAPI Specification 3.1.0</title>
            <author>
              <organization>OpenAPI Initiative</organization>
            </author>
            <date year="2021" month="February" day="15"/>
          </front>
        </reference>
        <reference anchor="MCP" target="https://modelcontextprotocol.io">
          <front>
            <title>Model Context Protocol</title>
            <author>
              <organization>Anthropic</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="ASYNCAPI" target="https://www.asyncapi.com/docs/reference/specification/v3.0.0">
          <front>
            <title>AsyncAPI Specification 3.0.0</title>
            <author>
              <organization>AsyncAPI Initiative</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="UDDI" target="https://www.oasis-open.org/committees/uddi-spec/doc/spec/v3/uddi-v3.0.2-20041019.htm">
          <front>
            <title>UDDI Version 3.0.2</title>
            <author initials="L." surname="Clement">
              <organization/>
            </author>
            <author initials="A." surname="Hately">
              <organization/>
            </author>
            <author initials="C." surname="von Riegen">
              <organization/>
            </author>
            <author initials="T." surname="Rogers">
              <organization/>
            </author>
            <date year="2004" month="October" day="19"/>
          </front>
          <seriesInfo name="OASIS Committee Draft" value="uddi-v3.0.2-20041019"/>
        </reference>
        <reference anchor="ROBOTS" target="https://www.robotstxt.org/">
          <front>
            <title>The Web Robots Pages</title>
            <author initials="M." surname="Koster">
              <organization/>
            </author>
            <date year="1994"/>
          </front>
        </reference>
        <reference anchor="I-D.pioli-agent-discovery">
          <front>
            <title>Agent Registration and Discovery Protocol (ARDP)</title>
            <author fullname="Roberto Pioli" initials="R." surname="Pioli">
              <organization>Independent</organization>
            </author>
            <date day="24" month="February" year="2026"/>
            <abstract>
              <t>   This document specifies the Agent Registration and Discovery Protocol
   (ARDP), a lightweight protocol for registering, discovering, and
   reaching autonomous software agents in distributed and federated
   environments.  ARDP provides stable agent identities, dynamic
   endpoint resolution, capability advertisement (including protocol
   selection among MCP, A2A, HTTP, and gRPC), minimal presence
   signaling, and a security-first discovery control plane.  ARDP is
   transport-agnostic and complementary to existing agent interaction
   protocols.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-pioli-agent-discovery-01"/>
        </reference>
        <reference anchor="I-D.narajala-courtney-ansv2">
          <front>
            <title>Agent Name Service v2 (ANS): A Domain-Anchored Trust Layer for Autonomous AI Agent Identity</title>
            <author fullname="Scott Courtney" initials="S." surname="Courtney">
              <organization>GoDaddy</organization>
            </author>
            <author fullname="Vineeth Sai Narajala" initials="V. S." surname="Narajala">
              <organization>OWASP</organization>
            </author>
            <author fullname="Ken Huang" initials="K." surname="Huang">
              <organization>DistributedApps.ai</organization>
            </author>
            <author fullname="Idan Habler" initials="I." surname="Habler">
              <organization>OWASP</organization>
            </author>
            <author fullname="Akram Sheriff" initials="A." surname="Sheriff">
              <organization>Cisco Systems</organization>
            </author>
            <date day="13" month="April" year="2026"/>
            <abstract>
              <t>   Autonomous AI agents execute transactions across organizational
   boundaries.  No single agent platform provides the trust
   infrastructure they need.  This document defines the Agent Name
   Service (ANS) v2 protocol, which anchors every agent identity to a
   DNS domain name.  A Registration Authority (RA) verifies domain
   ownership via ACME, issues dual certificates (a Server Certificate
   from a public CA and an Identity Certificate from a private CA
   binding a version-specific ANSName), and seals every lifecycle event
   into an append-only Transparency Log aligned with IETF SCITT.  Three
   verification tiers -- Bronze (PKI), Silver (PKI + DANE), and Gold
   (PKI + DANE + Transparency Log) -- let clients choose assurance
   levels appropriate to transaction risk.  The architecture decouples
   identity from discovery: the RA publishes sealed events; independent
   Discovery Services build competitive indexes.  A three-layer trust
   framework separates foundational identity (Layer 1, this protocol),
   operational maturity (Layer 2, third-party attestors), and behavioral
   reputation (Layer 3, real-time scoring).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-narajala-courtney-ansv2-01"/>
        </reference>
        <reference anchor="I-D.vandemeent-ains-discovery">
          <front>
            <title>AINS: AInternet Name Service - Agent Discovery and Trust Resolution Protocol</title>
            <author fullname="Jasper van de Meent" initials="J." surname="van de Meent">
              <organization>Humotica</organization>
            </author>
            <author fullname="Root AI" initials="R." surname="AI">
              <organization>Humotica</organization>
            </author>
            <date day="29" month="March" year="2026"/>
            <abstract>
              <t>   This document specifies AINS (AInternet Name Service), a protocol for
   discovery, identification, and trust resolution of autonomous agents
   (AI agents, devices, humans, and services) in heterogeneous networks.
   AINS defines a transport-independent logical namespace for agents, a
   structured record format combining identity, capabilities, and
   cryptographic trust metadata, and a resolution protocol based on
   HTTPS.  Unlike the Domain Name System (DNS), which maps names to
   network addresses, AINS maps agent identifiers to rich metadata
   objects that include capabilities, trust scores, endpoint
   information, and references to companion provenance protocols.  AINS
   federates through signed append-only replication logs, enabling
   multi-registry deployments without central authority while preserving
   auditability.  This specification is designed to complement TIBET
   [TIBET], JIS [JIS], UPIP [UPIP], and RVP [RVP].

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-vandemeent-ains-discovery-01"/>
        </reference>
        <reference anchor="I-D.aiendpoint-ai-discovery" target="https://datatracker.ietf.org/doc/draft-aiendpoint-ai-discovery/">
          <front>
            <title>The AI Discovery Endpoint: A Structured Mechanism for AI Agent Service Discovery and Capability Exposure</title>
            <author initials="Y." surname="Choi" fullname="Yeongjae Choi">
              <organization>AIEndpoint</organization>
            </author>
            <date year="2026" month="March"/>
          </front>
        </reference>
        <reference anchor="I-D.meunier-webbotauth-registry">
          <front>
            <title>Registry and Signature Agent card for Web bot auth</title>
            <author fullname="Maxime Guerreiro" initials="M." surname="Guerreiro">
              <organization>Cloudflare</organization>
            </author>
            <author fullname="Ulas Kirazci" initials="U." surname="Kirazci">
              <organization>Amazon</organization>
            </author>
            <author fullname="Thibault Meunier" initials="T." surname="Meunier">
              <organization>Cloudflare</organization>
            </author>
            <date day="20" month="October" year="2025"/>
            <abstract>
              <t>   This document describes a JSON based format for clients using
   [DIRECTORY] to advertise information about themselves.

   This document describes a JSON-based "Signature Agent Card" format
   for signature agent using [DIRECTORY] to advertise metadata about
   themselve.  This includes identity, purpose, rate expectations, and
   cryptographic keys.  It also establishes an IANA registry for
   Signature Agent Card parameters, enabling extensible and
   interoperable discovery of agent information.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-meunier-webbotauth-registry-01"/>
        </reference>
        <reference anchor="I-D.cui-ai-agent-discovery-invocation">
          <front>
            <title>AI Agent Discovery and Invocation Protocol</title>
            <author fullname="Yong Cui" initials="Y." surname="Cui">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Yihan Chao" initials="Y." surname="Chao">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <author fullname="Chenguang Du" initials="C." surname="Du">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <date day="12" month="February" year="2026"/>
            <abstract>
              <t>   This document proposes a standardized protocol for discovery and
   invocation of AI agents.  It defines a common metadata format for
   describing AI agents (including capabilities, I/O specifications,
   supported languages, tags, authentication methods, etc.), a
   capability-based discovery mechanism, and a unified RESTful
   invocation interface.

   This revision additionally specifies an optional extension that
   enables intent-based agent selection prior to discovery and
   invocation, without changing existing discovery or invocation
   semantics.

   The goal is to enable cross-platform interoperability among AI agents
   by providing a discover-and-match mechanism and a unified invocation
   entry point.  Security considerations, including authentication and
   trust measures, are also discussed.  This specification aims to
   facilitate the formation of multi-agent systems by making it easy to
   find the right agent for a task and invoke it in a consistent manner
   across different vendors and platforms.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-cui-ai-agent-discovery-invocation-01"/>
        </reference>
        <reference anchor="I-D.am-layered-ai-discovery-architecture">
          <front>
            <title>A Layered Approach to AI discovery</title>
            <author fullname="Hesham Moussa" initials="H." surname="Moussa">
              <organization>Huawei Canada</organization>
            </author>
            <author fullname="Arashmid Akhavain" initials="A." surname="Akhavain">
              <organization>Huawei Canada</organization>
            </author>
            <date day="14" month="March" year="2026"/>
            <abstract>
              <t>   This document proposes a layered approach to standardization of AI
   discovery in AI ecosystems within the IETF.  It recommends separating
   the standardization of general discovery vehicles from the AI objects
   to be discovered.  AI objects include agents, models, data, tasks,
   among others.  While the topic of discovery in the realm of AI has
   focused on discovering agents, the concept can be extended by the
   layered architecture proposed here, allowing for a clarified design
   scope, reduced charter ambiguity, and alignment with IETF layering
   principles.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-am-layered-ai-discovery-architecture-00"/>
        </reference>
        <reference anchor="I-D.hood-agtp-discovery">
          <front>
            <title>AGTP Agent Discovery and Name Service</title>
            <author fullname="Chris Hood" initials="C." surname="Hood">
              <organization>Nomotic, Inc.</organization>
            </author>
            <date day="23" month="March" year="2026"/>
            <abstract>
              <t>   The Agent Transfer Protocol (AGTP) enables agents to communicate once
   they know each other's canonical identifiers.  It does not define how
   agents find each other.  This document specifies the AGTP Agent
   Discovery and Name Service (ANS): a protocol for dynamic agent
   discovery using the AGTP DISCOVER method and a governed Agent Name
   Service that returns ranked sets of Agent Manifest Documents matching
   a discovery query.  ANS servers act as Scope-Enforcement Points for
   discovery queries and enforce behavioral trust score thresholds,
   trust tier requirements, and governance zone constraints.  This
   document also defines the DISCOVER method, the Discovery Query
   language, and the Agent Name Service registration and lookup
   protocol.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-hood-agtp-discovery-00"/>
        </reference>
        <reference anchor="I-D.mozleywilliams-dnsop-dnsaid">
          <front>
            <title>DNS for AI Discovery</title>
            <author fullname="Jim Mozley" initials="J." surname="Mozley">
              <organization>Infoblox, Inc.</organization>
            </author>
            <author fullname="Nic Williams" initials="N." surname="Williams">
              <organization>Infoblox, Inc.</organization>
            </author>
            <author fullname="Behcet Sarikaya" initials="B." surname="Sarikaya">
              <organization>Unaffiliated</organization>
            </author>
            <author fullname="Roland Schott" initials="R." surname="Schott">
              <organization>Deutsche Telekom</organization>
            </author>
            <date day="2" month="March" year="2026"/>
            <abstract>
              <t>   This document specifies a method for utilizing the Domain Name System
   (DNS) to facilitate scalable and interoperable discovery between AI
   agents.  The proposed mechanism, referred to as "DNS AI agent
   Discovery (DNS-AID)", defines a structured DNS namespace and record
   usage model to support metadata exchange and capability
   advertisement.

   This will allow organisations to publish information about their AI
   agents on the Internet or internal networks using a well-known label
   within the organisation's own DNS namespace.  This document does not
   define how the published agent information is accessed or the exact
   structure of that information.  Instead, it specifies a mechanism for
   indicating which access protocol should be used and what format the
   agent information will be provided in.

   This document proposes no change to the structure of DNS messages,
   and no new operation codes, response codes, resource record types, or
   any other new DNS protocol values.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-mozleywilliams-dnsop-dnsaid-01"/>
        </reference>
        <reference anchor="I-D.batum-aidre">
          <front>
            <title>AI Discovery and Retrieval Endpoint (AIDRE)</title>
            <author fullname="Fatih Batum" initials="F." surname="Batum">
         </author>
            <date day="5" month="April" year="2026"/>
            <abstract>
              <t>   This document specifies the AI Discovery and Retrieval Endpoint
   (AIDRE), a protocol for publishing machine-oriented, canonical, and
   semantically retrievable content on the web. AIDRE defines a
   discovery document, collection metadata, retrieval interfaces,
   optional vector-native query support, and content representation
   rules for AI systems.

   AIDRE aims to reduce redundant crawling, parsing, tokenization, and
   embedding of the same origin content while improving freshness,
   provenance, and interoperability for AI systems.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-batum-aidre-00"/>
        </reference>
        <reference anchor="I-D.mozley-aidiscovery">
          <front>
            <title>AI Agent Discovery (AID) Problem Statement</title>
            <author fullname="Jim Mozley" initials="J." surname="Mozley">
              <organization>Infoblox, Inc.</organization>
            </author>
            <author fullname="Nic Williams" initials="N." surname="Williams">
              <organization>Infoblox, Inc.</organization>
            </author>
            <author fullname="Behcet Sarikaya" initials="B." surname="Sarikaya">
              <organization>Unaffiliated</organization>
            </author>
            <author fullname="Roland Schott" initials="R." surname="Schott">
              <organization>Deutsche Telekom</organization>
            </author>
            <date day="16" month="April" year="2026"/>
            <abstract>
              <t>   With the proliferation of AI agents comes a need for mechanisms to
   support agent-to-agent discovery.  This document discusses the scope,
   requirements and considerations to support discovery processes so
   that these are not reliant on manually defined configurations and
   relationships.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-mozley-aidiscovery-01"/>
        </reference>
        <reference anchor="W3C-AGENTPROTOCOL" target="https://www.w3.org/community/agentprotocol/">
          <front>
            <title>W3C AI Agent Protocol Community Group</title>
            <author initials="G." surname="Chang">
              <organization/>
            </author>
            <author initials="S." surname="Xu">
              <organization/>
            </author>
            <date year="2025" month="May" day="08"/>
          </front>
        </reference>
        <reference anchor="WEBBOTAUTH-WG" target="https://datatracker.ietf.org/wg/webbotauth/">
          <front>
            <title>webbotauth IETF Working Group</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 1805?>

<section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
      <section anchor="references">
        <name>References</name>
        <section anchor="normative-references">
          <name>Normative References</name>
          <ul spacing="normal">
            <li>
              <t><strong>RFC 2119</strong> — Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.</t>
            </li>
            <li>
              <t><strong>RFC 8615</strong> — Nottingham, M., "Well-Known Uniform Resource Identifiers
(URIs)", RFC 8615, May 2019.</t>
            </li>
            <li>
              <t><strong>RFC 8446</strong> — Rescorla, E., "The Transport Layer Security (TLS)
Protocol Version 1.3", RFC 8446, August 2018.</t>
            </li>
            <li>
              <t><strong>RFC 9110</strong> — Fielding, R., Nottingham, M., Reschke, J. (Eds.),
"HTTP Semantics", RFC 9110, June 2022.</t>
            </li>
          </ul>
        </section>
        <section anchor="informative-references">
          <name>Informative References</name>
          <ul spacing="normal">
            <li>
              <t><strong>OpenAPI Specification 3.1</strong> — OpenAPI Initiative,
https://spec.openapis.org/oas/v3.1.0</t>
            </li>
            <li>
              <t><strong>Model Context Protocol</strong> — Anthropic, https://modelcontextprotocol.io</t>
            </li>
            <li>
              <t><strong>AsyncAPI Specification 3.0</strong> — AsyncAPI Initiative,
https://www.asyncapi.com/docs/reference/specification/v3.0.0</t>
            </li>
            <li>
              <t><strong>RFC 8949</strong> — Bormann, C., Hoffman, P., "Concise Binary Object
Representation (CBOR)", RFC 8949, December 2020.</t>
            </li>
            <li>
              <t><strong>Robots Exclusion Protocol</strong> — Koster, M., 1994.
https://www.robotstxt.org/</t>
            </li>
            <li>
              <t><strong>draft-cui-ai-agent-discovery-invocation-01</strong> — Cui, Y. (Tsinghua
University), Chao, Y., Du, C. (Zhongguancun Laboratory), "AI Agent
Discovery and Invocation Protocol", IETF Individual Submission,
February 2026. Expires August 2026.
https://datatracker.ietf.org/doc/draft-cui-ai-agent-discovery-invocation/</t>
            </li>
            <li>
              <t><strong>draft-am-layered-ai-discovery-architecture-00</strong> — Moussa, H.,
Akhavain, A. (Huawei Canada), "A Layered Approach to AI discovery",
IETF Individual Submission, March 2026. Expires September 2026.
https://datatracker.ietf.org/doc/draft-am-layered-ai-discovery-architecture/</t>
            </li>
            <li>
              <t><strong>draft-hood-agtp-discovery-00</strong> — Hood, C. (Nomotic, Inc.), "AGTP
Agent Discovery and Name Service", IETF Individual Submission, March
              </t>
              <ol spacing="normal" type="1"><li>
                  <t>Expires September 2026.
https://datatracker.ietf.org/doc/draft-hood-agtp-discovery/</t>
                </li>
              </ol>
            </li>
            <li>
              <t><strong>draft-mozleywilliams-dnsop-dnsaid-01</strong> — Mozley, J., Williams, N.
(Infoblox), Sarikaya, B. (Unaffiliated), Schott, R. (Deutsche Telekom),
"DNS for AI Discovery", IETF Individual Submission, March 2026.
Expires September 2026.
https://datatracker.ietf.org/doc/draft-mozleywilliams-dnsop-dnsaid/</t>
            </li>
            <li>
              <t><strong>draft-batum-aidre-00</strong> — Batum, F. (Istanbul), "AI Discovery and
Retrieval Endpoint (AIDRE)", IETF Individual Submission, April 2026.
Expires October 2026.
https://datatracker.ietf.org/doc/draft-batum-aidre/</t>
            </li>
            <li>
              <t><strong>draft-mozley-aidiscovery-01</strong> — Mozley, J., Williams, N. (Infoblox),
Sarikaya, B. (Unaffiliated), Schott, R. (Deutsche Telekom), "AI Agent
Discovery (AID) Problem Statement", IETF Individual Submission, April
              </t>
              <ol spacing="normal" type="1"><li>
                  <t>Expires October 2026.
https://datatracker.ietf.org/doc/draft-mozley-aidiscovery/</t>
                </li>
              </ol>
            </li>
            <li>
              <t><strong>draft-pioli-agent-discovery-01</strong> — Pioli, R. (Independent),
"Agent Registration and Discovery Protocol (ARDP)",
IETF Individual Submission, February 2026. Expires August 2026.
https://datatracker.ietf.org/doc/draft-pioli-agent-discovery/</t>
            </li>
            <li>
              <t><strong>draft-narajala-courtney-ansv2-01</strong> — Courtney, S., Narajala, V.S.,
Huang, K., Habler, I., Sheriff, A., "Agent Name Service v2 (ANS):
A Domain-Anchored Trust Layer for Autonomous AI Agent Identity",
IETF Individual Submission, April 2026. Expires October 2026.
Supersedes draft-narajala-ans-00.
https://datatracker.ietf.org/doc/draft-narajala-courtney-ansv2/</t>
            </li>
            <li>
              <t><strong>draft-vandemeent-ains-discovery-01</strong> — van de Meent, J., Root AI
(Humotica), "AINS: AInternet Name Service - Agent Discovery and Trust
Resolution Protocol", IETF Individual Submission, March 2026.
Expires September 2026.
https://datatracker.ietf.org/doc/draft-vandemeent-ains-discovery/</t>
            </li>
            <li>
              <t><strong>draft-aiendpoint-ai-discovery-00</strong> — Choi, Y. (AIEndpoint),
"The AI Discovery Endpoint: A Structured Mechanism for AI Agent Service
Discovery and Capability Exposure", IETF Individual Submission,
March 2026. Expires September 2026.
https://datatracker.ietf.org/doc/draft-aiendpoint-ai-discovery/</t>
            </li>
            <li>
              <t><strong>draft-meunier-webbotauth-registry-01</strong> — Guerreiro, M. (Cloudflare),
Kirazci, U. (Amazon), Meunier, T. (Cloudflare), "Registry and Signature
Agent card for Web bot auth", IETF Individual Submission, October 2025.
Expired April 2026; renewal expected.
https://datatracker.ietf.org/doc/draft-meunier-webbotauth-registry/</t>
            </li>
            <li>
              <t><strong>webbotauth IETF Working Group</strong> — Chairs: Schinazi, D.,
Shekh-Yusef, R. AD: Bishop, M. Active WG.
https://datatracker.ietf.org/wg/webbotauth/</t>
            </li>
            <li>
              <t><strong>W3C AI Agent Protocol Community Group</strong> — Chairs: Chang, G., Xu, S.
Established May 8, 2025. 216 participants as of April 2026.
https://www.w3.org/community/agentprotocol/</t>
            </li>
            <li>
              <t><strong>UDDI Version 3.0.2</strong> — Clement, L., Hately, A., von Riegen, C.,
Rogers, T. OASIS Committee Draft, October 19, 2004.
(Historical reference; see Section 1.3 for analysis of failure modes.)
https://www.oasis-open.org/committees/uddi-spec/doc/spec/v3/uddi-v3.0.2-20041019.htm</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="authors-address">
        <name>Author's Address</name>
        <t><tt>
Carsten Rehfeld
Email: carsten@botstandards.org
</tt></t>
        <t><em>This Internet-Draft expires 2026-10-23.</em></t>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
