---
title: "Download the passport Verifiable Credential"
method: GET
path: "/v1/dpp/passports/{id}/vc.jsonld"
tags: ["DPP"]
---

# Download the passport Verifiable Credential

`GET /v1/dpp/passports/{id}/vc.jsonld`

## Request

- Base URL: `https://api.prod.keyban.io`
- URL: `https://api.prod.keyban.io/v1/dpp/passports/{id}/vc.jsonld`
- Auth: API key in header `X-Api-Key`

Returns the signed W3C Verifiable Credential (UNTP Digital Product Passport) as JSON-LD, served from the copy persisted at certification (also pinned to IPFS, which is read back as fallback) — or, for a self-hosted certificate, read on the fly from the issuer-provided `certificateUri` (never stored server-side). Public: a third-party verifier resolves the issuer `did:web` and checks the signature without contacting Keyban. Returns 404 when the passport is not visible to the caller (anonymously it must be `published` or `claimed`), and 200 with an unsigned minimal credential while it is not certified yet. Returns 503 when no persisted copy exists and the IPFS gateway is unreachable, or when the self-hosted certificate cannot be retrieved (e.g. deleted by the issuer). CORS-open for browser verifiers.

## Path parameters

- `id` string, uuid, required

## Response `200`

Signed Verifiable Credential (JSON-LD)

## Other responses

- `503`: No persisted copy and the IPFS gateway is unreachable (`DPP_VC_IPFS_UNAVAILABLE`), or the self-hosted certificate could not be retrieved (`DPP_VC_SELF_HOSTED_UNAVAILABLE`)

---

[API](https://skmtc.dev/keyban/apis/keyban-rest-apis.md) · [All operations](https://skmtc.dev/keyban/apis/keyban-rest-apis/llms.txt) · [OpenAPI document](https://skmtc.dev/keyban/apis/keyban-rest-apis/revisions/0bb79a1da961?raw)
