Wallets API

Who deployed an ERC-4337 smart account, and how much it is used

One account-abstraction smart account: its factory, deployment operation, transaction and time, its user-operation count and the smart-account code it runs.

GET/api/external/wallet-analysis/smart-account/{chain}/{address}

What it returns

One account-abstraction (ERC-4337) smart account on one chain: the factory that deployed it, the user operation, transaction and time of that deployment, how many user operations it has sent, and the smart-account code it runs. An ordinary wallet that delegates to smart-account code (EIP-7702) has no factory and no deployment. account is null when the address never sent a user operation on the chain.

Chains

  • Ethereum ETH
  • Robinhood Chain RHC
  • Optimism OP
  • Scroll SCROLL

Request

Send your key in the x-dex-data-key header. Replace each <placeholder> with a real value.

curl -H "x-dex-data-key: $DEXDATA_API_KEY" \
  "https://api.dexdata.io/api/external/wallet-analysis/smart-account/ETH/<address>"
Parameters
ParameterDescription
chain

path · string · required

RHC, ETH, OP and SCROLL only; every other chain returns 400.
address

path · string · required

The smart account (0x followed by 40 hexadecimal characters), in any case.

Response fields

A JSON response. Every field is always present; null means the value could not be established, never zero.

Response fields of Who deployed an ERC-4337 smart account, and how much it is used
FieldTypeDescription
addressstringThe address asked, lowercase.
accountobject | nullThe smart account, or null when the address never sent a user operation on the chain.
account.factorystring | nullThe factory contract that deployed it; null when no factory did — typically an ordinary wallet that delegates to smart-account code (EIP-7702).
account.creationOperationHashstring | nullThe user operation that deployed it; null when no factory did.
account.creationTransactionHashstring | nullThe transaction that carried that deployment; null when no factory did.
account.creationTimestampinteger | nullUnix seconds of the deployment; null when no factory did.
account.totalOperationsintegerThe user operations it has sent on this chain. The same address on another chain is counted there.
account.implementationsobject[]The smart-account code it runs; [] when not known.
account.implementations[].addressstringThe implementation contract.
account.implementations[].namestring | nullIts verified contract name, e.g. "Kernel"; null when not known.
account.proxyTypestring | nullHow it points at that code, e.g. "eip1967", "eip7702", "erc7760"; null when not known.

Start building with DexData today

Sign in, create a key and make your first call in a minute. Free credits every month, and you only pay for calls that succeed.

Get a free API key