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.

{
  "vc": "<string>",
  "jti": "<string>",
  "issued_at": "<integer>",
  "expires_at": "<integer>",
  "kid": "<string>"
}

Released under the MIT License.