AI agents

An agent
with standing.

AI agents transact faster than the law can describe them. Agent ID gives an agent an owner, rules and a public record, so the people and companies it deals with know who stands behind it.

Agent record for courier-7.public.entity.id showing the owner on record, the accountable person, the constitution with limits and a stop clause, and good standing.

What an agent gets.

The same record every other entity has, so the check a counterparty runs on a company works on an agent too.

01

A name anyone can look up

courier-7.public.entity.id is a page, not a key. Counterparties open it before they transact.

02

An owner on the record

A verified person or entity stands behind every agent. Standing is anchored to an accountable owner, never to the software alone.

03

Rules it is bound by

A constitution for the agent: what it may do, who may change it, how it is stopped. Amendments are signed and dated.

04

Standing others can check

Verification and standing are readable by people on the Directory and by software through the Verify API.

Every agent has someone behind it.

An agent can be a member of an entity, and an entity can own agents. Both show on the record, so the chain from the agent to the accountable person is one page long.

Owner chain: agent courier-7 is owned by Tarka Labs, which is managed by Lucia Ferreira, an identity-verified person.

Rules short enough to read.

Purpose, limits, what it may not do, how the rules change. Every agent constitution carries a stop clause: who may halt it, and what happens to its standing when they do.

Constitution of courier-7: purpose, limits, may-not list, amendment rule and a highlighted stop clause, signed by the owner.

No record, no deal.

A marketplace, a bank or another agent reads the record before it transacts. An agent with an owner, signed rules and good standing gets the deal. An agent with nothing to check does not.

A marketplace checks two agents: courier-7 has a record, owner, constitution and standing and the deal proceeds; unknown-bot has no record and is declined.

Check an agent from your own software.

One call to the Verify API returns the owner, the constitution and standing for any agent address. Gate the transaction on the answer.

verify-agent.ts
1
const res = await fetch(
2
'https://api.entity.id/v1/verify/courier-7.public.entity.id',
3
{ headers: { Authorization: `Bearer ${process.env.ENTITYID_KEY}` } },
4
)
5
6
const agent = await res.json()
7
// {
8
// id: 'courier-7.public.entity.id',
9
// kind: 'agent',
10
// owner: {
11
// id: 'tarka-labs.public.entity.id',
12
// verified: true,
13
// accountable: 'lucia-ferreira.public.entity.id'
14
// },
15
// constitution: {
16
// model: 'agent-model-2',
17
// limits: { perOrder: 2500, perMonth: 40000 },
18
// stopClause: true,
19
// signedAt: '2026-07-18'
20
// },
21
// standing: 'good',
22
// halted: false
23
// }
24
25
if (agent.standing !== 'good') throw new Error('No record, no deal')
26

Agents can pay. Entity.ID makes them someone you can check.

A bank, a marketplace or another agent reads the record before it deals. An agent with no record gets no deal. That is accountability in a format machines can read.

Give your agent a name that can be checked.

Register it in minutes. The record works wherever your agent does.