Graph

Did this wallet pay a specific venue, and how much

Answers one question well: 'has this wallet sent money to <venue>'. Returns the verdict over the whole window (found), per-asset totals, and the individual transfers.

A found: false is only conclusive when you passed since/until. Without a window the counterparty list comes from an index that can lag, and the response says so in scan.negative_conclusive. Read that field before reporting a wallet as clean of a venue.

entity matches EXACTLY after lowercasing, stripping punctuation and stripping a trailing parenthetical: '1xbet' matches '1xBet' and '1xBet (deposit)'; 'satoshi' does NOT match 'Satoshibet'.

post/v1/entity-transfers

Request

  • Base URL: https://intelapi.publicaml.org
  • URL: https://intelapi.publicaml.org/v1/entity-transfers
  • Auth: one of:
    • API key in header X-API-Key
    • none

Request body

addressstring required

The wallet under investigation.

The address to look up, in its normal display form.

  • bitcoin — base58 (1…, 3…) or bech32/bech32m (bc1…, bc1p…). Case is SIGNIFICANT for base58; do not lowercase it. A 64-character lowercase TRANSACTION HASH is also accepted here: on bitcoin the graph is bipartite (address → transaction → address), so a transaction is a node with its own neighbours and its own findings. CoinJoin is classified on the transaction, not on the participants, and this is how you read it.
  • ethereum, bsc — 0x + 40 hex characters, any case.
  • tron — base58 (T…, 34 characters); the 0x 20-byte form is accepted too and is what the API stores and echoes.
chain'bitcoin' | 'ethereum' | 'bsc' | 'tron' required

Which blockchain the address belongs to. Send one of the four values in the enum. The short forms used by the older clients (ETH, BTC, TRX, BNB) and any capitalisation are still accepted, but responses always echo the canonical spelling.

Getting this wrong is the single commonest integration bug: the same 0x-prefixed address exists on ethereum, bsc and tron and means a different wallet on each, so the chain is part of the identity, never a hint. If it does not match the address format the call fails with invalid_address_format, which names the chain the address does look like.

entitystring

Venue name. Exact match — see the endpoint description.

categorystring

Entity type: gambling, cex, mixer, … One of entity/category is required.

direction'out' | 'in' | 'both'

'out' = money leaving the wallet.

min_amountnumber

Inclusive bound PER TRANSFER, in the asset's own units (1 = 1 BTC, 1 USDT). Not a threshold on the total.

max_amountnumber
tokenstring

EVM only; rejected on bitcoin.

limitinteger
offsetinteger

Response

The verdict, the totals and the transfers.

foundboolean

The verdict over the whole window, not just this page.

entityobject

How the name resolved: matched_names are the canonical spellings hit, suggestions appear when it resolved to nothing.

transfers_below_mininteger

Non-zero next to found: false means the wallet DID pay, outside the bounds you asked for.

transfers_above_maxinteger
transfersobject[]
has_moreboolean

Changes

No recorded changes to this operation across all 1 revision of this API.