Skip to main content
GET /v1/issuer/credentials API Key Paginated

List credentials

List all credentials issued by the authenticated issuer. Supports filtering by status,
schema, holder identifier, and date ranges. Results are paginated and sortable.

Parameters

Name Location Type Description
status query string Filter by credential status
Values: active, suspended, revoked, expired, archived
schema query string Filter by schema UUID or slug
subject_identifier query string Filter by holder identifier (exact match)
issued_after query string Filter by issued_at >= this date (ISO8601). Note: uses issued_at, not created_at.
issued_before query string Filter by issued_at <= this date (ISO8601). Note: uses issued_at, not created_at.
expires_after query string Filter credentials expiring after this date (ISO8601)
expires_before query string Filter credentials expiring before this date (ISO8601)
sort query string Sort column
Values: issued_at, expires_at, subject_identifier, status, created_at
Default: issued_at
direction query string Sort direction
Values: asc, desc
Default: desc
page query integer Page number for pagination
Default: 1
per_page query integer Number of results per page (max 100)
Default: 25
X-API-Key * header string Issuer API key for authentication

* Required parameter

Response

200 List of credentials

Content-Type: application/json

success boolean
data array[object]

Array items:

A credential issuance record from the issuer's perspective

uuid string (uuid)

Unique identifier for the credential issuance

Example: 43861766-680a-4417-8657-9c22cc3d50fc

status string

Current status of the credential/issuance: - pending: Created but not yet issued - issued: Credential has been signed and delivered - active: Credential is valid and can be verified - suspended: Temporarily disabled - revoked: Permanently invalidated - expired: Credential has passed its expiration date - archived: Credential has been archived

Allowed values: "pending", "issued", "suspended", "revoked", "active", "expired", "archived"

Example: active

subject_identifier string

Email or DID identifying the credential subject

Example: [email protected]

subject_identifier_type string

Type of identifier used for the subject

Allowed values: "email", "did"

Example: email

issued_at string (date-time)

When the credential was issued

Example: 2025-01-15T10:00:00Z

expires_at string (date-time) nullable

When the credential expires

Example: 2027-01-15T10:00:00Z

schema object nullable
uuid string (uuid)

Example: 03e5242c-5b6c-4e3f-9df8-5f4ddecb28c4

name string

Example: Employee Badge

type string

Example: EmployeeBadgeCredential

issuer object
name string

Example: Acme Corporation

did string

Example: did:web:acme-corp.com

verification_url string (uri)

URL to verify this credential

Example: https://aho.com/verify/391fde06-ced0-4a2e-b904-0d7e6bd2777c

credential_jwt string nullable

The signed JWT credential token

Example: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9...

created_at string (date-time)

Example: 2025-01-15T09:55:00Z

subject_id string nullable

Internal subject identifier (detail view only)

Example: did:web:example.com:users:67890

claims object nullable

Credential claims/attributes (detail view only)

Example: {"name":"John Smith","title":"Senior Engineer","department":"Engineering"}

vc_json object nullable

Raw VC JSON-LD document (detail view only)

issuer_signing_key object

Signing key used (detail view only)

id string

Signing key identifier

Example: key-043b1dc6-863a-4b4a-8eed-2167ae85aaf9

key_id string

Key ID used in JWT header (kid)

Example: did:web:acme-corp.com#key-1

algorithm string

Signing algorithm

Allowed values: "es256", "es384", "ed25519"

Example: ed25519

verification_logs_count integer

Number of verification attempts (detail view only)

Example: 3

updated_at string (date-time)

When last updated (detail view only)

Example: 2025-01-20T14:30:00Z

meta object

Pagination metadata for list responses

current_page * integer

Current page number

Example: 1

per_page * integer

Items per page

Example: 25

total_count * integer

Total number of items

Example: 42

total_pages * integer

Total number of pages

Example: 2

Code Examples

import os
from aho_sdk import AhoSdk

client = AhoSdk.issuer(api_key=os.environ["AHO_API_KEY"])

result = client.credentials.list

Try It

Log in to test this endpoint directly from the documentation.

Log in