Skip to content

Issue an agent Verifiable Credential

Mint a Verifiable Credential (VC) bound to a specific audience and challenge. Requires a valid login JWT (from /register or /refresh).

POST
/agent/vc/issue

Authorizations​

agentJwt

Agent registration JWT. Send as Authorization: Bearer <agent-jwt>.

Type
HTTP (bearer)

Request Body​

application/json

Request to issue a VC against a specific audience and challenge.

Whatever the third party gave you — a nonce, a user id, or a JSON blob. Non-empty; at most 4096 UTF-8 bytes.

Max Length4096

The third party's audience identifier, usually its origin. Non-empty.

Lifetime of the VC in seconds. Pick the smallest value that fits the third party's flow.

Minimum1
Maximum86400

Responses​

VC issued successfully.

application/json

The issued VC and its metadata.

The VC (an RS256 JWT with header.typ = agent-vc) to hand to the third party.

Unique identifier for this VC.

Issuance time as a Unix timestamp (seconds).

Expiry time as a Unix timestamp (seconds).

Key id of the signing key; matches a key in the JWKS.

Whether the VC includes the optional wallet ownership claims.

Valid values"included""unavailable"
{
  "vc": "<string>",
  "jti": "<string>",
  "issued_at": "<integer>",
  "expires_at": "<integer>",
  "kid": "<string>",
  "wallet_claims": "<string>"
}

Released under the MIT License.