Skip to main content
GET /v1/schemas Public Paginated

Browse public credential schemas

List all available credential schemas in the public catalog. This is a public endpoint
that does not require authentication. Supports filtering by category, tag, search query,
and pagination.

Parameters

Name Location Type Description
category query string Filter schemas by category. Common categories include education, employment, identity, and professional.
tag query string Filter schemas by tag. Tags are keywords associated with schemas for easier discovery.
q query string Search query to filter schemas by name or description. Performs a case-insensitive partial match.
page query integer Page number for pagination (default: 1)
per_page query integer Items per page (default: 25, max: 100)

* Required parameter

Response

200 Filtered by category

Content-Type: application/json

success boolean
data array[object]

Array items:

A template defining the structure of a credential

slug string

URL-friendly identifier (lowercase, hyphenated)

Example: university-degree

name string

Human-readable name of the schema

Example: University Degree

description string

Detailed description of what this credential type represents

Example: A credential representing an academic degree from a university

credential_type string

Credential type identifier (e.g., PascalCase or standard like mDL)

Example: UniversityDegreeCredential

category string

Category for organizing schemas

Example: education

visibility string

Schema visibility: - public: Listed in the public schema catalog for anyone to use - private: Only visible to the owning issuer organization

Allowed values: "public", "private"

Example: public

claims array[object]

List of claim fields defined in this schema

Array items:

name string

Claim field name

Example: degree

type string

Data type of the claim: - string: Text value - integer: Whole number - boolean: True/false value - date: Date only (YYYY-MM-DD) - datetime: Date and time (ISO 8601)

Allowed values: "string", "integer", "boolean", "date", "datetime"

Example: string

required boolean

Whether this claim is required when issuing

Example: true

tags array[string]

Tags for filtering and discovery

Example: ["degree","academic","diploma"]

Array items:

url string (uri)

URL to the schema documentation page

context_url string (uri)

URL to the JSON-LD context document

Example: https://aho.com/contexts/university-degree

external_url string (uri) nullable

URL to external schema definition (e.g., schema.org)

Example: https://schema.org/EducationalOccupationalCredential

source string nullable

Source of the schema (e.g., 'schema_org', 'custom')

Example: custom

subject_schema object nullable

JSON Schema defining the credential subject structure

json_ld_context array[string] nullable

JSON-LD context URLs for this schema

Example: ["https://www.w3.org/2018/credentials/v1"]

Array items:

svg_template_key string nullable

Key identifying the SVG template used for rendering

Example: university_diploma

meta object
current_page integer
per_page integer
total_count integer
total_pages integer
categories array[string]

Available categories for filtering

Array items:

tags object

Available tags with counts

Code Examples

import os
from aho_sdk import AhoSdk

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

result = client.schemas.list

Try It

Log in to test this endpoint directly from the documentation.

Log in