Skip to main content
The ThreatClient provides access to Webacy’s threat and risk analysis APIs. Use it to analyze addresses for security risks, screen for sanctions, check smart contract vulnerabilities, verify URL safety, assess ERC-4626 vault risk, and monitor stablecoin/RWA depeg risk.

Initialization

Resources

The ThreatClient provides access to these resources:

Addresses

Analyze Address Risk

Get comprehensive risk analysis for any blockchain address.
Response:
Options:

Check Sanctions

Screen an address against OFAC and other sanctions lists.

Check Address Poisoning

Detect address poisoning (dust attack) attempts.

Get Quick Profile

Get a lightweight risk profile with optional token approvals.
Options:

Contracts

Analyze Contract

Get security analysis for a smart contract.

Get Contract Tax

Check buy/sell tax for a token contract.

Get Code Analysis

Perform static code analysis on a contract’s source code.
Response:

URL Safety

Check URL

Analyze a URL for phishing and malware.

Wallets

Get Approvals

List token approvals for a wallet.

Get Transactions

Get risk-scored transaction history for a wallet.
Response:

Account Trace

Trace Fund Flows

Trace multi-hop fund flows for compliance and forensics.
Response:

Usage

Get API Usage

Monitor your API usage and quotas.

Get Max RPS

Get maximum requests per second for an organization over a time period.
Options:

Transactions

Analyze Transaction

Get risk analysis for a blockchain transaction.
Supported chains: ETH, BASE, BSC, POL, OPT, ARB, SOL, STELLAR Options:

Scan

Scan Transaction

Scan a raw transaction for risks before signing.
Supported chain IDs: 1 (ETH), 56 (BSC), 137 (POL), 10 (OPT), 42161 (ARB), 8453 (BASE)

Scan EIP-712 Message

Scan an EIP-712 typed data message before signing.

Batch

You can analyze multiple addresses, contracts, or transactions in a single request using the batch methods.
Prerequisites: You need an initialized ThreatClient and a Chain import. See Installation if you haven’t set up the SDK yet.

Batch Addresses

You can analyze multiple addresses for risk in one call.

Batch Contracts

You can analyze multiple smart contracts for risk in one call.

Batch Transactions

You can analyze multiple transactions for risk in one call.
Request parameters:

Advanced: Large Batches

When you have a large number of items to analyze, you can split them into chunks and handle partial failures gracefully.

Vaults

List Vaults

Get a paginated list of ERC-4626 vaults with risk scores and ecosystem aggregates.
Filtering and sorting:
Options:

List Vaults with Cursor Pagination

For efficient sequential pagination, use cursor-based pagination.

Get Vault Detail

Get detailed risk data for a specific vault, including looping markets, composition, and protocol-specific data.
Options:

Get Vault TVL History

Get the daily total value locked (USD) time series for a vault. The response hoists the most recent passing point to a latest aggregate so you can render the current value without iterating the full series.
By default the chart endpoints drop samples flagged as capped, diverged, or spike, so a single bad pricing artifact never appears as a misleading peak or trough — count may be smaller than the requested window and filtered_count reports how many points were excluded. A visible chart kink that lines up with filtered_count is normal and does not indicate a missed cron tick. stale_reason disambiguates the four post-filter states (fresh, pipeline_lag, all_filtered, no_samples_yet); stale: boolean is preserved as a back-compat alias (true iff stale_reason !== 'fresh'). See Quality filtering for the full quality_flag table and when to set includeFlagged: true. Tracked vaults with no samples yet return count: 0, latest: null, and stale_reason: 'no_samples_yet'; vaults outside the verified-vaults catalog throw a 404. Options:

Get Vault Share Price History

Get the daily share price (USD) time series for a vault, with per-point trailing 7-day APY and a smoother trailing 30-day APY on the latest aggregate.
Per-point apy_trailing_7d is computed as (price[t] / price[t-7d])^(365/7) - 1 and is null when the 7-day look-back sample is missing or the absolute APY exceeds 100 (clamped to suppress single-day pricing artifacts). latest.apy_trailing_30d uses the same shape over a 30-day window and is only surfaced on the latest aggregate. The same quality-filtering rules as getTvlHistory apply: samples flagged as capped / diverged / spike are dropped from the default response, filtered_count reports how many were excluded (the 7-day look-back samples used to compute apy_trailing_7d are exempt and do not count toward filtered_count), and stale_reason disambiguates the post-filter staleness states. See Quality filtering for the full table and pass includeFlagged: true to receive the raw series for research or marker overlays. The 404 behaviour matches getTvlHistory. Options:

Depeg Monitor (RWA)

List Pegged Tokens

Get a paginated list of stablecoins and RWAs with depeg risk scores and ecosystem aggregates.
Filtering and sorting:
Options:

Get Token Detail

Get detailed depeg risk for a specific pegged token, including historical time series and depeg events.
Options:

Full Example

Next Steps

TradingClient

Holder analysis and sniper detection

Vault Risk API

Full vault risk API reference

Depeg Monitor API

Full depeg monitoring API reference

Error Handling

Handle errors gracefully

Chains

Supported blockchain networks

API Reference

Full API documentation