Skip to content
Translated page. The English version is the source of truth.

POST /apiv2/subusergen

创建一个关联到您主账户的新 SUB 用户(子账户)。SUB 用户拥有独立的 API 密钥、充值地址和独立的余额,用于进行独立的 Energy 操作。

接口 URL

POST https://netts.io/apiv2/subusergen

请求头

请求头必填描述
Content-Typeapplication/json
X-API-KEY来自 Netts 控制面板的 API 密钥
X-Real-IP来自您白名单中的 IP 地址

请求体

json
{}

无需参数。SUB 用户将自动关联到该 API 密钥所标识的账户。

请求示例

cURL

bash
curl -X POST https://netts.io/apiv2/subusergen \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key" \
  -H "X-Real-IP: your_whitelisted_ip" \
  -d '{}'

Python

python
import requests

url = "https://netts.io/apiv2/subusergen"
headers = {
    "Content-Type": "application/json",
    "X-API-KEY": "your_api_key",
    "X-Real-IP": "your_whitelisted_ip"
}

response = requests.post(url, headers=headers, json={})
data = response.json()

if response.status_code == 200:
    print(f"SUB User ID: {data['user_id']}")
    print(f"Google ID: {data['google_id']}")
    print(f"Email: {data['email']}")
    print(f"Deposit Address: {data['deposit_address']}")
    print(f"API Key: {data['api_key']}")
    print(f"Referral Code: {data['referral_code']}")
    print(f"Parent User ID: {data['referrer_user_id']}")
else:
    print(f"Error: {data.get('detail', 'Unknown error')}")

Node.js

javascript
const axios = require('axios');

async function createSubUser(apiKey, whitelistedIp) {
    const url = 'https://netts.io/apiv2/subusergen';

    const response = await axios.post(url, {}, {
        headers: {
            'Content-Type': 'application/json',
            'X-API-KEY': apiKey,
            'X-Real-IP': whitelistedIp
        },
        timeout: 30000
    });

    const data = response.data;
    console.log(`SUB User ID: ${data.user_id}`);
    console.log(`API Key: ${data.api_key}`);
    console.log(`Deposit Address: ${data.deposit_address}`);
    return data;
}

// Usage
createSubUser('your_api_key', 'your_whitelisted_ip')
    .then(result => console.log('Created:', result))
    .catch(err => console.error('Error:', err.response?.data || err.message));

PHP

php
<?php
$url = 'https://netts.io/apiv2/subusergen';

$options = [
    'http' => [
        'header' => implode("\r\n", [
            "Content-Type: application/json",
            "X-API-KEY: your_api_key",
            "X-Real-IP: your_whitelisted_ip"
        ]),
        'method' => 'POST',
        'content' => '{}',
        'timeout' => 30
    ]
];

$context = stream_context_create($options);
$response = file_get_contents($url, false, $context);
$data = json_decode($response, true);

echo "SUB User ID: {$data['user_id']}\n";
echo "API Key: {$data['api_key']}\n";
echo "Deposit Address: {$data['deposit_address']}\n";
?>

响应

成功响应 (200 OK)

json
{
    "user_id": 1379,
    "google_id": "SUB123456789012345678",
    "email": "[email protected]",
    "name": "SUB123456789012345678",
    "deposit_address": "TExampleAddress1234567890123456789",
    "api_key": "mock1234567890abcdef1234567890ab",
    "referral_code": "A2B4K9",
    "created_at": "2026-03-14T12:00:00",
    "referrer_user_id": 42,
    "comment": "SUB user linked to main user (referrer_user_id). Google ID, Email and Name are mock data (not real) that can be updated via separate endpoint. For API services usage, requests must include this SUB user's API key and IP from main user's whitelist. Calculations use SUB user's balance. Generated deposit address is not active."
}

响应字段

字段类型描述
user_id整数所创建 SUB 用户的唯一 ID
google_id字符串虚拟标识符(格式:SUB + 18 位数字)。并非真实 Google 账户 — 仅用于 SUB 用户的内部标识
email字符串虚拟邮箱(google_id + @gmail.com)。并非真实邮箱地址 — 仅用于内部标识
name字符串显示名称(默认为 google_id)。可在控制面板中修改
deposit_address字符串生成的 TRON 充值地址(默认未激活)
api_key字符串SUB 用户的 API 密钥(前缀:mock
referral_code字符串生成的推荐码(6 个字符)
created_at字符串ISO 8601 格式的创建时间戳
referrer_user_id整数父级用户 ID(创建此 SUB 用户的账户)
comment字符串使用说明和注意事项

虚拟 Google 数据

google_idemailname 字段均为虚拟数据 — 它们并非真实的 Google 账户或邮箱地址。这些字段的存在仅用于系统内部识别 SUB 用户。SUB 用户的名称标签可在控制面板中修改。

SUB 用户工作原理

核心概念

  • 独立余额:每个 SUB 用户都拥有独立于父级的自身 TRX 余额
  • 共享 IP 白名单:SUB 用户的 API 请求将依据父级用户的 IP 白名单进行验证
  • 专属 API 密钥:每个 SUB 用户都会获得一个用于身份验证的专属 API 密钥
  • 父级关联:SUB 用户通过推荐系统永久关联到创建该用户的账户
  • 所有 API 接口:SUB 用户可以使用自身的 API 密钥和余额调用所有 API 接口(order1h、time/order 等)

使用流程

  1. 通过此接口创建 SUB 用户
  2. 通过向充值地址充值 TRX 或划转余额来为 SUB 用户充值
  3. 在后续的 API 请求中使用 SUB 用户的 API 密钥(order1h、time/order 等)
  4. 使用 SUB 用户的 API 密钥通过 userinfo 接口进行监控

错误响应

认证错误 (401)

json
{
    "detail": "X-API-KEY header required"
}

禁止访问 (403)

json
{
    "detail": "Invalid API key or IP not whitelisted"
}

验证错误 (422)

json
{
    "detail": [...],
    "body": {...}
}

服务器内部错误 (500)

json
{
    "detail": "Failed to create mock user: ..."
}

错误代码参考

HTTP 状态码描述
200SUB 用户创建成功
401缺少 API 密钥请求头
403无效的 API 密钥或 IP 不在白名单中
422请求验证错误
500服务器内部错误

注意事项

  • 必须提供空的请求体 {}(Content-Type 必须为 application/json)
  • 生成的充值地址默认未激活
  • SUB 用户的 google_idemail虚拟数据(并非真实 Google 账户),仅用于内部标识
  • SUB 用户的名称和标签可在控制面板中修改
  • SUB 用户的 API 密钥以前缀 mock 开头
  • IP 白名单验证使用的是父级用户的白名单
  • 每个 SUB 用户都拥有独立于父级账户的自身余额
  • 可以通过 DELETE /apiv2/subuserdel 接口删除 SUB 用户
  • 可以通过 POST /apiv2/address/rotate 接口轮换充值地址