Appearance
POST /apiv2/subusergen
Buat SUB-user (sub-akun) baru yang terhubung ke akun utama Anda. SUB-user memiliki API key, alamat deposit, dan saldo terpisah masing-masing untuk operasi energi yang independen.
URL Endpoint
POST https://netts.io/apiv2/subusergenHeader Permintaan
| Header | Wajib | Deskripsi |
|---|---|---|
| Content-Type | Ya | application/json |
| X-API-KEY | Ya | API key Anda dari dasbor Netts |
| X-Real-IP | Ya | Alamat IP dari whitelist Anda |
Badan Permintaan
json
{}Tidak ada parameter yang diperlukan. SUB-user secara otomatis terhubung ke akun yang diidentifikasi oleh API key.
Contoh Permintaan
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";
?>Respons
Respons Berhasil (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."
}Bidang Respons
| Bidang | Tipe | Deskripsi |
|---|---|---|
| user_id | integer | ID unik dari SUB-user yang dibuat |
| google_id | string | Pengidentifikasi palsu (format: SUB + 18 digit). Bukan akun Google asli — hanya digunakan untuk identifikasi internal SUB-user |
| string | Email palsu (google_id + @gmail.com). Bukan alamat email asli — hanya digunakan untuk identifikasi internal | |
| name | string | Nama tampilan (default adalah google_id). Dapat diubah di dasbor |
| deposit_address | string | Alamat deposit TRON yang dibuat (tidak aktif secara default) |
| api_key | string | API key untuk SUB-user (awalan: mock) |
| referral_code | string | Kode referral yang dibuat (6 karakter) |
| created_at | string | Timestamp pembuatan dalam format ISO 8601 |
| referrer_user_id | integer | ID pengguna induk (akun yang membuat SUB-user ini) |
| comment | string | Petunjuk penggunaan dan catatan |
Data Google Palsu
Bidang google_id, email, dan name adalah data palsu — data tersebut bukan akun Google atau alamat email asli. Bidang-bidang ini hadir semata-mata untuk identifikasi internal SUB-user di dalam sistem. Nama dan tag dari SUB-user dapat diubah di dasbor.
Cara Kerja SUB-User
Konsep Utama
- Saldo terpisah: Setiap SUB-user memiliki saldo TRX sendiri yang independen dari induknya
- Whitelist IP bersama: Permintaan API SUB-user divalidasi terhadap whitelist IP milik induk
- API key sendiri: Setiap SUB-user mendapatkan API key unik untuk autentikasi
- Keterikatan induk: SUB-user terhubung secara permanen ke akun pembuat melalui sistem referral
- Semua endpoint API: SUB-user dapat menggunakan semua endpoint API (order1h, time/order, dll.) dengan API key dan saldo mereka sendiri
Alur Penggunaan
- Buat SUB-user melalui endpoint ini
- Isi dana SUB-user dengan mendepositkan TRX ke alamat depositnya atau mentransfer saldo
- Gunakan API key SUB-user pada permintaan API berikutnya (order1h, time/order, dll.)
- Pantau melalui endpoint userinfo menggunakan API key SUB-user
Respons Kesalahan
Kesalahan Autentikasi (401)
json
{
"detail": "X-API-KEY header required"
}Dilarang (403)
json
{
"detail": "Invalid API key or IP not whitelisted"
}Kesalahan Validasi (422)
json
{
"detail": [...],
"body": {...}
}Kesalahan Server Internal (500)
json
{
"detail": "Failed to create mock user: ..."
}Referensi Kode Kesalahan
| Status HTTP | Deskripsi |
|---|---|
200 | SUB-user berhasil dibuat |
401 | Header API key tidak ada |
403 | API key tidak valid atau IP tidak ada dalam whitelist |
422 | Kesalahan validasi permintaan |
500 | Kesalahan server internal |
Catatan
- Badan permintaan kosong
{}wajib disertakan (Content-Type harus berupa application/json) - Alamat deposit yang dibuat tidak aktif secara default
google_iddanemailmilik SUB-user adalah data palsu (bukan akun Google asli), hanya digunakan untuk identifikasi internal- Nama dan tag SUB-user dapat diubah di dasbor
- API key milik SUB-user diawali dengan prefiks
mock - Validasi whitelist IP menggunakan whitelist milik pengguna induk
- Setiap SUB-user memiliki saldo sendiri, terpisah dari induk
- SUB-user dapat dihapus melalui endpoint DELETE /apiv2/subuserdel
- Alamat deposit dapat dirotasi melalui endpoint POST /apiv2/address/rotate