1、 Address deposit|withdraw risk alert api
Description: Support wallet address deposit or withdraw transaction scenarios, pre-detect address risks (e.g., whether it is blacklisted, whether it has directly or indirectly blacklisted transactions, etc.).
1、URL
GET /openapi/v2/risk/address/check
2、Header Parameters
| Parameter name | Data type | Required | Description |
| timestamp | int | true | Timestamp (in seconds) |
| sign | string | true | Signature sha256("timestamp=timestamp value&secret=secretkey value") |
3、Request Parameters
| Parameter name | Data type | Required | Description |
| api_key | string | true | apikey |
| network | string | true | Mainnet name (Bitcoin、Ethereum..... details for "Support mainnet tokens") |
| address | string | true | Wallet address |
| address_role | string | true | Address role( from: Transfer out address; to: Transfer to address ) |
| coin | string | true | Token Name (btc、eth、trx、bnb、usdt、usdc......details for "Support mainnet tokens") |
| app_id | string | true | app id (obtained from the KYT configuration page on the WEB side) |
| value | float64 | false | Token value |
| query_indirect_risk | bool | false | Whether to query indirect risk transactions (default value is true) |
| business_tag | string | false | Business type( wallet: wallet exchange: exchange NFT: nft ... etc.) |
| kyc_status | int | false | KYC Status ( 1: KYC certified 2: Not KYC certified ) |
| kyc_level | int | false | KYC level ( 1: KYC Level 1 2: KYC Level 2 3: KYC Level 3 4: KYC Level 4 ) |
4、Response Parameters
API key expired or invalid, interface returned:
{
"code": -1,
"data": {},
"message": "api_key is invalid"
}
The apikey and secrectkey have been verified successfully and returned normally:
{
"code": 200, //200:Represents success
"msg": "success",
"data": {
"unique_id": "0140......8be5", //Unique ID (used to query history)
"risk_level": "severe", //Risk level (severe, high, medium, low, unknown)
"risk_code": 4444, //Risk code
"risk_source": { //Risk source
"is_private_whitelist": false, //Whether to hit private whitelist
"is_private_blacklist": false, //Whether to hit private blacklist
"black_address_type": "Blackmail Scam", //Blacklist type
"black_address_label": [ //Blacklist label
"attacker",
"hacker"
],
"direct_risk_list":[ //List of direct risk transactions
{
"black_address": "1KHw......aGbX", //Blacklist addresses for direct transactions
"black_address_type": "Blackmail Scam", //Type of risk
"tx_hash": "2bc34......b693", //Transaction hash
"black_address_label": [ //Blacklist label
"attacker",
"hacker"
],
},
......
],
"indirect_risk_list":[ //List of indirect risk transactions
{
"indirect_level": 2, //Indirect level
"black_address":"0x99......4bE1", //Blacklist of indirect transactions
"black_address_type": "Blackmail Scam", //Type of risk
"indirect_tx_list":[ //Indirect transaction hash
"0x74......2a90"
"0x56......9d4b"
],
"black_address_label": [ //Blacklist label
"attacker",
"hacker"
],
},
......
]
}
}
}
| Parameter name | Data type | Description |
| code | Int | 200: The request was successful -2: The mainnet is not supported |
| message | string | Interface Request Status Description |
| unique_id | string | Unique id (identifies the current request, used to query history) |
| risk_level | string | Risk level( severe high medium low none ) |
| risk_code | int | Risk code( 0: unknown -1: Not found 4444: hit blacklist details for "Risk_Code Instruction manual") |
| risk_source | json | Risk source |
| risk_source.is_private_whitelist | boolean | Whether to hit private whitelist |
| risk_source.is_private_blacklist | boolean | Whether to hit private blacklist |
| risk_source.black_address_type | string | The blacklist type of the query address |
| risk_source.black_address_label | string | Check the blacklist label of the address |
| risk_source.direct_risk_list | jsonArray | Query address List of direct risk transactions involved |
| risk_source.indirect_risk_list | jsonArray | Query the list of indirect risk transactions that the address participates in |