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

# Whitelist Address

> Whitelist an external wallet address for withdrawals

Registers an external wallet address against a network so it can receive withdrawals from your account.

<Note>
  The request body must be [encrypted](/guides/encryption).
</Note>

### Body parameters (plain payload, pre-encryption)

<ParamField body="networkId" type="string" required>
  Network the address belongs to. See [Get Networks](/api-reference/get-networks).
</ParamField>

<ParamField body="address" type="string" required>
  The wallet address to whitelist.
</ParamField>

### Response (decrypted `data`)

Returns your updated list of whitelisted addresses.

<ResponseField name="data" type="object[]">
  <Expandable title="Whitelisted address object">
    <ResponseField name="id" type="string">Whitelist entry ID.</ResponseField>
    <ResponseField name="networkId" type="string">Network the address is whitelisted on.</ResponseField>
    <ResponseField name="publicKey" type="string">The whitelisted wallet address.</ResponseField>
    <ResponseField name="internalPublicKey" type="string">Internal deposit address paired to this entry.</ResponseField>
    <ResponseField name="network" type="object">Network summary (`id`, `name`, `short_name`) when included.</ResponseField>
    <ResponseField name="created_at" type="string">ISO 8601 creation timestamp.</ResponseField>
    <ResponseField name="updated_at" type="string">ISO 8601 last-update timestamp.</ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```json Plain body (encrypt before sending) theme={null}
  {
    "networkId": "9b2e6a1f-3c4d-4e5f-8a7b-1c2d3e4f5a6b",
    "address": "0x8Ba1f109551bD432803012645Ac136ddd64DBA72"
  }
  ```

  ```bash cURL (wire format) theme={null}
  curl -X POST "https://api.cngn.co/v1/api/whitelist" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "content": "<base64 AES-256-CBC ciphertext of the plain body>",
      "iv": "<base64 16-byte IV>"
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 - Success (data shown decrypted) theme={null}
  {
    "status": 200,
    "message": "Address whitelisted successfully",
    "data": [
      {
        "id": "7a8b9c0d-1e2f-4a3b-9c4d-5e6f7a8b9c0d",
        "networkId": "9b2e6a1f-3c4d-4e5f-8a7b-1c2d3e4f5a6b",
        "publicKey": "0x8Ba1f109551bD432803012645Ac136ddd64DBA72",
        "internalPublicKey": "0x3cD4e5F6a7B8c9D0e1F2a3B4c5D6e7F8a9B0c1D2",
        "created_at": "2026-07-22T10:15:00.000Z",
        "updated_at": "2026-07-22T10:15:00.000Z"
      }
    ]
  }
  ```
</ResponseExample>
