Skip to content
Andamio
Try the App

For developers

Build on the Andamio API.

Andamio is a protocol made to be built upon. Every credential on it is backed by real, reviewed work, and your apps can act on that — you query plain REST, and Cardano validators enforce the rules underneath.

Issue, verify, and gate

The Andamio API backs all of it — courses, projects, and the credentials between them, all over plain REST. Audited smart contracts on Cardano, wrapped as an API — the transaction building is done for you.

Issue

Run the credential lifecycle — commit, assess, claim — for courses and projects.

Verify

Read the credentials any holder owns, from anywhere.

Gate

Unlock features by who holds what.

Query

Courses, projects, modules, and SLTs as structured data.

Gate by credential
curl -X POST https://api.andamio.io/api/v2/course/student/credentials/list \
  -H "X-API-Key: $ANDAMIO_KEY" \
  -H "Authorization: Bearer $USER_JWT"
{
  "data": [
    {
      "course_id": "ab5d9217bbbac409ffbe7c8c65d9b358932245079a7f8547a28bc755",
      "course_title": "Getting Started with Andamio",
      "is_enrolled": true,
      "enrollment_status": "completed",
      "claimed_credentials": ["1b37e6b411bc614e9da67943124219053eafa717793e5424f4a33765e42328a3"],
      "modules": [
        { "slt_hash": "1b37e6b411bc614e9da67943124219053eafa717793e5424f4a33765e42328a3",
          "title": "Mint Access Token and Commit to Assignment" }
      ]
    }
  ]
}

Resources

Credentials
list held · claim · assess
Courses
modules · SLTs · lessons · assignments
Projects
tasks · commitments · contributors
Transactions
build & submit on-chain · sponsored

Authenticate with an API key or a wallet JWT.

Verify a holder

Two calls prove that a wallet holds an Andamio Access Token. The result is a signed JWT you can check offline against the public JWKS.

terminal · api.andamio.io

1 · Start a session

curl -X POST https://api.andamio.io/api/v2/verify/session \
  -H "X-API-Key: $ANDAMIO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"alias": "alice"}'
{
  "session_id": "550e8400-e29b-41d4-a716-446655440000",
  "nonce": "Sign this message to verify Andamio Access Token ownership: a1b2c3d4...",
  "expires_at": "2026-03-10T12:05:00Z"
}

2 · Complete with the CIP-30 signature

curl -X POST https://api.andamio.io/api/v2/verify/complete \
  -H "X-API-Key: $ANDAMIO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"session_id": "550e8400-...", "signature": { ...CIP-30 signData result... }}'
{
  "verified": true,
  "alias": "alice",
  "wallet_address": "addr1qx2fxv2umyhttkxyxp8x0dlpdt3k6cwng5pxj3jhsydzer3jcu5d8ps7zex2k2xt3uqxgjqnnj83ws8lhrn648jjxtwq2ytjqp",
  "attestation_jwt": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9..."
}
Example values from the public OpenAPI spec. Sessions expire after five minutes; failures return session_expired, invalid_signature or wallet_not_holder.

Two ways to build

Create your own

Call the API to create a Course or Project. You get an ID that's yours and published on-chain — now you're an issuer: you define what credentials mean, and every one earned against them carries your policy. Start from the app template.

andamio-app-template

Build on existing work

You don't have to own a Course or Project to build on one. Build a dashboard over a partner's credentials, a verifier, a directory, or an agent that commits on someone's behalf. Credentials are public and composable by design.

Read the API reference

Hand it to your agent

Andamio's developer surface is small enough to give to an agent. Point it at andamio-dev — the knowledge layer that teaches it the protocol and estimates costs — and it drives the Andamio CLI to build, sign, and submit transactions for you.