API დოკუმენტაცია
რეალურ დროში WebSocket API USDT/USDC ბანის მოვლენების მონიტორინგისთვის Tron და Ethereum ქსელებზე.
დაწყება
დაუკავშირდით WebSocket ენდპოინტს ბანის მოვლენების რეალურ დროში მისაღებად და მისამართების შესახებ ინფორმაციის მოსათხოვად.
wss://api.usdtbanlist.com/ws?apiKey=YOUR_API_KEYმიიღეთ API გასაღები
გახსენით @USDTBanBot Telegram-ში, გადადით პროფილში → API Key გასაღების გენერაციისთვის.
ავთენტიფიკაცია
ჩასვით API გასაღები კავშირის URL-ში ან გაგზავნეთ auth შეტყობინება დაკავშირების შემდეგ.
wss://api.usdtbanlist.com/ws?apiKey=mk_your_api_key_here{
"type": "auth",
"apiKey": "mk_your_api_key_here"
}{
"type": "connected",
"clientId": "client_xxx",
"authenticated": true,
"tier": "free" // or "premium"
}მოვლენები
დაკავშირებისა და ავთენტიფიკაციის შემდეგ, მიიღებთ ბანის მოვლენებს რეალურ დროში.
| მოვლენის ტიპი | აღწერა | ტარიფი |
|---|---|---|
ban_submitted | ბანი ელოდება დადასტურებას მულტისიგში | პრემიუმ |
ban_executed | მისამართი დაბანილია (დადასტურებული) | უფასო |
unban_submitted | ბანის მოხსნა ელოდება დადასტურებას მულტისიგში | პრემიუმ |
unban_executed | მისამართს ბანი მოეხსნა | უფასო |
destroy_submitted | სახსრების დაწვა ელოდება დადასტურებას მულტისიგში | პრემიუმ |
destroy_executed | სახსრები დაიწვა დაბანილი მისამართიდან | უფასო |
{
"type": "event",
"event": {
"id": "uuid",
"network": "trx", // "trx" or "eth"
"eventType": "ban_executed",
"address": "41...", // hex format
"addressBase58": "T...", // TRX only
"symbol": "USDT",
"txHash": "...",
"blockNumber": 12345678,
"timestamp": "2024-01-15T12:00:00Z",
"amount": "1234.56", // balance at event time
"amountRaw": "1234560000"
}
}JSON-RPC მეთოდები
გაგზავნეთ JSON-RPC 2.0 მოთხოვნები მონაცემების მოსათხოვად და გამოწერების სამართავად.
pingკავშირის ჯანმრთელობის შემოწმება
{
"jsonrpc": "2.0",
"id": 1,
"method": "ping"
}{
"jsonrpc": "2.0",
"id": 1,
"result": "pong"
}getStatusმიმდინარე კავშირის სტატუსისა და ლიმიტების ინფორმაციის მიღება
{
"jsonrpc": "2.0",
"id": 1,
"method": "getStatus"
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tier": "free",
"subscriptions": ["all"],
"rateLimit": {
"used": 5,
"limit": 10,
"windowMs": 60000
}
}
}subscribeმოვლენების არხებზე გამოწერა
{
"jsonrpc": "2.0",
"id": 1,
"method": "subscribe",
"params": {
"channels": ["all"] // "all", "eth", "trx", or address
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"subscribed": ["all"],
"total": 1
}
}unsubscribeარხებიდან გამოწერის გაუქმება
{
"jsonrpc": "2.0",
"id": 1,
"method": "unsubscribe",
"params": {
"channels": ["eth"] // empty array to unsubscribe all
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"unsubscribed": ["eth"],
"remaining": 1
}
}checkAddressშემოწმება, დაბანილია თუ არა მისამართი
{
"jsonrpc": "2.0",
"id": 1,
"method": "checkAddress",
"params": {
"address": "TLJpijVuVyjAtKRahhGTAFkpZxfpzHMtWe"
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"address": "TLJpijVuVyjAtKRahhGTAFkpZxfpzHMtWe",
"network": "trx",
"isBanned": false,
"usdt_status": "active",
"usdc_status": "active",
"usdt_balance": "0.00",
"usdc_balance": "0.00",
"tag": { "type": "GasFree", "tag": "GasFree" },
"events": [{ "event_name": "UnBlock", "volume": "0.00", "symbol": "USDT", "status": "executed" }],
"walletScore": { "totalScore": 45, "riskLevel": "medium" },
"connections": { "totalConnections": 0, "categories": [] },
"formattedText": "..."
}
}getAddressInfoმისამართის შესახებ დეტალური ინფორმაციის მიღება
{
"jsonrpc": "2.0",
"id": 1,
"method": "getAddressInfo",
"params": {
"address": "TLJpijVuVyjAtKRahhGTAFkpZxfpzHMtWe",
"network": "trx"
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"address": "TLJpijVuVyjAtKRahhGTAFkpZxfpzHMtWe",
"network": "trx",
"info": {
"label": "Exchange Wallet",
"firstSeen": "2023-01-15T10:00:00Z",
"lastSeen": "2024-01-10T15:30:00Z"
},
"cached": true
}
}მოთხოვნების ლიმიტები
| ტარიფი | RPC მოთხოვნები | მოვლენები |
|---|---|---|
| უფასო | 10 / წუთში | მხოლოდ შესრულებული |
| პრემიუმ | 100 / წუთში | ყველა მოვლენა (მოლოდინში + შესრულებული) |
მოთხოვნების ლიმიტის გადაჭარბებისას მიიღებთ შეცდომის პასუხს:
{
"jsonrpc": "2.0",
"id": 1,
"error": {
"code": -32000,
"message": "Rate limit exceeded"
}
}მაგალითები
const WebSocket = require('ws');
const API_KEY = 'mk_your_api_key';
const ws = new WebSocket(`wss://api.usdtbanlist.com/ws?apiKey=${API_KEY}`);
ws.on('open', () => {
console.log('Connected');
// Subscribe to TRX events
ws.send(JSON.stringify({
jsonrpc: '2.0',
id: 1,
method: 'subscribe',
params: { channels: ['trx'] }
}));
});
ws.on('message', (data) => {
const msg = JSON.parse(data);
if (msg.type === 'event') {
console.log('Ban event:', msg.event.eventType, msg.event.address);
}
if (msg.jsonrpc) {
console.log('RPC response:', msg);
}
});
ws.on('error', console.error);import json
import websocket
API_KEY = 'mk_your_api_key'
def on_message(ws, message):
msg = json.loads(message)
if msg.get('type') == 'event':
event = msg['event']
print(f"Ban event: {event['eventType']} - {event['address']}")
if msg.get('type') == 'connected' and msg.get('authenticated'):
# Subscribe to all events
ws.send(json.dumps({
'jsonrpc': '2.0',
'id': 1,
'method': 'subscribe',
'params': {'channels': ['all']}
}))
def on_error(ws, error):
print(f"Error: {error}")
ws = websocket.WebSocketApp(
f"wss://api.usdtbanlist.com/ws?apiKey={API_KEY}",
on_message=on_message,
on_error=on_error
)
ws.run_forever()დახმარება გჭირდებათ?
დაგვიკავშირდით Telegram-ში მხარდაჭერის ან ფუნქციის მოთხოვნისთვის.
მხარდაჭერასთან დაკავშირება