Skip to main content
Version: v0.10.13

Registries

PEAC Protocol maintains registries for extension keys, attestation types, and advisory classifications. These registries define the standard vocabularies that all implementations use to describe interactions, payments, and other protocol events.

Extension keys

Extensions use reverse-DNS namespaced keys under peac.extensions. This namespacing prevents collisions between first-party and third-party extensions.

Extension Example
{
"peac": {
"extensions": {
"org.peacprotocol/interaction@0.1": {
"tool_name": "search",
"tool_server": "https://tools.example.com"
},
"com.example/custom@0.1": {
"custom_field": "value"
}
}
}
}

Registered extension keys

KeyVersionDescriptionStatus
org.peacprotocol/interaction@0.1Tool call and interaction metadataStable
org.peacprotocol/attribution@0.1Attribution requirements and commitmentsStable
org.peacprotocol/dispute@0.1Dispute evidence and resolutionStable
org.peacprotocol/workflow@0.1Workflow correlation identifiersStable
Third-party extensions

Third-party extensions use reverse-DNS keys under their own domain (e.g., com.example/my-extension@0.1). No registration is required for third-party keys -- the namespace itself prevents collisions.

Attestation types

Attestation types categorize the kind of evidence a receipt carries. Each receipt has exactly one attestation_type.

TypeDescriptionUse case
interactionGeneral interaction evidenceAPI calls, tool use, agent conversations
paymentPayment and commerce evidencex402, Stripe, Razorpay, card transactions
consentConsent and terms acceptanceUser agreements, data processing consent
identityAgent identity attestationAgent authentication, key binding

Advisory registries

Advisory registries define informational vocabularies. Unlike extension keys, advisory registry values are not enforced at the schema level -- they provide standard terminology that implementations should use for interoperability.

toolcall_op_types

Types of tool call operations. Used in the org.peacprotocol/interaction@0.1 extension to classify what kind of operation a tool call represents.

TypeDescription
readRead-only data access
writeData modification
executeCommand execution
querySearch or query operation
subscribeEvent subscription

toolcall_resource_types

Types of resources accessed by tool calls. Used alongside toolcall_op_types to describe what resource a tool call targeted.

TypeDescription
apiREST or GraphQL API endpoint
databaseDatabase query or mutation
fileFile system access
networkNetwork resource
computeCompute resource

Protocol registries

The specs/kernel/registries.json file also defines registries for payment rails, control engines, transport methods, and agent protocols:

RegistryContents
payment_railsx402, L402, card-network, UPI, Razorpay
control_enginesSpend control, risk engine, mandate service, TAP, RSL
transport_methodsDPoP, HTTP message signatures, none
agent_protocolsMCP, ACP, AP2 (Google), TAP (Visa)

Normative specification

The normative registry definitions are maintained in:

Registry Spec Location
specs/kernel/registries.json
Adding to registries

First-party extension keys and attestation types are registered by submitting a pull request to the PEAC Protocol repository. Advisory registries are informational and can be extended without breaking changes. Third-party extension keys do not require registration.