# List key materials (/docs/apis/management/keys/GetAllKeyMaterials)

`GET /keys`

Retrieves a paginated list of active cryptographic key materials managed by the tenant. These keys may be used for signing, encryption, token issuance, or other security-related operations.

Base URL: `https://{tenant}.{region}.monocloud.com/api`, where `{tenant}`, `{region}` (one of us, eu, in) come from your tenant. Authentication: send your Management API key in the `X-API-KEY` header.

## Parameters

- `page` (query) (integer, int32, default 1) The page number to retrieve.
- `size` (query) (integer, int32, default 10) The number of keys to return per page.

## Response body

`200`, JSON. The key materials were retrieved successfully

Returns `KeyMaterial[]`. Each item has these fields:

- `id` (string, required) The unique identifier of the key material.
- `signing_algorithm` (string, required) Specifies the cryptographic algorithm of the key material used for signing operations. One of: `rs256`, `rs384`, `rs512`, `ps256`, `ps384`, `ps512`, `es256`, `es384`, `es512`.
- `is_current` (boolean, required) Indicates whether this key is the current default key used for signing operations.
- `use` (string, required) Specifies the operational use of the key, defining whether it is currently permitted for token signing or limited to signature validation only. One of: `signing`, `validation`.
- `creation_time` (integer, required, date-time) Specifies the creation time of the key (in Epoch).
- `valid_from` (integer, required, date-time) Specifies the time from which the key material is considered valid (in Epoch).
- `valid_to` (integer, date-time) Specifies the time until which the key material remains valid (in Epoch).
- `revocation_date` (integer, date-time) Specifies the time at which the key material was revoked (in Epoch).
- `rotation_date` (integer, date-time) Specifies the time at which the key material was rotated (in Epoch).

## Errors

- `401` Unauthorized
- `403` Forbidden

## Example (MonoCloud .NET SDK)

```csharp
using MonoCloud.Management;
using MonoCloud.Management.Core.Base;

var apiClient = new MonoCloudManagementClient(new MonoCloudConfig("<your-domain>", "[[API-Key]]"));


var page = 1;

var size = 10;


var result = await apiClient.Keys.GetAllKeyMaterialsAsync(page, size);
```

## Example (MonoCloud Javascript SDK)

```javascript
import { MonoCloudManagementClient } from '@monocloud/management';

const apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });

const page = 1;

const size = 10;

const result = apiClient.keys.getAllKeyMaterials(page, size);
```