Skip to main content
GET /v1/holder/presentations API Key Paginated

List holder presentations

List all presentations created by the authenticated holder. Returns presentations
in descending order by creation date, with pagination support.

Parameters

Name Location Type Description
page query integer Page number for pagination (default: 1)
per_page query integer Items per page (default: 25, max: 100)
status query string Filter by presentation status
Values: active, expired, revoked
credential_uuid query string Filter presentations by credential UUID
sort query string Sort field
Values: status, expires_at, created_at
direction query string Sort direction (default: desc)
Values: asc, desc
X-API-Key * header string API key for holder authentication

* Required parameter

Response

200 List of presentations

Content-Type: application/json

success boolean
data array[object]

Array items:

A verifiable presentation with selective disclosure of claims

uuid * string (uuid)

Unique identifier for the presentation

Example: 0dc32c8f-d774-4887-8338-6ca2d630608f

credential_uuid * string (uuid)

UUID of the source credential

Example: 8e732b14-c35f-4a7d-8c02-d9858581e125

disclosed_claims * array[string]

List of claim names included in this presentation

Example: ["name","degree"]

Array items:

disclosed_values object nullable

The actual values of disclosed claims (dynamic, schema-dependent)

Example: {"name":"Jane Doe","degree":"Bachelor of Science"}

audience string nullable

Intended recipient of this presentation

Example: Acme Corp HR Department

purpose string nullable

Why this presentation was created

Example: Employment verification

status * string

Current status of the presentation: - active: Valid and can be verified - expired: Past its expiration date - revoked: Manually invalidated by the holder

Allowed values: "active", "expired", "revoked"

Example: active

expires_at string (date-time) nullable

When the presentation expires (null if no expiration)

Example: 2025-04-01T23:59:59Z

verification_count * integer

Number of times this presentation has been verified

Example: 3

created_at * string (date-time)

When the presentation was created

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

presentation_token string

The signed SD-JWT presentation token

Example: eyJhbGciOiJFUzI1NiJ9.eyJfc2QiOlsiLi4uIl19.signature~disclosure1~disclosure2

share_data object nullable

Data for sharing this presentation

presentation_url string (uri)

Direct link to view/verify the presentation

Example: https://aho.com/verify/presentation/2baca3a0-62b5-4675-9507-d615e6fb1f05

uuid string (uuid)

Presentation UUID for reference

Example: bca45724-2a5c-4a5e-acb2-19af7a96ca05

credential_type string

Type of the source credential

Example: UniversityDegreeCredential

issuer string

Name of the credential issuer

Example: Stanford University

disclosed_claims array[string]

List of claim names included

Example: ["name","degree"]

Array items:

expires_at string (date-time) nullable

When the presentation expires

Example: 2025-04-01T23:59:59Z

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.holder(api_key=os.environ["AHO_API_KEY"])

result = client.presentations.list

Try It

Log in to test this endpoint directly from the documentation.

Log in