Wallet intelligence API: address risk, labels and approval checks

Last updated:

What teams use it for

  • Deposit and withdrawal screening. Score the counterparty with address risk score and check who funded a fresh wallet with funder risk, then route unknown or risky results to review.
  • Wallet and counterparty labeling. Name exchange wallets, bridges and protocol contracts with address labels, or up to 200 at a time with the batch endpoint.
  • Approval checks before signing. Before a user signs approve or permit, check the spender with token approval risk.
  • Investigations. Follow money in and out of an address with the fund flow graph, optionally for one token.
  • Deployer lookup. Get the creator, transaction and block of a contract with contract creation.
  • Contract inspection and pre-trade checks. Decode calldata against an ABI with calldata decode and run a read-only transaction simulation before you sign anything.

One request

curl -X POST https://triport.io/v1/intelligence/address-risk \
  -H "x-token: $TRIPORT_API_KEY" -H "Content-Type: application/json" \
  -d '{"chain":"eth","address":"0x28c6c06298d514db089934071355e5743bf21d60"}'
# {"state":"ok","meta":{"cached":true,"complete":false,...},
#  "data":{"subject":{...},"assessment":{"address":"0x28c6…","risk":{"value":"1","level":"none"}}}}

Every answer has the same envelope: a state (ok, empty, partial, stale, unsupported or unavailable), metadata with cache and freshness, the data, and an error when there is one. The rules for reading it are on the Intelligence API overview; copy-paste code is in the code examples.

Methods

MethodRouteChains
Address labelsPOST /v1/intelligence/labelsEthereum, Solana, Avalanche C-Chain
Address labels (batch)POST /v1/intelligence/labels/batchEthereum, Solana, Avalanche C-Chain
Implementation labelsPOST /v1/intelligence/implementation-labelsEthereum
Address risk scorePOST /v1/intelligence/address-riskEthereum
Token approval riskPOST /v1/intelligence/approval-riskEthereum
Fund flow graphPOST /v1/intelligence/fund-flowEthereum
Funder riskPOST /v1/intelligence/funder-riskEthereum
Contract creation and deployerGET /v1/intelligence/{chain}/{address}/creationEthereum
Storage variable listPOST /v1/intelligence/variablesEthereum
Function selector lookupPOST /v1/intelligence/methodsNo chain (global)
SearchPOST /v1/intelligence/searchNo chain (global)
Token marketsPOST /v1/intelligence/token-marketsEthereum
Latest block (intelligence)GET /v1/intelligence/{chain}/latest-blockEthereum
Conservative blockGET /v1/intelligence/{chain}/blockEthereum
Base fee estimateGET /v1/intelligence/{chain}/base-feeEthereum
Contract verification metadataPOST /v1/intelligence/verifyEthereum
Calldata decodePOST /v1/intelligence/decodeNo chain (global)
Transaction simulationPOST /v1/intelligence/simulateEthereum
Function signature lookupPOST /v1/intelligence/signatureEthereum

Address labels come as a single and a batch endpoint, so 18 methods use 19 routes. The full list, including the routes that are not released yet, is in the method reference.

Plans

Plan prices from Triport pricing. The Intelligence API has one per-second category, intelligence; each address in a batch counts as one request.

WhatFree trial (7 days)Basic $20/moPro $249/moBusiness $499/moEnterprise from $999/mo
Intelligence API———30 RPS sustained · up to 60 burst150 RPS sustained · up to 300 burst

A flat monthly price, no credits or overage. Going over the limit returns HTTP 429 with a retry hint.

What it does not do

  • Ethereum first. Chain-specific methods answer on Ethereum; address labels also on Solana and Avalanche C-Chain. Other chains, including the other networks Triport serves over RPC, answer 422 unsupported for now.
  • Unknown is not safe. A missing score is null with level unknown, never zero. A missing label is not a clean address.
  • Bounded graphs. Fund-flow graphs are bounded and say whether history is complete. An uncached graph for a busy address can take tens of seconds; set a client timeout of at least a minute.
  • A simulation is not a transaction. It returns a reference with an unknown outcome, not a receipt. Nothing is signed or broadcast. For the canonical head, receipts and finality, use Ethereum JSON-RPC.
  • Contract metadata coverage is partial. Verification metadata is not available for every contract; when you hold the ABI, calldata decode is the dependable path.
  • No identity verification. A label is an attribution hint, not proof of who controls a wallet. The API does not make your compliance decision.

FAQ

What is the Triport Intelligence API?
A REST API under https://triport.io/v1/intelligence/ that answers questions about an address or a transaction before you act on it: its label, its AML risk score, the risk of a spender before approval, where its funds came from, who deployed a contract, and what a call would do. It has 18 methods and uses the same API key as Triport RPC.
Which plan do I need?
Business or Enterprise. The Intelligence API is included in those plans: there is no separate price and no per-call weight. Business gets 30 requests per second in the intelligence category and Enterprise 150. The key needs the intelligence:read scope.
Which chains are supported?
Ethereum for every chain-specific method. Address labels also cover Solana and Avalanche C-Chain, and search, selector lookup and calldata decode take no chain at all. More chains are coming; new ones are announced in the changelog.
Does an empty risk answer mean the address is safe?
No. An unknown score comes back as a null value with level unknown, never as zero, and an empty fund-flow graph is not proof that no transfers happened. Treat unknown as a reason for review, not as a pass.
Can I screen many addresses at once?
Yes. Address labels take up to 200 addresses per request and approval risk up to 50 spenders. Each address in a batch counts as one request against the per-second limit, so a batch is not a way around it.
Does the API make the compliance decision for me?
No. It returns labels, scores and graphs with their coverage. Which levels you block, review or allow, and how you document it, is your policy. Keep the full answer with the decision so a reviewer can see what it was based on.