> ## Documentation Index
> Fetch the complete documentation index at: https://docs.methodfi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Method JWKS

Retrieves Method's complete JSON Web Key Set (JWKS) containing all public keys used for Message Level Encryption. The key set contains encryption keys, which you use to encrypt your requests to Method, and signing keys, which you use to verify the signature on Method's responses on the [signed MLE path](/2026-03-30/reference/message-level-encryption#signed-message-level-encryption).

This endpoint requires no authentication.

<Note>
  This endpoint returns **Method's** public keys — encryption keys for encrypting your requests, and signing keys for verifying Method's response signatures — not your own registered keys. To manage your own keys, use the [Team JWKS API](/2026-03-30/reference/teams/mle/overview).
</Note>

## Caching

This endpoint includes cache control headers to optimize performance:

```
Cache-Control: public, max-age=3600
```

You should respect these cache headers and cache the response for up to 1 hour to reduce unnecessary requests.

## Key Uses

Filter on `use` as well as `status` when selecting a key:

* **Encryption keys** carry `use: "enc"` and `alg: "RSA-OAEP-256"`. Use the active encryption key to encrypt your requests to Method.
* **Signing keys** carry `use: "sig"` and `alg: "RS256"`. Use them to verify the signature on Method's responses on the [signed MLE path](/2026-03-30/reference/message-level-encryption#signed-message-level-encryption). More than one signing key can be active during a rotation, so retain every active signing key and select the one whose `kid` matches the `kid` in the JWS protected header of the response.

## Key Lifecycle

* **Active Keys**: Use keys with `status: "active"`
* **Deprecated Keys**: Keys with `status: "deprecated"` will be removed after 90 days
* **Key Identification**: Method JWKs always have their `kid` equal to their `id`
* **Lifetime Claims**: Every key carries numeric `iat`, `nbf`, and `exp` claims. Method keys are minted with a 365-day lifetime.

<Warning>
  Always use keys with `status: "active"`. Deprecated keys will be removed from the system after 90 days.
</Warning>

## Returns

Returns a JWKS object containing an array of Method's public keys with their current status and metadata.

<RequestExample>
  ```bash cURL theme={null}
  curl https://production.methodfi.com/.well-known/jwks.json
  ```

  ```javascript Node.js theme={null}
  const response = await fetch('https://production.methodfi.com/.well-known/jwks.json');

  const result = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.get('https://production.methodfi.com/.well-known/jwks.json')

  result = response.json()
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "keys": [
      {
        "id": "mthd_jwk_12",
        "kid": "mthd_jwk_12",
        "kty": "RSA",
        "use": "enc",
        "alg": "RSA-OAEP-256",
        "n": "s3C9N7Vz...J7c",
        "e": "AQAB",
        "status": "active",
        "iat": 1780309800,
        "nbf": 1780309800,
        "exp": 1811845800,
        "created_at": "2026-06-01T10:30:00Z", 
        "updated_at": "2026-06-01T10:30:00Z"
      },
      {
        "id": "mthd_jwk_13",
        "kid": "mthd_jwk_13",
        "kty": "RSA",
        "use": "sig",
        "alg": "RS256",
        "n": "q8L5S3Yc...N5b",
        "e": "AQAB",
        "status": "active",
        "iat": 1780309800,
        "nbf": 1780309800,
        "exp": 1811845800,
        "created_at": "2026-06-01T10:30:00Z",
        "updated_at": "2026-06-01T10:30:00Z"
      },
      {
        "id": "mthd_jwk_11",
        "kid": "mthd_jwk_11", 
        "kty": "RSA",
        "use": "enc",
        "alg": "RSA-OAEP-256",
        "n": "x9D2M8Qw...K9f",
        "e": "AQAB",
        "status": "deprecated",
        "iat": 1777623300,
        "nbf": 1777623300,
        "exp": 1809159300,
        "created_at": "2026-05-01T08:15:00Z",
        "updated_at": "2026-06-01T10:30:00Z"
      }
    ]
  }
  ```
</ResponseExample>

## Best Practices

* **Cache Responses**: Respect the `Cache-Control` header and cache responses for up to 1 hour
* **Use Active Keys**: Always filter for keys with `status: "active"` when selecting keys
* **Filter on Use**: Select `use: "enc"` keys for encryption and `use: "sig"` keys for signature verification
* **Handle Multiple Keys**: Your application should be able to handle multiple active keys
* **Monitor Webhooks**: Subscribe to `method_jwk.create` and `method_jwk.update` webhooks to stay informed of key changes
* **Graceful Degradation**: Implement fallback logic for when preferred keys become deprecated

## Environment-Specific Endpoints

Method's JWKS endpoints are environment-specific:

* **Production**: `https://production.methodfi.com/.well-known/jwks.json`
* **Sandbox**: `https://sandbox.methodfi.com/.well-known/jwks.json`
* **Development**: `https://dev.methodfi.com/.well-known/jwks.json`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.