Key Management: Keys
Catalog id: resource.kms.keys
Lists cryptographic key aliases across every runtime provider for the tenant. Operators work with aliases; the opaque kid is on the key detail page. Private material stays in KMS and is never shown in the console.
Whether any keys already appear depends on product onboarding. Some products pre-create aliases for AS, issuer, or verifier; others leave this table empty until an operator generates or imports keys.
Open it
| Navigation | Resources > Key Management > Keys |
| Deep link | #resource=kms&rarea=keys |
| Scope | Platform and tenant |
Keys list
- Admin Console
- REST API
Toolbar: search, Import, Generate key. Columns: Alias, Key type, Signature algorithm.
Click a row to open key detail. Use Generate key or Import when the table is empty or you need an additional key.

- Overview
- Request
- Response
List KMS keys
Endpoint: GET /api/kms/v1/keys
Captured response: 200 OK
This captured endpoint is shown from the E2E run; it is not mapped to one of the generated EDK REST API reference pages.
Connect an environment to rewrite this call to real service bases and run it.
Optional query: ?providerId= to restrict to one provider.
Generate key
Opens a dialog from the Keys toolbar.
| Field | Meaning |
|---|---|
| Provider | Runtime provider that will hold the key |
| Alias | Human name used later in protocols and DID binding |
| Key type and algorithm | From that provider’s reported capabilities |
Generate keeps private material in KMS and returns metadata (and public JWK over REST when applicable).
- Admin Console
- REST API

- Overview
- Request
- Response
Generate KMS key
Endpoint: POST /api/kms/v1/keys
Captured response: 201 Created
This captured endpoint is shown from the E2E run; it is not mapped to one of the generated EDK REST API reference pages.
Connect an environment to rewrite this call to real service bases and run it.
Import key
Use when key material was created outside the product. Paste a JWK (kty required). Alias is optional in the dialog; REST carries alias on keyInfo.
- Admin Console
- REST API

- Overview
- Request
- Response
Import KMS key
Endpoint: POST /api/kms/v1/keys/import
Captured response: 201 Created
This captured endpoint is shown from the E2E run; it is not mapped to one of the generated EDK REST API reference pages.
Connect an environment to rewrite this call to real service bases and run it.
Key detail
Opened by clicking an alias in the Keys table.
Info tab
- Alias, key type, signature algorithm
- kid with copy
- Provider association from the list row / API
JWK tab
Public JWK when the provider exposes it. Empty state if public material is unavailable. Private material is never shown.
Delete
Header Delete is available when the UI allows it. The server still rejects deletion if the key is assigned or otherwise protected.
- Admin Console
- REST API

Lookup by alias or kid (aliasOrKid path). Optional providerId query disambiguates when the same alias exists on more than one provider.
- Overview
- Request
- Response
Get KMS key
Endpoint: GET /api/kms/v1/keys/issuer-signing
Captured response: 200 OK
This captured endpoint is shown from the E2E run; it is not mapped to one of the generated EDK REST API reference pages.
Connect an environment to rewrite this call to real service bases and run it.