Skip to content
↑↓ to move · Enter to openEsc to close
Example verification flowHero

AI agent identity verification: why a claim is not a proof

Every AI agent that calls a business, places an order or negotiates on someone's behalf opens with the same sentence: "I'm acting for this person." Without a portable identity layer, the other side has no way to check it. The name, the voice and the confidence are all things any agent can produce.

AgenID gives an agent a permanent identifier and a signed record behind it, so the question "who are you?" gets an answer the other side can check for itself instead of taking on faith. The animation below plays the same moment twice: once without AgenID, once with it.

Ready
AI agent
Identity proof
Mike's assistant
Acting on behalf of a person
“I’m Mike’s agent.”
Relying party
The other side
A business, a service, or another agent
Who are you?
Example verification flow
Fresh challengenonce 7F3C·A1
Proof of control✓ VALID
Domain claimL2_DOMAIN_VERIFIED✓ VERIFIED
Organization claimL3_ORGANIZATION_VERIFIED✓ VERIFIED
StatusACTIVE
Checked separately
AuthorizationNOT ASSERTED

DECLARED, VERIFIED and AUTHORIZED are never inferred from one another. AUTHORIZED has no signed object in v1.1.1 — whoever is on the other side decides what this agent may do.

Awaiting proof
Nothing proceeds on an unproven claim

Don’t trust what an agent says. Verify what it can prove.

Trust the proof. Not the platform.
What AgenID proves here

Which agent this is, who declared it, and which specific claims an independent authority has verified — each bound to this manifest version. Nothing about safety, legitimacy or permission is implied.

Illustration, not deployment

These scenarios illustrate the protocol's verification model. The reference deployment at agenid.com issues nothing above L1_REGISTERED today: L2 and higher require a VerificationAssertion signed by a root authority key, and that key has not been created. L5 is reserved by the spec and is not issuable at all.

Challenge–response is a proposed interaction pattern. v1.1.1 defines the signed objects, not this exchange.

What changes when an agent presents an AgenID

Without an identity layer the conversation stops at the claim. The relying party can refuse, or it can take a risk it cannot measure. With AgenID the agent presents an identifier of the form agenid:<ULID>. The relying party resolves it, reads the operator's signed manifest, and re-verifies the Ed25519 signature over RFC 8785 canonical JSON itself. It does not need to trust AgenID's registry to do that, because the registry cannot forge an operator's signature.

The identifier stays the same across every platform the agent uses, which means history and reputation attach to the agent rather than to whichever service it happens to be calling through.

Declared, verified and authorized are three different things

AgenID keeps three states strictly separate. DECLARED is what the operator says about its own agent. VERIFIED means a specific claim, such as control of a domain, was checked against evidence by an authority and bound to one version of the manifest. AUTHORIZED is what the agent may do, and that decision belongs to whoever is on the other side. None of these is ever inferred from another.

That separation is the point. A verification level tells you exactly what was checked and nothing more, so a business can decide how much weight to give it rather than reading a green badge as a blanket endorsement.

What you can do today

Today the reference registry at agenid.com issues DECLARED and L1_REGISTERED. The higher levels shown in this illustration require an assertion signed by a root authority key that has not been created yet, so they describe how the protocol works rather than something you can obtain today.

You can register an agent in about a minute at /issue, where the signing key is generated in your browser and never sent to AgenID, and anyone can resolve it at /verify.

Frequently asked questions

What is AI agent identity verification?

It is the process of checking that an AI agent is the agent it claims to be and that a specific party stands behind it. AgenID does this with a permanent identifier, an operator-signed manifest and independently re-verifiable signatures, rather than with a name or a voice the agent asserts about itself.

Do I have to trust AgenID's registry?

No. The registry returns the signed manifest and the operator's public key, and you re-verify the signature yourself. The operator's key can also be fetched from the operator's own domain, so a verifier can compare two independent sources.

Does a verified identity mean the agent is allowed to act?

No. AgenID answers which agent is acting and who declared it. What that agent is allowed to do stays with the business on the other side and with the operator that runs the agent. Protocol v1.1.1 defines no signed authorization object.

Which verification levels can I get today?

Today the reference registry at agenid.com issues DECLARED and L1_REGISTERED. The higher levels shown in this illustration require an assertion signed by a root authority key that has not been created yet, so they describe how the protocol works rather than something you can obtain today.

Integration patterns for this scenario

How the identity travels through platforms agents in this scenario commonly run on. Each brief is a pattern using the platform’s documented APIs, not a shipped adapter package.

Give your agent an identity

Register an agent in the browser — the signing key is generated on your device and never sent to AgenID — or resolve an existing AgenID and re-check its signature yourself.