Skip to main content

Endpoints

Address security

Method: POST

URL: https://avengerdao.org/api/v1/address-security

Request parameters

NameRequiredDescriptionTypeExample
addressYesAddress needed to be scannedstring0xB8c77482e45F1F44dE1745F52C74426C631bDD52
thresholdNoThe minimum percentage of valid provider responses requireddouble70.0
min_producersNoThe minimum number of valid provider responses requiredint2
selected_provider_listNoOnly return results from selected providersstring array["Hashdit","GoPlus"]
display_non_false_detailsNoOnly return non-false risk detailsbooleantrue

Response

NameNotNullDescriptionTypeExample
statusYesResult of operationstringOK
codeYesResult code of operationint000000000: success

000001: unknown server error occurred during detection

000002: Number of requests exceeded limit

000003: unknown appId

000004: X-Signature-signature header can't be null

000005: verify signature error

  • appid, timestamp, nonce, signature headers can not be null or empty
  • nonce is illegal
  • timestamp has illegal
  • timestamp is expired
  • invalid appid
  • appid has expired
  • invalid signature
  • replay request
  • app is out of count limit
error_dataNoIf code not 000000000stringRisk Score calculation error!
dataYesQuery ResultjsonSee "Data form"

Data

NameRequiredDescriptionTypeExample
addressYesThe scanned addressString0xB8c77482e45F1F44dE1745F52C74426C631bDD52
address_typeYesWhether the address is an EOA account or Contract.

The risk_detail field below may vary depending on this field.
StringEOA

Contract

  • ERC20-Token
  • NFT
trust_scoreYesLikelihood and impact of the trustLikelihood and impact of the trustRange: 0 - 100

The bigger the number, the higher the trust.
risk_type_checkedYesType of the risk checkedJson["basic information","permission control","code vulnerabilities","business logic vulnerabilities"]
sourcesYeslist of suppliers for risk_detailJson(Array)["Certik","GoPlus"]
trust_levelYesVerbal designation for likelihood and impact of the trust:

100: Very High trust

91 - 99: High trust

61 - 90: Medium trust

21 - 60: Low trust

0 - 20: Very Low trust
StringLow
bandYesBanding Rating System

5/5: Very Low Risk

4/5: Low Risk

3/5: Medium Risk

2/5: High Risk

1/5: Significant Risk
String3/5
polling_intervalYesAmount of time before another request for audit results can be sent.Integer600
risk_detailsYesAggregated risk detailsJsonSee details below.
Only risky facts will be listed.
scanned_tsYesThe last risk scan time of the addressLong1654872331
new_address_typeYesmore detailed address_type,in the future it will instead of address_typeStringEOA
ERC20
ERC721
ERC1155
ERC4626
chain_idYesThe address chain idInteger56
provider_scoresYesThe individual provider scoresJson{"Hashdit":80,"GoPlus":75}

Risk_details

The risk_details will comprise of an array of objects, the object contain the following fields

  • name : name of the check.
  • value: check result
  • risk_type_checked : (Optional) a list of risk type that risk fact belongs to
  • sources: a list of provider names
  • risk_level: indicates the level of risk (LOW_TRUST, MEDIUM_TRUST, HIGH_TRUST, BASE_INFO, LOW_RISK, MEDIUM_RISK, HIGH_RISK)
  • risk_desc: a short description for each detail

E.g.:

{
"risk_details": [
{
"name": "is_open_source",
"value": "true",
"risk_type_checked": [
"basic information"
],
"sources": ["GoPlus", "Hashdit"],
"risk_level": "HIGH_RISK",
"risk_desc": "Un-open-sourced contracts may hide various unknown mechanisms and are extremely risky."
},
{
"name": "hidden_owner",
"value": "true",
"risk_type_checked": [
"permission control"
],
"sources": ["GoPlus", "Hashdit"],
"risk_level": "MEDIUM_RISK",
"risk_desc": "The ability to hide the ownership of a contract can be used to manipulate the blockchain data."
}
]
}

Security Providers

Method: GET

URL: https://avengerdao.org/api/v1/providers

Response

NameNotNullDescriptionTypeExample
statusYesResult of operationstringOK
codeYesResult code of operationint000000000: success

000001: unknown server error occurred during detection

000002: Number of requests exceeded limit

000003: unknown appId

000004: X-Signature-signature header can't be null

000005: verify signature error

error_dataNoIf code not 000000000stringInternal error!
dataYesQuery Resultstring array[ "Hashdit", "GoPlus" ]

Transaction-security

Method: POST

URL: https://avengerdao.org/api/v1/transaction-security

Request parameters

NameRequiredDescriptionTypeExample
chain_idNoChain id ( Network ) of address.int56
networkYesWe currently support 4 networks: BTC, BSC, ETH, TRXstringBSC
src_addressNoAddress of TW user initiating transactionstring0x8c18f231ce0fc513987ec402a595409e6b394949
dest_addressYesAddress of counterpartystring0x8c18f231ce0fc513987ec402a595409e6b394949
memoNoMemo is an additional address feature necessary for identifying a transaction recipient beyond a wallet addressstringmemo
token_codeNoCurrency token code like BTC,ETHstringBTC
token_amountNoTransaction Amount for the tokendouble1.2
fiat_amount_usdNoFiat amount in USD equivalent of token amountdouble50
request_detailNoNested Json , Address type(CA, EOA), DApps type(DeFi, NFT, Bridge. etc.), Operation Type(withdraw, deposit)stringJsonString
ip_addressNoTW User IP address. IP Address of user initiating transaction.string192.2.150.236
device_idNoDevice ID of user initiating transaction. A device ID is a unique, anonymized string of numbers and letters that identifies every individual smartphone.string00000000-00000000-01234567-89ABCDEF

Response

NameNotNullDescriptionTypeExample
statusYesResult of operationstringOK
codeYesResult code of operationint000000000: success

000001: unknown server error occurred during detection

000002: Number of requests exceeded limit

000003: unknown appId

000004: X-Signature-signature header can't be null

000005: verify signature error

  • appid, timestamp, nonce, signature headers can not be null or empty
  • nonce is illegal
  • timestamp has illegal
  • timestamp is expired
  • invalid appid
  • appid has expired
  • invalid signature
  • replay request
  • app is out of count limit
error_dataNoIf code not 000000000stringTransaction Risk Score calculation error !
dataYesQuery ResultjsonSee "Data form"

Data

NameRequiredDescriptionTypeExample
trace_idYesunique trace_idStringe7bb2eefc3a842368c3b74e1f686301d
risk_levelYesrisk level of the transaction:

HIGHLY_SUSPICIOUS

SUSPICIOUS

MLOW_RISK
StringHIGHLY_SUSPICIOUS
remarkNoremarkStringThe target address in this transaction is either confirmed or highly likely to be involved in fraudulent activities
source_detailNosource detailsJsonSee details below.

SourceDetail

NameRequiredDescriptionTypeExample
sourceNorisk sourceStringDS_GRAYLIST
risk_levelNorisk level of the transaction:

HIGHLY_SUSPICIOUS

SUSPICIOUS

MLOW_RISK
StringSUSPICIOUS
category_sub_category_mapNocategoryJsonSee details below.

E.g.:

{
"source_detail":[
{
"source":"DS_GRAYLIST",
"category_sub_category_map":{
"HACKER":[
"RANSOMWARE",
"PHISHING"
],
"SCAM":[
"FAKE_INVESTMENT",
"JOB_SCAM"
]
},
"risk_level":"SUSPICIOUS"
},
{
"source":"ROC_BLACKLIST",
"category_sub_category_map":{
"AML":[
"AML"
]
},
"risk_level":"HIGHLY_SUSPICIOUS"
}
]
}

RiskLevel

Risk LevelImplicationSuggested Action
HIGHLY_SUSPICIOUSThe target address in this transaction is either confirmed or highly likely to be involved in fraudulent activities.Pop out a strong WARNING message to user
SUSPICIOUSThe target address in this transaction is likely to be involved in fraudulent or other illicit activities.Pop out a moderate WARNING message to user
LOW_RISKThe target address in this transaction is currently not known to be involved in any illicit activities to the best of our knowledge. Please note there is still a chance that the illicit activities haven't been detected by us yet.No intervention with users

Note: the risk level of an individual address is subject to change along the time, while it does new activities and we collect new data around it.

Category

Risk_CategoryRisk_SubcategoryDescription
SCAMFAKE_INVESTMENTOperations are from account owner due to investment scam
SCAMFAKE_GIVEAWAYOperations are from account owner due to give away scam
SCAMKNOWN_PERSONUser scammed by a known person
SCAMFAKE_SUPPORTSomeone claims they are Customer Support from a certain party to scam user
SCAMJOB_SCAMScammer recommend job/income opportunity for victim but ask for additional fee for that
SCAMPONZI_SCHEMEScammer(group) introduce their fake service/product with multiple VIP user levels and ask victim to recommend more friends into Ponzi Scheme
SCAMSOCIAL_SCAMVictims claim that he got to know the scammer via a social communication platform.
SCAMOTHER_SCAMCommon scam, can't be classified to the above sub_category.
HACKERRANSOMWAREA type of malware that threatens to publish the victim's personal data or permanently block access to it unless a ransom is paid.
HACKERPHISHINGUser received phishing URL by SMS, email, etc.
HACKERSEXTORTIONSexual exploitation in which threatened release of sexual images or information.
HACKERDARK_MARKETMalicious addresses from the dark market trading.
HACKEROTHER_HACKERTaking another person's property without that person's permission, and can’t be classified to the above sub_category.
AMLAMLAddresses reported for money laundering, gambling, related to criminal organization or terrorist organization etc
OTHEROTHERCan’t be categorized due to historical reasons