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

# 地址

> 了解如何为客户创建专属地址以接收稳定币充值

<Note>
  概述<br />
  专属地址使您能够为每个客户创建唯一的区块链地址，用于在多条区块链上无缝接收稳定币充值。
</Note>

## 前提条件

在生成专属地址之前，请确保您已完成以下步骤：

<Steps>
  <Step title="API 密钥">
    从 [Blockradar 控制面板](https://dashboard.blockradar.co) 获取您的 API 密钥。导航至 **Developers** 生成密钥。
  </Step>

  <Step title="创建钱包">
    通过 [创建钱包 API](/zh/api-reference/wallets/create-wallet) 或控制面板创建主钱包。地址在主钱包下生成。
  </Step>

  <Step title="为钱包充值">
    确保您的主钱包有足够的原生代币用于支付 Gas 费用（用于自动归集）。
  </Step>

  <Step title="配置 Webhooks">
    通过控制面板设置 Webhook 以接收充值通知。详情请参阅 [Webhooks](/zh/essentials/webhooks)。
  </Step>
</Steps>

<img src="https://mintcdn.com/blockradar/fWg7SGpNBqmitg8P/images/addresses.png?fit=max&auto=format&n=fWg7SGpNBqmitg8P&q=85&s=3a8328c64ff10aaf622737fb39ae61f6" alt="地址" width="3446" height="2234" data-path="images/addresses.png" />

## 简介

专属地址是 Blockradar 的核心功能，使您能够为客户创建唯一地址。这些地址允许客户无缝地向您的金融科技应用充值稳定币。

当您为客户创建专属地址时，他们可以使用该单一地址在多条 EVM 兼容区块链上充值稳定币。

例如，如果您创建了 Ethereum、Binance Smart Chain、Polygon 和 Base 主钱包，则通过这些主钱包中任意一个生成的地址都可用于在任何[支持的区块链和资产](/zh/essentials/integrations)上接收稳定币。这确保您无需担心客户将稳定币发送到错误的区块链。

此外，当稳定币充值到特定地址时，资产会自动转移到该链的主钱包地址。

<Note>除了 Tron 和 Solana 外，从一个钱包生成的地址可用于在其他具有区块链参数 `isEvmCompatible: true` 的区块链上接收稳定币充值。</Note>

## 地址参数说明

创建或更新地址时，您可以使用以下可选参数来自定义其行为：

| 参数                      | 类型          | 默认值     | 描述                                         |
| ----------------------- | ----------- | ------- | ------------------------------------------ |
| `disableAutoSweep`      | Boolean（可选） | `false` | 如果设置为 `true`，则禁用此地址资金的自动归集。                |
| `enableGaslessWithdraw` | Boolean（可选） | `false` | 如果设置为 `true`，允许用户无需直接支付 Gas 费用即可提现。        |
| `metadata`              | Object（可选）  | `null`  | 您可以附加到地址的自定义元数据，用于您自己的引用或跟踪目的。             |
| `name`                  | String（可选）  | `null`  | 地址的可读名称，便于在控制面板或日志中识别。                     |
| `showPrivateKey`        | Boolean（可选） | `false` | 如果设置为 `true`，此地址的私钥将在 API 响应中返回。**请谨慎使用。** |

<Warning>
  参数 `disableAutoSweep`、`enableGaslessWithdraw` 和 `showPrivateKey` 将覆盖此特定地址的主钱包配置中的相应设置。无论钱包的默认设置如何，这都允许在地址级别进行精细控制。
</Warning>

<Note>
  **注意：**

  * 所有这些参数都是可选的；您只需包含与您用例相关的参数。
  * 启用 `showPrivateKey` 可能会暴露敏感信息。仅在安全、可信的环境中使用。
  * 请谨慎使用 `showPrivateKey`，暴露私钥可能会危及安全。
</Note>

## 创建专属地址

您可以使用 [Blockradar 控制面板](https://dashboard.blockradar.co)或 API 为客户生成专属地址，具体取决于您的工作流程和集成需求。

### 1. 使用控制面板

Blockradar 控制面板提供了简单易用的界面来生成新地址。

<img className="block" src="https://mintcdn.com/blockradar/fWg7SGpNBqmitg8P/images/generate-address1.png?fit=max&auto=format&n=fWg7SGpNBqmitg8P&q=85&s=1742fc74afb39319ca55b9204113ddf4" alt="生成地址" width="3456" height="1910" data-path="images/generate-address1.png" />

<Note>
  此截图演示了通过 Blockradar 控制面板生成新地址的过程。此方法适用于手动创建地址或偏好图形界面的团队。
</Note>

### 2. 使用 API

对于程序化或自动化地址生成，您可以使用**创建专属地址 API**。
这对于将地址创建集成到您自己的应用程序或后端系统非常有用。

要为客户创建专属地址，请向我们的[创建专属地址 API](/zh/api-reference/addresses/generate-address)发送 **`POST`** 请求。

<CodeGroup>
  ```bash address.cmd theme={null}
  curl --request POST \
    --url https://api.blockradar.co/v1/wallets/{walletId}/addresses \
    --header 'Content-Type: application/json' \
    --header 'x-api-key: <api-key>' \
    --data '{
    "disableAutoSweep": "OPTIONAL_BOOLEAN",
    "enableGaslessWithdraw": "OPTIONAL_BOOLEAN",
    "metadata": "OPTIONAL_METADATA",
    "name": "OPTIONAL_ADDRESS_NAME",
    "showPrivateKey": "OPTIONAL_BOOLEAN"
  }'
  ```

  ```js address.js theme={null}
  const options = {
    method: 'POST',
    headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
    body: '{"metadata":"OPTIONAL_METADATA","name":"OPTIONAL_ADDRESS_NAME"}'
  };

  fetch('https://api.blockradar.co/v1/wallets/{walletId}/addresses', options)
    .then(response => response.json())
    .then(response => console.log(response))
    .catch(err => console.error(err));
  ```

  ```php address.php theme={null}
  <?php

  $curl = curl_init();

  curl_setopt_array($curl, [
    CURLOPT_URL => "https://api.blockradar.co/v1/wallets/{walletId}/addresses",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_POSTFIELDS => "{\n  \"metadata\": \"OPTIONAL_METADATA\",\n  \"name\": \"OPTIONAL_ADDRESS_NAME\"\n}",
    CURLOPT_HTTPHEADER => [
      "Content-Type: application/json",
      "x-api-key: <api-key>"
    ],
  ]);

  $response = curl_exec($curl);
  $err = curl_error($curl);

  curl_close($curl);

  if ($err) {
    echo "cURL Error #:" . $err;
  } else {
    echo $response;
  }
  ```
</CodeGroup>

### 响应

```json theme={null}
{
  "data": {
    "address": "0xe1037B45b48390285e5067424053fa35c478296b",
    "blockchain": {
      "createdAt": "2024-05-14T11:53:33.095Z",
      "derivationPath": "m/44'/60'/0'/0",
      "id": "85ffc132-3972-4c9e-99a5-5cf0ccb688bf",
      "isActive": true,
      "isEvmCompatible": true,
      "logoUrl": "https://res.cloudinary.com/blockradar/image/upload/v1716800081/crypto-assets/ethereum-eth-logo_idraq2.png",
      "name": "ethereum",
      "slug": "ethereum",
      "symbol": "eth",
      "tokenStandard": "ERC20",
      "updatedAt": "2024-06-14T22:32:11.983Z"
    },
    "configurations": {
      "aml": {
        "message": "Address is not sanctioned",
        "provider": "ofac",
        "status": "success"
      },
      "disableAutoSweep": false,
      "enableGaslessWithdraw": false,
      "showPrivateKey": false
    },
    "createdAt": "2024-10-23T11:13:40.446Z",
    "derivationPath": "m/44'/60'/0'/0/87",
    "id": "0a69c48a-6c6f-422c-bd6a-70de3306a3ac",
    "isActive": true,
    "metadata": {
      "user_id": 1
    },
    "name": "Customer 1",
    "network": "testnet",
    "type": "INTERNAL",
    "updatedAt": "2024-10-23T11:13:40.446Z"
  },
  "message": "Address generated successfully",
  "statusCode": 200
}
```

## 地址白名单

此功能允许您将外部地址加入白名单，以根据钱包的要求进行监控。

已经有其他提供商签发的钱包？您仍然可以将它们接入 Blockradar 并监控充值，无需更改您现有的设置。

### **请求体参数**

| 键                       | 必需    | 类型      | 描述                            |
| ----------------------- | ----- | ------- | ----------------------------- |
| `name`                  | false | string  | 地址名称。                         |
| `address`               | true  | string  | 钱包地址。                         |
| `metadata`              | false | object  | 地址的附加元数据。这将成为与此地址相关的任何交易的一部分。 |
| `showPrivateKey`        | false | boolean | 是否希望地址私钥成为响应的一部分。             |
| `disableAutoSweep`      | false | boolean | 禁用将发送到该地址的资产自动归集到主钱包。         |
| `enableGaslessWithdraw` | false | boolean | 启用此地址的免 Gas 交易。               |
| `privateKey`            | false | string  | 与地址关联的私钥。安全执行操作时需要。           |

<CodeGroup>
  ```bash address.cmd theme={null}
  curl --request POST \
    --url https://api.blockradar.co/v1/wallets/{walletId}/addresses/whitelist \
    --header 'Content-Type: application/json' \
    --header 'x-api-key: <api-key>' \
    --data '{
    "address": "0x742d35Cc6634C0532925a3b8D4C9db96C4b4d8b6",
    "name": "Whitelisted Address",
    "metadata": {"purpose": "external_monitoring", "source": "manual"},
    "showPrivateKey": false,
    "disableAutoSweep": false,
    "enableGaslessWithdraw": true,
    "privateKey": "0x1234567890abcdef..."
  }'
  ```

  ```js address.js theme={null}
  const options = {
    method: 'POST',
    headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
    body: '{"address":"ADDRESS_TO_WHITELIST","metadata":"OPTIONAL_METADATA","name":"OPTIONAL_ADDRESS_NAME"}'
  };

  fetch('https://api.blockradar.co/v1/wallets/{walletId}/addresses/whitelist', options)
    .then(response => response.json())
    .then(response => console.log(response))
    .catch(err => console.error(err));
  ```

  ```php address.php theme={null}
  <?php

  $curl = curl_init();

  curl_setopt_array($curl, [
    CURLOPT_URL => "https://api.blockradar.co/v1/wallets/{walletId}/addresses/whitelist",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_POSTFIELDS => "{\n  \"address\": \"ADDRESS_TO_WHITELIST\",\n  \"metadata\": \"OPTIONAL_METADATA\",\n  \"name\": \"OPTIONAL_ADDRESS_NAME\"\n}",
    CURLOPT_HTTPHEADER => [
      "Content-Type: application/json",
      "x-api-key": <api-key>
    ],
  ]);

  $response = curl_exec($curl);
  $err = curl_error($curl);

  curl_close($curl);

  if ($err) {
    echo "cURL Error #:" . $err;
  } else {
    echo $response;
  }
  ```
</CodeGroup>

### 响应

```json theme={null}
{
  "data": {
    "address": "0x3375154fa32Cb434B044E73a2582C4D2E6518AE4",
    "blockchain": {
      "createdAt": "2024-05-27T08:31:14.966Z",
      "derivationPath": "m/44'/60'/0'/0",
      "id": "74733889-4ecd-403e-9840-94e87c043f24",
      "isActive": true,
      "isEvmCompatible": true,
      "logoUrl": "https://res.cloudinary.com/blockradar/image/upload/v1716800080/crypto-assets/Base_Network_Logo_vqyh7r.png",
      "name": "base",
      "slug": "base",
      "symbol": "eth",
      "tokenStandard": null,
      "updatedAt": "2024-10-27T07:52:16.115Z"
    },
    "configurations": {
      "aml": {
        "message": "Address is not sanctioned",
        "provider": "ofac",
        "status": "success"
      }
    },
    "createdAt": "2024-11-11T16:57:19.160Z",
    "derivationPath": null,
    "id": "b87901a2-45c1-4d2d-8ee7-205ef0c4ddf1",
    "isActive": true,
    "metadata": null,
    "name": "External address",
    "network": "testnet",
    "type": "EXTERNAL",
    "updatedAt": "2024-11-11T16:57:19.160Z"
  },
  "message": "Address whitelisted successfully",
  "statusCode": 200
}
```

## 测试

<Note>通过测试网主钱包生成的地址只能在测试网上接收资产。</Note>

以下是您可以获取测试网资产进行测试的地方列表：

* **Ethereum** - 在此获取测试 USDC：[Circle](https://faucet.circle.com/)
* **Binance Smart Chain** - 在此获取测试 USDT：[Binance](https://www.bnbchain.org/en/testnet-faucet)
* **Polygon** - 在此获取测试 USDC：[Circle](https://faucet.circle.com/)
* **Base** - 在此获取测试 USDC：[Circle](https://faucet.circle.com/)
* **Tron** - 在此获取测试 USDT：[Nileex](https://nileex.io/join/getJoinPage)
* **Solana** - 在此获取测试 USDC：[Circle](https://faucet.circle.com)
* **Optimism** - 在此获取测试 USDC：[Circle](https://faucet.circle.com)
* **Arbitrum** - 在此获取测试 USDC：[Circle](https://faucet.circle.com)
* **Celo** - 在此获取测试 USDC：[Circle](https://faucet.circle.com)

<br />

<br />

Happy hacking! 💚
