Skip to content
Developers
Menu

API

Open Badges 3.0

Fetch a published digital credential as signed Open Badges 3.0 JSON, with no API key.

Updated

On this page

When a holder publishes a credential on their public Arrota profile, the credential is available as signed Open Badges 3.0 JSON that any system can read.

GET/api/credentials/{record_id}/open-badge.json

The full URL is https://app.arrota.com/api/credentials/{record_id}/open-badge.json. This endpoint needs no API key, sits outside /api/v1, and uses the credential's record_id.

Example request

cURL
curl "https://app.arrota.com/api/credentials/9e8d7c6b-5a4f-4e3d-8c2b-1a0f9e8d7c6b/open-badge.json"

Response

200 with Content-Type: application/vc+ld+json. The body is an OpenBadgeCredential as defined by Open Badges 3.0, with a proof block carrying the issuer's signature.

The response can be cached publicly for up to five minutes and allows requests from any origin, so browsers and wallets can read it directly.

When a credential is not available

The endpoint returns 404 with { "error": "No published credential with that id." } unless every one of these is true:

  • the holder has made their profile public and pinned the credential to it,
  • the record type can be published,
  • the credential is signed, current and not revoked.

Arrota gives the same 404 for a credential that does not exist and one that is private, so the endpoint never confirms that a private credential exists. A credential stops being available within minutes of being unpinned or revoked.

To work with credentials your own organisation issued, use the Credentials API.

Using Arrota rather than building on it? The Help Center covers product workflows.