List provider keys
GET/v2/config/digital-wallet/openid/key-management/key-stores/:keyStoreId/provider-keys
Lists the keys that the provider of a key store has, so that you can sign with one of them. Give its providerKeyRef to the create key operation.
| Type | Provider keys | providerKeyRef |
|---|---|---|
vault | The Transit keys of type ecdsa-p256. | The name of the Transit key. |
gcp-kms | The enabled EC_SIGN_P256_SHA256 versions of the crypto keys of the key ring with the purpose ASYMMETRIC_SIGN. | The path of the crypto key version. |
aws-kms | The enabled ECC_NIST_P256 SIGN_VERIFY customer keys of the region. | The key ARN. |
azure-key-vault | The enabled EC P-256 signing keys of the vault, in their current version. | The key ID with its version. |
dpod | The key pairs of the partition with the label prefix ows:. | The label of the key pair. |
csc | The CSC credentials of the user (50 at most), with their certificates. | The credential ID. |
The cloud KMS types read at most 200 keys of the provider and return at most 50. A key that the credentials of the key store cannot read (no right to read it, or not found) is not in the list; the other keys are. The list call itself must work, else the operation fails. Each provider key has its public key in jwk (for csc, the public key of the leaf certificate). linked and keyId show when a key of the organisation already references the provider key. A local key store has no provider keys.
Request
Path Parameters
Possible values: <= 64 characters
Unique identifier of the key store. local-openbao, local-database or local-hsm for a key store of the installation, else the identifier that the create key store operation returned.
Responses
- 200
- 400
- 401
- 404
- 500
- 503
The service returned the keys of the provider.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
- Array [
- ]
providerKeys object[]required
The keys of the provider.
Reference of the key at the provider. For vault, the name of the Transit key. For gcp-kms, the path of the crypto key version (projects/<project>/locations/<location>/keyRings/<keyRing>/cryptoKeys/<key>/cryptoKeyVersions/<version>). For aws-kms, the key ARN. For azure-key-vault, the key ID with its version (<vaultUrl>/keys/<name>/<version>). For dpod, the label of the key pair in the partition (ows:<keyId> for a key that the wallet created). For csc, the ID of the CSC credential.
Signature algorithm of the key.
jwk objectnullablerequired
The public key of the provider key in JSON Web Key (JWK) format: kty, crv, x, y, and alg when the provider gives it. It has no kid: the wallet gives the key its own keyId when you reference it. For csc, the public key of the leaf certificate. null when the provider gives no P-256 public key.
Key type. The value is EC.
Elliptic curve identifier. The value is P-256.
X coordinate of the elliptic curve point, in base64url format.
Y coordinate of the elliptic curve point, in base64url format.
Signature algorithm of the key.
The public key of the provider key in JSON Web Key (JWK) format: kty, crv, x, y, and alg when the provider gives it. It has no kid: the wallet gives the key its own keyId when you reference it. For csc, the public key of the leaf certificate. null when the provider gives no P-256 public key.
Shows true when a key of the organisation already references this provider key.
The key of the organisation that references this provider key. null when linked is false.
certificate objectnullablerequired
For csc, the certificate of the CSC credential. null for the other types, and when the QTSP gives no certificate.
Distinguished name of the certificate subject.
Distinguished name of the certificate issuer.
Serial number of the certificate.
Start of the validity of the certificate.
End of the validity of the certificate.
Certificate chain, leaf first. Each item is a base64 encoded DER certificate.
{
"providerKeys": [
{
"providerKeyRef": "signing-key-1",
"algorithm": "ES256",
"jwk": {
"kty": "EC",
"crv": "P-256",
"x": "<base64url-x-coordinate>",
"y": "<base64url-y-coordinate>",
"alg": "ES256"
},
"linked": false,
"keyId": null,
"certificate": {
"subjectDN": "CN=Example Organisation AB,O=Example Organisation AB,C=SE",
"issuerDN": "CN=Example QTSP CA,O=Example QTSP,C=SE",
"serialNumber": "4a3f9c",
"validFrom": "2026-01-01T00:00:00Z",
"validTo": "2028-01-01T00:00:00Z",
"certificates": [
"string"
]
}
}
]
}
The key store type does not list provider keys (local), or the provider refused the request.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
Unauthorized
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
The organisation has no key store with this ID.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
Internal server error
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
The provider of the key store is not available.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}