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

# List API Keys

> List a child's API keys. Key values are masked.

Lists the API keys of a child. Use your **parent** key with `accounts.read`. Plaintext values are never returned — each key is shown masked as its prefix followed by `****`.

## Path Parameters

<ParamField path="child_id" type="integer" required>
  The child account's `accountId`.
</ParamField>

## Response Fields

<ResponseField name="apiKeys" type="array">
  Array of key objects (see [Create API Key](/api-reference/v2/accounts/create-api-key#response-fields)) with the `key` field **masked** (`keyPrefix` + `****`).
</ResponseField>

## Examples

<RequestExample>
  ```bash cURL theme={null}
  curl https://api.tracklysms.com/api/v2/accounts/children/1042/api-keys \
    -H "X-Api-Key: trk_your_parent_key"
  ```
</RequestExample>

<ResponseExample>
  ```json Success (200) theme={null}
  {
    "apiKeys": [
      {
        "id": "66b0f7c84a1d4b2e9c3a1f2e",
        "accountId": 1042,
        "name": "prod",
        "key": "trk_ab12****",
        "keyPrefix": "trk_ab12",
        "status": "active",
        "permissions": ["api.full"],
        "sandbox": false,
        "createdAt": "2026-07-26T14:05:00.000000",
        "lastUsedAt": "2026-07-26T15:10:00.000000"
      }
    ]
  }
  ```
</ResponseExample>

## Error Codes

| HTTP Status | Error Code                                    | Description                                                      |
| ----------- | --------------------------------------------- | ---------------------------------------------------------------- |
| 404         | `child_not_found`                             | No child with that ID under this parent.                         |
| 403         | `not_a_parent_account` / `insufficient_scope` | See [Accounts & Hierarchy](/api-reference/v2/accounts/overview). |
