---
title: "Scan Bulk of Addresses"
method: POST
path: "/v0/evm/address-bulk/scan"
tags: ["EVM"]
---

# Scan Bulk of Addresses

`POST /v0/evm/address-bulk/scan`

Gets a list of addresses and returns a security assessment of each address.

## Request body

- ValidateBulkAddresses
  - `metadata` ScanRequestMetadata, required
    - `domain` string — The full URL of the DApp or website that initiated the request, for cross-reference. Must use the https or http scheme and contain a valid hostname. Cannot contain JSON, braces, or other embedded data structures.
    - `non_dapp` boolean — Set to true when the request was not initiated by a dapp. Dapp requests should provide the `domain` field.
    - `account` RoutersChainAgnosticModelsRequestAccount
      - `account_id` string, required — Unique identifier for the account.
      - `account_creation_timestamp` string, date-time — Timestamp when the account was created.
      - `user_age` integer — Age of the user in years
      - `user_country_code` string — ISO country code of the user's location.
      - `account_addresses` string[] — List of all account addresses in different chains based on the CAIPs standard (https://github.com/ChainAgnostic/CAIPs). Ethereum mainnet example: eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb
    - `connection` RoutersChainAgnosticModelsRequestConnection
      - `user_agent` string — User agent string from the client's browser or application.
      - `ip_address` string, ipvanyaddress, required — IP address of the customer making the request. Both IPv4 and IPv6 addresses are supported.
      - `origin` string, uri — The full URL of the website that the request was directed to.
      - `walletconnect_name` string — WalletConnect session name, when the request originates from a WalletConnect session.
      - `walletconnect_description` string — WalletConnect session description, when the request originates from a WalletConnect session.
  - `chain` 'arbitrum' | 'avalanche' | 'base' | 'base-sepolia' | 'lordchain' | 'lordchain-testnet' | 'metacade' | 'metacade-testnet' | 'bsc' | 'ethereum' | 'optimism' | 'polygon' | 'zksync' | 'zksync-sepolia' | 'zora' | 'linea' | 'blast' | 'scroll' | 'ethereum-sepolia' | 'degen' | 'avalanche-fuji' | 'gnosis' | 'soneium-minato' | 'ronin' | 'apechain' | 'berachain' | 'berachain-bartio' | 'ink' | 'ink-sepolia' | 'abstract' | 'abstract-testnet' | 'soneium' | 'unichain' | 'sei' | 'flow-evm' | 'hyperevm' | 'megaeth' | 'katana' | 'plume' | 'xlayer' | 'monad' | 'monad-testnet' | 'tempo' | 'tempo-testnet' | 'kite-ai' | 'kaia' | 'plasma' | 'mantle' | 'robinhood' | 'arc' | 'flare', required — The chain name
  - `addresses` string[], required — List of addresses to validate.

## Response `200`

Successful Response

- object

## Other responses

- `422` — Validation Error

## Changes

> 95 revisions in range; 1 not diffed.

- **2026-08-21** `e15b4bf2b25b` — 1 breaking
  - removed the enum value `worldchain` of the request property `chain`
- **2026-07-20** `7897dd82aeda` — 1 info
  - added the new `flare` enum value to the request property `chain`
- **2026-07-06** `1c2ad0e3f146` — 1 info
  - added the new `arc` enum value to the request property `chain`
- **2026-06-29** `e536df1ac98e` — 1 info
  - added the new `robinhood` enum value to the request property `chain`
- **2026-06-22** `631610b498db` — 2 breaking
  - added `#/components/schemas/ScanRequestMetadata` to the `metadata` request property `allOf` list
  - removed `#/components/schemas/routers__evm__models__MetadataNonDapp, #/components/schemas/routers__evm__models__MetadataDapp` from the `metadata` request property `anyOf` list

[Full history](https://skmtc.dev/blockaid-official/apis/blockaid-api/changes/v0/evm/address-bulk/scan/post.md)

---

[API](https://skmtc.dev/blockaid-official/apis/blockaid-api.md) · [All operations](https://skmtc.dev/blockaid-official/apis/blockaid-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/blockaid-official/blockaid-api/revisions/e15b4bf2b25b/schema)
