List JWKs
Overview
Retrieves all JWKs (JSON Web Keys) for a specified project. JWKs are used for cryptographic operations, digital signatures, and encryption in API Proxies.
Endpoint
GET /apiops/projects/{projectName}/jwks/
Authentication
Requires a Personal API Access Token.
Header
Authorization: Bearer YOUR_TOKEN
Request
Headers
| Header | Value | Required |
|---|---|---|
| Authorization | Bearer {token} | Yes |
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| projectName | string | Yes | Project name |
Query Parameters
None.
Response
Success Response (200 OK)
{
"success": true,
"resultList": [
{
"name": "my-jwk",
"description": "JWK for API authentication",
"projectId": "project-id",
"sourceType": "URL",
"sourceId": null,
"sourceUrl": "https://example.com/.well-known/jwks.json",
"type": "RSA",
"kid": "key-id-1"
},
{
"name": "generated-jwk",
"description": "Auto-generated JWK",
"projectId": "project-id",
"sourceType": "GENERATE",
"sourceId": null,
"sourceUrl": null,
"type": "EC",
"kid": "key-id-2"
}
]
}
Response Fields
| Field | Type | Description |
|---|---|---|
| success | boolean | Indicates if the request was successful |
| resultList | array[object] | List of JWKs |
JWK Management Object
| Field | Type | Description |
|---|---|---|
| name | string | JWK name |
| description | string | JWK description |
| projectId | string | Project ID where JWK belongs |
| sourceType | string | Source type: URL, COPY_PASTE, CERTIFICATE, PUBLIC_KEY, PRIVATE_KEY, KEYSTORE, GENERATE |
| sourceId | string | ID of the source (certificate, key, or keystore) if applicable |
| sourceUrl | string | URL of the source if sourceType is URL |
| type | string | JWK type: RSA, EC, OCT, OKP |
| kid | string | Key ID (kid) of the JWK. For URL and COPY_PASTE source types, this specifies which key to use when the source contains multiple keys (JWK Set) |
Notes
- JWK key material (rsa, ec, oct, okp fields) is excluded from list response for performance
- Each JWK can be deployed to multiple environments
- JWKs can be created from various sources (URL, certificate, key, keystore, or generated)
- Use Get JWK endpoint to retrieve full JWK details including key material
Error Response (401 Unauthorized)
{
"error": "unauthorized_client",
"error_description": "Invalid token"
}
Error Response (400 Bad Request)
{
"error": "bad_request",
"error_description": "projectName value can not be empty!"
}
cURL Example
curl -X GET \
"https://demo.apinizer.com/apiops/projects/MyProject/jwks/" \
-H "Authorization: Bearer YOUR_TOKEN"
Notes and Warnings
- Performance:
- JWK key material is excluded from list response
- Use Get JWK endpoint to retrieve full JWK details
- Source Types:
URL: JWK fetched from a URLCOPY_PASTE: JWK created from JSON stringCERTIFICATE: JWK extracted from certificatePUBLIC_KEY/PRIVATE_KEY: JWK extracted from keyKEYSTORE: JWK extracted from keystoreGENERATE: JWK generated by Apinizer
- Permissions:
- Requires
ROLE_API_SECURITYpermission - User must have access to the project
- Requires
Related Documentation
- Get JWK - Get a specific JWK
- Create JWK - Create a new JWK
- Generate JWK - Generate a new JWK