---
title: "Get JWKS"
method: GET
path: "/.well-known/jwks.json"
tags: ["Public"]
---

# Get JWKS

`GET /.well-known/jwks.json`

## Request

- Base URL: `https://api.proof.holdings`
- URL: `https://api.proof.holdings/.well-known/jwks.json`
- Auth: none declared

Get JSON Web Key Set for offline proof verification.

## Response `200`

JWKS for offline proof verification — read each key's own `alg`

- JWKS: JSON Web Key Set for offline proof verification
  - `keys` JWK[], required
    - `kty` 'EC' | 'RSA', required: Key type. `EC` for ES256 keys (the current signing algorithm), `RSA` for RS256 keys. Both may appear in one key set during a key rotation.
    - `crv` 'P-256': EC curve — present on `EC` keys only
    - `x` string: EC public key x coordinate (`EC` keys only)
    - `y` string: EC public key y coordinate (`EC` keys only)
    - `n` string: RSA modulus (`RSA` keys only)
    - `e` string: RSA public exponent (`RSA` keys only)
    - `use` 'sig', required
    - `alg` 'ES256' | 'RS256', required: Signature algorithm for THIS key. Read it per key rather than assuming one algorithm for the set: during a rotation the current and previous keys may differ.
    - `kid` string, required: Key ID

---

[API](https://skmtc.dev/proof/apis/proof-holdings-api.md) · [All operations](https://skmtc.dev/proof/apis/proof-holdings-api/llms.txt) · [OpenAPI document](https://skmtc.dev/proof/apis/proof-holdings-api/revisions/6b8d61ee354f?raw)
