
# List application credentials

`GET /v1/applications/{application_id}/credentials` · permission `applications:read`

Lists the credentials of an application (client secrets and registered public keys), newest first, revoked ones included. The response is a single page: `list_metadata.before` and `list_metadata.after` are always `null`. Secret values, secret digests and key bodies are never returned; a client secret is shown once, when it is created.

## Request

| Parameter | In | Description |
|---|---|---|
| `application_id` | path | Application id (`app_…`). |

## Response

`200 OK`.

```json
{
  "data": [
    {
      "id": "cred_0000000000000000000000001z",
      "type": "client_secret",
      "secret_last4": "abcd",
      "jwk_thumbprint": null,
      "created_by": "key_…",
      "created_at": "2026-10-01T10:00:00Z",
      "expires_at": null,
      "revoked_at": null,
      "revoke_reason": null,
      "last_used_at": null
    }
  ],
  "list_metadata": { "before": null, "after": null }
}
```

## Errors

| HTTP | `code` | When |
|---|---|---|
| 401 | `unauthenticated` | The key is missing, invalid or revoked. |
| 403 | `insufficient_permissions` | The key lacks the required permission. |
| 404 | `not_found` | The application does not exist in this environment. |
| 503 | `service_unavailable` | The credential registry is temporarily unavailable; retry after the `Retry-After` delay. |

## Example

```bash
curl https://api.eu.keenauth.com/v1/applications/app_6f8d0cjgbmf0gtn2rg6pscp3cg/credentials \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```
