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

# Keys & Secrets API

> The Keys & Secrets API provides endpoints for managing cryptographic keys, keystores, JWKs (JSON Web Keys), and certificates in Apinizer. These resources are essential for secure communication, encryption, authentication, and digital signatures in API Proxies.

## API Sections

### JWKs (JSON Web Keys)

* [List JWKs](/api-reference/keys-secrets/crud/list-jwks) - Get all JWKs for a project
* [Get JWK](/api-reference/keys-secrets/crud/get-jwk) - Get a specific JWK
* [Create JWK](/api-reference/keys-secrets/crud/create-jwk) - Create a new JWK
* [Update JWK](/api-reference/keys-secrets/crud/update-jwk) - Update an existing JWK
* [Delete JWK](/api-reference/keys-secrets/crud/delete-jwk) - Delete a JWK
* [Generate JWK](/api-reference/keys-secrets/crud/generate-jwk) - Generate a new JWK
* [Parse JWK from URL](/api-reference/keys-secrets/crud/parse-jwk-from-url) - Parse and create JWK from URL
* [Parse JWK from Clipboard](/api-reference/keys-secrets/crud/parse-jwk-from-clipboard) - Parse and create JWK from JSON string
* [Parse JWK from Certificate](/api-reference/keys-secrets/crud/parse-jwk-from-certificate) - Parse and create JWK from certificate
* [Parse JWK from Key](/api-reference/keys-secrets/crud/parse-jwk-from-key) - Parse and create JWK from key
* [Parse JWK from Keystore](/api-reference/keys-secrets/crud/parse-jwk-from-keystore) - Parse and create JWK from keystore

### Keystores

* [List Keystores](/api-reference/keys-secrets/crud/list-keystores) - Get all keystores for a project
* [Get Keystore](/api-reference/keys-secrets/crud/get-keystore) - Get a specific keystore
* [Create Keystore](/api-reference/keys-secrets/crud/update-keystore) - Create a new keystore (use update endpoint with POST method)
* [Update Keystore](/api-reference/keys-secrets/crud/update-keystore) - Update an existing keystore
* [Delete Keystore](/api-reference/keys-secrets/crud/delete-keystore) - Delete a keystore

### Keys (Crypto Keys)

* [List Keys](/api-reference/keys-secrets/crud/list-keys) - Get all keys for a project
* [Get Key](/api-reference/keys-secrets/crud/get-key) - Get a specific key
* [Create Key](/api-reference/keys-secrets/crud/create-key) - Create a new key
* [Update Key](/api-reference/keys-secrets/crud/update-key) - Update an existing key
* [Delete Key](/api-reference/keys-secrets/crud/delete-key) - Delete a key

### Certificates

* [List Certificates](/api-reference/keys-secrets/crud/list-certificates) - Get all certificates for a project
* [Get Certificate](/api-reference/keys-secrets/crud/get-certificate) - Get a specific certificate
* [Create Certificate](/api-reference/keys-secrets/crud/create-certificate) - Create a new certificate
* [Update Certificate](/api-reference/keys-secrets/crud/update-certificate) - Update an existing certificate
* [Delete Certificate](/api-reference/keys-secrets/crud/delete-certificate) - Delete a certificate
* [Export Certificate](/api-reference/keys-secrets/crud/export-certificate) - Export certificate as ZIP file
* [Get Truststore Certificates](/api-reference/keys-secrets/crud/get-truststore-certificates) - Get certificates from environment truststore

## Authentication

All endpoints require authentication using a Personal API Access Token.

## Permissions

### GET Operations (List/Get Certificate/Key/Keystore/JWK)

* User must have **`SECRETS` + `VIEW`** permission in the project
* If the asset category does not exist, user must have **at least one permission** in the project

### POST/PUT/DELETE Operations (Create/Update/Delete Certificate/Key/Keystore/JWK)

* User must have **`SECRETS` + `MANAGE`** permission in the project
* For deployment operations (when deploying certificates to environments), user must also have **`SECRETS` + `DEPLOY_UNDEPLOY`** permission

### Permission Requirements

| Operation                                         | Required Permission                                              |
| ------------------------------------------------- | ---------------------------------------------------------------- |
| List/Get Certificate/Key/Keystore/JWK             | `SECRETS` + `VIEW` (or any permission if category doesn't exist) |
| Create/Update/Delete Certificate/Key/Keystore/JWK | `SECRETS` + `MANAGE`                                             |
| Deploy Certificate to Environment                 | `SECRETS` + `DEPLOY_UNDEPLOY`                                    |
| Export Certificate                                | `SECRETS` + `EXPORT_IMPORT`                                      |

## Related Documentation

* [Authentication Guide](/api-reference/getting-started/authentication) - How to obtain and use API tokens
* [Error Handling](/api-reference/getting-started/error-handling) - Error response formats
