API & Integrations
CRED is API-first infrastructure. Everything in the repository — institutions, courses, equivalencies, version histories — is available through documented REST APIs, signed webhooks, and bulk exports.
Make your first call
The public sandbox key below works right now, against this environment's live seeded dataset.
curl "https://$HOST/api/v1/equivalencies?status=accepted&limit=3" \ -H "Authorization: Bearer cred_sandbox_a8f3d92e1c474b56"
Or skip the terminal — try it in the browser sandbox.
Authentication
API keys (available today)
Bearer keys scoped to your organization, with separate live and sandbox environments. Created and revoked in the dashboard or via POST /v1/keys. Keys are hashed at rest and shown exactly once.
OAuth 2.0 + SSO (production)
Machine-to-machine access uses OAuth 2.0 client credentials with scoped tokens (read:public, write:contribute). Dashboard access federates with institutional identity via SAML 2.0 and OpenID Connect, with just-in-time provisioning.
Standards alignment
CRED does not invent new formats where good ones exist. The data model is openly documented, machine-readable, and versioned.
1EdTech Edu-API
CRED's course and section model aligns with the 1EdTech Edu-API specification, so SIS and LMS vendors can map records without bespoke translation layers.
IPEDS institution keys
Every institution is keyed by its IPEDS unit ID — the canonical federal identifier — eliminating cross-system institution-matching ambiguity.
CEDS / CIP vocabulary
Courses carry CIP 2020 classification codes and CEDS-aligned controlled vocabularies for levels, credit types, and statuses.
PESC compatibility
Bulk exchange formats are designed for round-tripping with PESC transcript and course-inventory standards used by registrar systems.
Credential Engine (CTDL)
Equivalency records are exportable as CTDL-aligned assertions, bridging CRED to the credential transparency ecosystem.
Open spec, versioned
The full OpenAPI 3.1 document — including webhook event schemas — is public and stable across versions.
Download openapi.jsonConventions
Pagination — limit/offset with Link headers and X-Total-Count.
Errors — RFC 7807 application/problem+json on every non-2xx response.
Rate limits — token bucket per key; current state in X-RateLimit-* headers.
Versioning — records are immutable-versioned; the API itself is versioned by URL (/v1).
Bulk — batch upserts up to 500 records per request; full exports via /v1/exports.
Events — webhook deliveries are HMAC-signed and retried; see Webhooks.