Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/b3-insights-wallets-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
OpenAPI Specification
openapi: 3.2.0
info:
description: Cached proxy layer for multiple blockchain APIs with 24-hour caching and automatic fallback across chains. Supports both Blockscout and ThirdWeb Insights APIs. Add ?mintlify parameter for Mintlify-compatible version.
version: 1.0.0
title: B3 Data API - Multi-Chain Data Insights/wallets API
contact:
name: B3 Team
url: https://b3.fun
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://data-api.b3.fun/
description: B3 Data API - Multi-Chain Proxy
tags:
- name: insights/wallets
description: ThirdWeb Insights wallet analytics
paths:
/insights/v1/wallets/{wallet_address}/transactions:
get:
description: Get incoming and outgoing transactions for a wallet
summary: Get wallet transactions
tags:
- insights/wallets
parameters:
- $ref: '#/components/parameters/walletAddress'
- name: chain
in: query
required: false
deprecated: true
description: Use chain_id instead
schema:
type: array
example:
- 20
- 56
- 1
items:
type: number
- name: chain_id
in: query
required: false
description: The chain ID(s) to request the data for. You can specify multiple chain IDs, up to a maximum of 55. Use repeated query parameters, e.g., `?chain_id=20&chain_id=56`. Optional, because a single chain can as well be specified as a subdomain
schema:
type: array
example:
- 20
- 56
- 1
items:
type: number
- $ref: '#/components/parameters/filterBlockNumber'
- $ref: '#/components/parameters/filterBlockNumberGte'
- $ref: '#/components/parameters/filterBlockNumberGt'
- $ref: '#/components/parameters/filterBlockNumberLte'
- $ref: '#/components/parameters/filterBlockNumberLt'
- $ref: '#/components/parameters/filterBlockHash'
- $ref: '#/components/parameters/filterBlockTimestamp'
- $ref: '#/components/parameters/filterBlockTimestampGte'
- $ref: '#/components/parameters/filterBlockTimestampGt'
- $ref: '#/components/parameters/filterBlockTimestampLte'
- $ref: '#/components/parameters/filterBlockTimestampLt'
- $ref: '#/components/parameters/sortBy'
- $ref: '#/components/parameters/sortOrder'
- $ref: '#/components/parameters/groupBy'
- $ref: '#/components/parameters/aggregate'
- $ref: '#/components/parameters/filterTransactionIndex'
- $ref: '#/components/parameters/filterTransactionIndexGte'
- $ref: '#/components/parameters/filterTransactionIndexGt'
- $ref: '#/components/parameters/filterTransactionIndexLte'
- $ref: '#/components/parameters/filterTransactionIndexLt'
- $ref: '#/components/parameters/decode'
- $ref: '#/components/parameters/filterHash'
- $ref: '#/components/parameters/filterValue'
- $ref: '#/components/parameters/filterValueGte'
- $ref: '#/components/parameters/filterValueGt'
- $ref: '#/components/parameters/filterValueLte'
- $ref: '#/components/parameters/filterValueLt'
- $ref: '#/components/parameters/filterGasPrice'
- $ref: '#/components/parameters/filterGasPriceGte'
- $ref: '#/components/parameters/filterGasPriceGt'
- $ref: '#/components/parameters/filterGasPriceLte'
- $ref: '#/components/parameters/filterGasPriceLt'
- $ref: '#/components/parameters/filterGas'
- $ref: '#/components/parameters/filterGasGte'
- $ref: '#/components/parameters/filterGasGt'
- $ref: '#/components/parameters/filterGasLte'
- $ref: '#/components/parameters/filterGasLt'
- $ref: '#/components/parameters/filterFunctionSelector'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
type: object
properties:
chain_id:
type: string
block_number:
type: number
block_hash:
type: string
block_timestamp:
type: number
hash:
type: string
nonce:
type: number
transaction_index:
type: number
from_address:
type: string
to_address:
type: string
value:
type: string
gas_price:
type: string
gas:
type: number
function_selector:
type: string
data:
type: string
max_fee_per_gas:
type: string
max_priority_fee_per_gas:
type: string
transaction_type:
type: number
r:
type: string
s:
type: string
v:
type: string
access_list_json:
type: string
authorization_list_json:
type: string
contract_address:
type: string
gas_used:
type: number
cumulative_gas_used:
type: number
effective_gas_price:
type: string
blob_gas_used:
type: number
blob_gas_price:
type: string
logs_bloom:
type: string
status:
type: number
decoded:
type: object
properties:
name:
type: string
signature:
type: string
inputs:
type: object
additionalProperties: {}
required:
- name
- signature
required:
- chain_id
- block_number
- block_hash
- block_timestamp
- hash
- nonce
- transaction_index
- from_address
- to_address
- value
- gas_price
- gas
- function_selector
- data
- max_fee_per_gas
- max_priority_fee_per_gas
- transaction_type
- r
- s
- v
aggregations: {}
meta:
type: object
properties:
chain_ids:
type: array
items:
type: number
address:
type: string
signature:
type: string
page:
type: number
limit_per_chain:
type: number
total_items:
type: number
total_pages:
type: number
required:
- chain_ids
- page
- limit_per_chain
- total_items
- total_pages
required:
- meta
'400':
description: Bad request
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'500':
description: Internal server error
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
components:
parameters:
filterGasPriceLt:
schema:
type:
- number
- 'null'
description: Filter by gas price less than
example: 50000000000000
required: false
name: filter_gas_price_lt
in: query
filterValue:
schema:
type:
- number
- 'null'
description: Filter by value
example: 21000000000000
required: false
name: filter_value
in: query
page:
schema:
type:
- integer
- 'null'
minimum: 0
default: 0
description: 'Page number (0-indexed). Maximum value depends on query parameters: 20 for regular queries, 500 when using aggregate or group_by parameters.'
example: 0
required: false
name: page
in: query
filterBlockHash:
schema:
type: string
description: Filter by block hash
example: '0x3a1fba5abd9d41457944e91ed097e039b7b12d3d7ba324a3f422db2277a48e28'
required: false
name: filter_block_hash
in: query
decode:
schema:
type:
- boolean
- 'null'
description: Enable ABI decoding of the transactions/events data
example: true
required: false
name: decode
in: query
filterBlockTimestampGte:
schema:
type:
- number
- 'null'
description: Filter by block timestamp greater than or equal to
example: 1715222400
required: false
name: filter_block_timestamp_gte
in: query
limit:
schema:
type: integer
maximum: 1000
default: 20
description: The number of items to return
example: 20
exclusiveMinimum: 0
required: false
name: limit
in: query
filterBlockNumberGt:
schema:
type:
- number
- 'null'
description: Filter by block number greater than
example: 1000000
required: false
name: filter_block_number_gt
in: query
filterHash:
schema:
type: string
description: Filter by transaction hash
example: '0x218b632d932371478d1ae5a01620ebab1a2030f9dad6f8fba4a044ea6335a57e'
required: false
name: filter_hash
in: query
filterBlockNumberGte:
schema:
type:
- number
- 'null'
description: Filter by block number greater than or equal to
example: 1000000
required: false
name: filter_block_number_gte
in: query
filterGasLt:
schema:
type:
- number
- 'null'
description: Filter by gas less than
example: 21000
required: false
name: filter_gas_lt
in: query
filterFunctionSelector:
schema:
type: string
description: Filter by function selector
example: '0x095ea7b3'
required: false
name: filter_function_selector
in: query
filterBlockTimestamp:
schema:
type:
- number
- 'null'
description: Filter by block timestamp
example: 1715222400
required: false
name: filter_block_timestamp
in: query
filterBlockNumberLte:
schema:
type:
- number
- 'null'
description: Filter by block number less than or equal to
example: 1000000
required: false
name: filter_block_number_lte
in: query
filterGas:
schema:
type:
- number
- 'null'
description: Filter by gas
example: 21000
required: false
name: filter_gas
in: query
filterGasGte:
schema:
type:
- number
- 'null'
description: Filter by gas greater than or equal to
example: 21000
required: false
name: filter_gas_gte
in: query
filterGasPrice:
schema:
type:
- number
- 'null'
description: Filter by gas price
example: 50000000000000
required: false
name: filter_gas_price
in: query
filterGasPriceGt:
schema:
type:
- number
- 'null'
description: Filter by gas price greater than
example: 50000000000000
required: false
name: filter_gas_price_gt
in: query
filterTransactionIndexGte:
schema:
type:
- number
- 'null'
description: Filter by transaction index greater than or equal to
example: 5
required: false
name: filter_transaction_index_gte
in: query
filterGasPriceLte:
schema:
type:
- number
- 'null'
description: Filter by gas price less than or equal to
example: 50000000000000
required: false
name: filter_gas_price_lte
in: query
filterGasLte:
schema:
type:
- number
- 'null'
description: Filter by gas less than or equal to
example: 21000
required: false
name: filter_gas_lte
in: query
filterBlockNumberLt:
schema:
type:
- number
- 'null'
description: Filter by block number less than
example: 1000000
required: false
name: filter_block_number_lt
in: query
filterBlockNumber:
schema:
type:
- number
- 'null'
description: Filter by block number
example: 1000000
required: false
name: filter_block_number
in: query
filterValueGte:
schema:
type:
- number
- 'null'
description: Filter by value greater than or equal to
example: 21000000000000
required: false
name: filter_value_gte
in: query
filterTransactionIndexGt:
schema:
type:
- number
- 'null'
description: Filter by transaction index greater than
example: 5
required: false
name: filter_transaction_index_gt
in: query
filterGasGt:
schema:
type:
- number
- 'null'
description: Filter by gas greater than
example: 21000
required: false
name: filter_gas_gt
in: query
filterValueLte:
schema:
type:
- number
- 'null'
description: Filter by value less than or equal to
example: 21000000000000
required: false
name: filter_value_lte
in: query
walletAddress:
schema:
type: string
title: address (hex or ENS)
example: vitalik.eth
required: true
name: wallet_address
in: path
filterTransactionIndex:
schema:
type:
- number
- 'null'
description: Filter by transaction index
example: 5
required: false
name: filter_transaction_index
in: query
filterBlockTimestampLte:
schema:
type:
- number
- 'null'
description: Filter by block timestamp less than or equal to
example: 1715222400
required: false
name: filter_block_timestamp_lte
in: query
filterTransactionIndexLt:
schema:
type:
- number
- 'null'
description: Filter by transaction index less than
example: 5
required: false
name: filter_transaction_index_lt
in: query
sortOrder:
schema:
type: string
enum:
- asc
- desc
description: Sort order (asc or desc)
example: desc
required: false
name: sort_order
in: query
filterTransactionIndexLte:
schema:
type:
- number
- 'null'
description: Filter by transaction index less than or equal to
example: 5
required: false
name: filter_transaction_index_lte
in: query
filterValueLt:
schema:
type:
- number
- 'null'
description: Filter by value less than
example: 21000000000000
required: false
name: filter_value_lt
in: query
filterValueGt:
schema:
type:
- number
- 'null'
description: Filter by value greater than
example: 21000000000000
required: false
name: filter_value_gt
in: query
filterBlockTimestampLt:
schema:
type:
- number
- 'null'
description: Filter by block timestamp less than
example: 1715222400
required: false
name: filter_block_timestamp_lt
in: query
groupBy:
schema:
type:
- string
- 'null'
description: Field(s) to group by. You can specify multiple with repeated query parameters, e.g., ?group_by=chain_id&group_by=block_number
required: false
name: group_by
in: query
aggregate:
schema:
type:
- string
- 'null'
description: Aggregation(s). You can specify multiple with repeated query parameters, e.g., ?aggregate=count()&aggregate=sum(gas_used)
example: count() as count
required: false
name: aggregate
in: query
sortBy:
schema:
anyOf:
- type: string
enum:
- block_number
title: constant
- type: string
title: string
description: Field to sort results by
example: block_number
required: false
name: sort_by
in: query
filterBlockTimestampGt:
schema:
type:
- number
- 'null'
description: Filter by block timestamp greater than
example: 1715222400
required: false
name: filter_block_timestamp_gt
in: query
filterGasPriceGte:
schema:
type:
- number
- 'null'
description: Filter by gas price greater than or equal to
example: 50000000000000
required: false
name: filter_gas_price_gte
in: query
securitySchemes:
clientId:
type: apiKey
in: header
name: x-client-id
description: thirdweb client ID in headers
secretKey:
type: apiKey
in: header
name: x-secret-key
description: thirdweb secret key in headers
dashboard:
type: http
scheme: bearer
bearerFormat: JWT
description: thirdweb JWT + Client ID
clientId-query:
type: apiKey
in: query
name: clientId
description: thirdweb client ID in query params
x-proxy-info:
supported-chains:
- chainId: 243
name: Reach Testnet
network: reach-testnet
apiUrl: https://reach-testnet.explorer.caldera.xyz/api/v2
- chainId: 1993
name: B3 Testnet
network: b3-testnet
apiUrl: https://sepolia.explorer.b3.fun/api/v2
- chainId: 4224
name: Arpachain
network: arpachain
apiUrl: https://arpachain.calderaexplorer.xyz/api/v2
- chainId: 8333
name: B3 Mainnet
network: b3
apiUrl: https://blockscout.b3.fun/api/v2
- chainId: 19934
name: B4 Testnet
network: b4-testnet
apiUrl: https://b4-testnet.explorer.caldera.xyz/api/v2
- chainId: 10211403
name: GLHF Testnet
network: glhf-testnet
apiUrl: https://glhf-testnet.explorer.caldera.xyz/api/v2
supported-services:
- name: blockscout
path: /blockscout/*
description: Blockchain explorer API with multi-chain fallback
- name: thirdweb-insights
path: /insights/*
description: ThirdWeb Insights API for chain analytics
default-chain: 8333
cache-duration: 24 hours
cache-strategy: KV store
fallback-strategy: 'Blockscout: Query default chain first, then all chains in parallel if no results. ThirdWeb: Direct chain query only.'