Skip to content

Build on verified skills.

APIs and SDKs to integrate skill verification, candidate assessment, and trust scoring into your products.

verify.ts
const response = await fetch(
"https://api.getlemma.io/v1/verify/passport",
{ headers: { Authorization: "Bearer sk_live_..." } }
);

Get started in 5 minutes.

Install the SDK, set your API key, and make your first verification call. Three commands is all it takes to integrate verified skill data into your product.

Terminal
$npm install @lemma/sdk
$export LEMMA_API_KEY="sk_live_..."
$lemma verify --user=u_abc123

One API call returns everything you need to verify a candidate.

200GET /v1/verify/passport/:uid
{
  "uid": "usr_7f3k...2x8m",
  "displayName": "Alex Chen",
  "skills": [
    {
      "key": "react",
      "tier": "T3",
      "sci": 84,
      "sessionsCount": 14,
      "lastEvidence": "2026-03-15"
    },
    {
      "key": "typescript",
      "tier": "T2",
      "sci": 723,
      "sessionsCount": 11
    }
  ],
  "verified": true
}

Core API surface.

POST/v1/assess/invites

Create assessment invites

Send skill assessments to candidates. Track completion status and retrieve scored results programmatically.

{ "id": "inv_abc", "status": "pending", "candidate_email": "..." }
GET/v1/verify/passport/:userId

Retrieve verified passport

Get a user's full skill passport including all credentials, SCI scores, and evidence history in a single call.

{ "user_id": "u_abc", "skills": [...], "sci_scores": {...} }
GET/v1/verify/skill/:userId/:skillKey

Verify a single skill

Check a specific skill credential with tier, SCI score, and the complete evidence chain that backs it.

{ "skill": "react", "tier": "proficient", "sci": 78, "evidence": [...] }
Event
POST
Your server
200 OK
{
  "event": "skill.tier_changed",
  "user_id": "u_abc123",
  "skill": "react",
  "new_tier": "proficient"
}

Real-time event stream.

Subscribe to skill changes, assessment completions, and passport updates. Events are delivered as signed POST requests with automatic retries and exponential backoff for up to 72 hours.

Official libraries for every stack.

Node.js SDK

TypeScript / JavaScript

npm install @lemma/sdk

Python SDK

Python 3.8+

pip install lemma-sdk

Go SDK

Go 1.21+

go get github.com/lemma-io/sdk-go

REST API

Any language via HTTP

curl -H 'Authorization: Bearer sk_...'

Secure by default.

API keys with granular scoping let you control exactly what each integration can access. Set rate limits per key, rotate credentials without downtime, and monitor usage in real time.

Production API Key
Key prefixsk_live_abc1...x9z
Scopesverify:read, assess:write
Rate limit1,000 req/min
CreatedMar 12, 2026

Built for developers who ship.

Sandbox environment

Test your integration with realistic mock data before going live. No risk, no cost, full API parity.

Detailed error messages

Every error returns a machine-readable code, human-readable message, and a link to the relevant documentation.

Request logging

Full request and response logs available in the dashboard. Debug integration issues in seconds, not hours.

Idempotency keys

Every write endpoint supports idempotency keys. Safely retry requests without creating duplicate records.

Built for developers

Everything you need to integrate skill verification into your product — from RESTful endpoints to real-time webhooks.

200GET /v1/verify/skill/:uid/react
{
  "skill": "react",
  "tier": "proficient",
  "sci": 84,
  "confidence": 0.92,
  "evidence": {
    "sessions": 14,
    "assessments": 3,
    "endorsements": 7
  },
  "verified": true
}

RESTful API

Clean, predictable endpoints following REST conventions. JSON responses, standard HTTP methods, pagination built in.

Webhooks

Real-time event delivery for skill changes, assessment completions, and tier upgrades. Retry with exponential backoff.

TypeScript SDK

Fully typed client with autocomplete, request validation, and built-in error handling. Ship faster with zero guesswork.

Rate limiting

Enterprise-grade rate limiting with per-key quotas, burst allowance, and clear headers so you never fly blind.

Choose your path

No-code dashboard

Manage API keys, configure webhooks, send assessment invites, and track verification results — no code required.

Dashboard
API Keys3 active
Webhooks2 endpoints
Invites sent128
Verifications1,042

Build with the API

Integrate skill verification directly into your product with our TypeScript SDK, REST API, and comprehensive docs.

verify.ts
import { Lemma } from "@lemma/sdk";

const lemma = new Lemma("sk_live_...");

const passport = await lemma.verify
  .passport("usr_7f3k2x8m");

console.log(passport.skills);
// → [{ key: "react", sci: 84 }]

Start proving what you know.

Early access is rolling out for individuals and teams. No credit card, no PDFs — just the things you made, made visible.

No spam. We respect your inbox.

Join the waitlist

Be the first to build your Skill Passport.

No spam. We respect your inbox.