Identity element

Field reference for the Identity canvas element: agent DID extraction at inbound, protected, external, or outbound pipeline edges for VP stamping.

The Identity element extracts an agent DID from the pipeline at the edge where identity evidence is available. Drop it on the edge that corresponds to the identity slot you want to populate. One surface can hold multiple Identity elements at different edges.

Placement slots

EdgeIdentity slotWhat it resolves
Access Point → Managed Agent (request)Inbound caller identityDID of the incoming caller.
Access Point → Managed Agent (response)Protected agent identityDID of the managed agent responding to the caller.
External Target → Managed Agent (response)External agent identityDID of the external upstream the managed agent calls out to.
Managed Agent → Transit Point (request)Outbound managed-agent identityDID of the managed agent for a specific transit point. Used by Workload Binding flows.

Identity Extraction Type

Select the type using the Identity Extraction Type dropdown. Type-specific fields appear below once a type is selected.

TypeDescription
From Payload (identity metadata)Reads identity claims from a named field in the payload body.
From API KeyOn the inbound caller slot, derives the caller’s DID from the API key the caller presents. On other slots, derives the agent DID from the configured API key.
From JWT ClaimsExtracts the agent DID from a named claim in the JWT Bearer token.
Static DIDUses a fixed, pre-known DID for all requests. Not currently available: visible but disabled.
From mTLS certificateDerives the agent DID from the client certificate presented during the request. Not currently available: visible but disabled.

Type: From Payload (identity metadata)

The sidebar panel shows a Configure Fields… button that opens the fullscreen editor. Configure dot-notation field paths and the JSON schema there. The sidebar also shows the current field count.

FieldTypeRequiredDefaultDescription
Strip raw identity metadata after injectiontoggleNoOffWhen on, removes the raw _meta.[field] from the request once the VP credential is injected. Not shown on A2A surfaces.

Type: From API Key

The fields depend on the slot.

Inbound caller identity slot. The panel has no key picker. It shows “Each caller is identified by the API key it presents.” Every method in the surface’s Caller Context must be API Key (secret store) or API Key (provider). Otherwise the dashboard shows “Identity ‘From API Key’ needs every Caller Context method to be API Key or API Key Provider” and the surface can’t be saved. What counts as one caller depends on the Caller Context method:

Caller Context methodOne DID per
API Key (provider)Key presented. Each caller with their own key gets their own DID.
API Key (secret store)Secret. Every key value in the secret shares one DID.

On a direct request, the DID from the presented key replaces any identity the request body asserts. Unless the body asserts the key’s own DID, its trust registry claims are dropped, so a Trust Check preset that reads input.agent.provider_did denies the caller. In policy input, input.agent.did_verification is source_auth for an API Key (provider) caller and unverified for an API Key (secret store) caller.

Protected agent and external agent identity slots.

FieldTypeRequiredDefaultDescription
API KeyselectYes—Active API key to derive the agent DID from. Populated from the gateway’s configured API keys.

Type: From JWT Claims

Requires JWT Bearer caller authentication on this surface: every method in the surface’s Caller Context must be JWT Bearer. Otherwise the dashboard shows “From JWT Claims requires a Caller Context whose methods are all JWT Bearer. Remove the other methods, or change this extraction type.” and the surface can’t be saved.

FieldTypeRequiredDefaultDescription
JWT ClaimstringNooidJWT claim from which the DID is derived.
Namespace Claimsstring, comma-separatedNo—Additional claims that namespace the derived DID to ensure uniqueness, for example iss, tid.

Type: Static DID

FieldTypeRequiredDefaultDescription
Static DIDstringYes—The pre-known DID to use as the agent identity for all requests. For example: did:web:example.com:agent:my-agent.

Type: From mTLS certificate

FieldTypeRequiredDefaultDescription
Client CertificateselectYes—Active client-leaf certificate to derive the agent DID from. Populated from the gateway’s configured certificates.