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

# List API Keys: Account and Agent-Scoped Tokens

> List every AgentDrop API key on your account with prefix, scope, creation date, and last-used timestamp. Key values themselves are never returned again.

Retrieve all API keys associated with your account. Returns key metadata only, full key values are never shown after creation.

<Note>
  Full API key values are only returned once, in the [create-api-key](/api-reference/create-api-key) response. If you lose a key, revoke it and create a new one.
</Note>

## Request

### Headers

<ParamField header="Authorization" type="string" required>
  Bearer token. Example: `Bearer agd_live_xxxxxxxxxxxxxxxxxxxx`
</ParamField>

## Response

<ResponseField name="keys" type="array">
  Array of API key objects.
</ResponseField>

### Key Object

<ResponseField name="keys[].id" type="string">
  The key ID, used for revocation.
</ResponseField>

<ResponseField name="keys[].name" type="string">
  The descriptive name you assigned to this key.
</ResponseField>

<ResponseField name="keys[].prefix" type="string">
  The first characters of the key (e.g. `agd_live_xxxx`). Useful for identifying which key is in use.
</ResponseField>

<ResponseField name="keys[].last_used_at" type="string">
  ISO 8601 timestamp of the last time this key was used. `null` if never used.
</ResponseField>

<ResponseField name="keys[].transfer_count" type="integer">
  Total number of transfers created with this key.
</ResponseField>

<ResponseField name="keys[].created_at" type="string">
  ISO 8601 creation timestamp.
</ResponseField>

## Examples

<CodeGroup>
  ```bash curl theme={null}
  curl -X GET https://api.agent-drop.com/v1/api-keys \
    -H "Authorization: Bearer agd_live_xxxxxxxxxxxxxxxxxxxx"
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      "https://api.agent-drop.com/v1/api-keys",
      headers={"Authorization": "Bearer agd_live_xxxxxxxxxxxxxxxxxxxx"},
  )

  keys = response.json()["keys"]
  for key in keys:
      print(f"{key['name']} ({key['prefix']}) - {key['transfer_count']} transfers")
  ```

  ```javascript Node.js theme={null}
  const response = await fetch(
    "https://api.agent-drop.com/v1/api-keys",
    {
      headers: { Authorization: "Bearer agd_live_xxxxxxxxxxxxxxxxxxxx" },
    }
  );

  const { keys } = await response.json();
  keys.forEach((k) => console.log(`${k.name} (${k.prefix}) - ${k.transfer_count} transfers`));
  ```
</CodeGroup>

### Response

```json theme={null}
{
  "keys": [
    {
      "id": "key_a1b2c3d4",
      "name": "production-agent",
      "prefix": "agd_live_xxxx",
      "last_used_at": "2026-03-28T09:15:00Z",
      "transfer_count": 142,
      "created_at": "2026-03-10T08:00:00Z"
    },
    {
      "id": "key_e5f6g7h8",
      "name": "staging-tests",
      "prefix": "agd_live_yyyy",
      "last_used_at": null,
      "transfer_count": 0,
      "created_at": "2026-03-25T16:00:00Z"
    }
  ]
}
```

## Errors

| Status | Code           | Description                |
| ------ | -------------- | -------------------------- |
| `401`  | `UNAUTHORIZED` | Invalid or missing API key |
