Base URLhttps://cryptolabel.io/api/v1
Content typeapplication/json
AuthOptional API key
MCPhttps://cryptolabel.io/api/mcp

Connect CryptoLabel to an agent through MCP to search API documentation and check addresses with the live endpoint when needed.

Settings -> Connectors -> Add custom connector
Name: CryptoLabel
URL: https://cryptolabel.io/api/mcp
GET/openapi

The interactive OpenAPI reference is available at https://cryptolabel.io/api/v1/openapi.
The raw OpenAPI 3.1 schema is available at https://cryptolabel.io/api/v1/openapi.json.

GET/address/{chain}/{address}

Resolves an address, detects its type and model, maps it to a presentation entity, and returns all known labels.

Path Parameters

Name Type Description
chain string Blockchain identifier. Supported values are listed below.
address string Address validated against the selected chain.

Example Request

curl --request GET \
  --url https://cryptolabel.io/api/v1/address/ethereum/0x22af984f13DFB5C80145E3F9eE1050Ae5a5FB651 \
  --header 'Accept: application/json' \
  --header 'User-Agent: YourAppName/1.0 (contact@example.com)'

Optional API key

Without a key, address lookups allow 1,000 requests per IP per day, resetting at 00:00 UTC. To remove this daily anonymous limit and see usage in your dashboard, create a UUID key and send it in the X-API-Key header. Invalid or revoked keys return 401.

Replace YOUR_API_KEY with your key. The URL and response format stay the same. Keep your key private and use it server-side.

curl --request GET \
  --url 'https://cryptolabel.io/api/v1/address/ethereum/0x22af984f13DFB5C80145E3F9eE1050Ae5a5FB651' \
  --header 'Accept: application/json' \
  --header 'X-API-Key: YOUR_API_KEY'

User-Agent

If possible, please include a meaningful User-Agent header with your application name and a contact email. This helps us reach you about API updates, technical maintenance, or request-specific issues when needed.

Success Response

On success the API returns a JSON object with query metadata, normalized address details, entity information, and zero or more labels.

Schema

Field Type Description
query.chain string Normalized chain identifier.
query.readableChain string Human-readable chain name.
query.address string Original requested address.
address.value string Resolved address value.
address.type string Address type enum value.
address.readableType string Human-readable address type.
address.model string Address model enum value.
address.readableModel string Human-readable address model.
address.explorerUrl string Explorer link for the address.
entity.name string Presentation entity name.
entity.category string Entity category enum value.
entity.readableCategory string Human-readable entity category.
labels array<object> Resolved labels for the address. Can be empty.
labels[].type string Label type enum value.
labels[].readableType string Human-readable label type.
labels[].category string Label category enum value.
labels[].readableCategory string Human-readable label category.
labels[].sourceType string Label source enum value.
labels[].readableSourceType string Human-readable label source.
labels[].method string Label method enum value.
labels[].readableMethod string Human-readable label method.
labels[].status string Label status enum value.
labels[].readableStatus string Human-readable label status.

Example

{
  "query": {
    "chain": "ethereum",
    "readableChain": "Ethereum",
    "address": "0x22af984f13DFB5C80145E3F9eE1050Ae5a5FB651"
  },
  "address": {
    "value": "0x22af984f13DFB5C80145E3F9eE1050Ae5a5FB651",
    "type": "eoa",
    "readableType": "Externally Owned Account",
    "model": "account_based",
    "readableModel": "Account-based model",
    "explorerUrl": "https://www.blockchain.com/explorer/addresses/eth/0x22af984f13DFB5C80145E3F9eE1050Ae5a5FB651"
  },
  "entity": {
    "name": "Kraken",
    "category": "exchange",
    "readableCategory": "Exchange"
  },
  "labels": [
    {
      "type": "exchange_cold_wallet",
      "readableType": "Exchange Cold Wallet",
      "category": "cex",
      "readableCategory": "Centralized Exchange",
      "sourceType": "public",
      "readableSourceType": "Public",
      "method": "aggregation",
      "readableMethod": "Aggregation",
      "status": "active",
      "readableStatus": "Active"
    }
  ]
}

Error Response

Client-facing API errors use a stable public format.

Schema

Field Type Description
code string Stable machine-readable error code.
message string Safe public error message.
path string Request path.
timestamp string<ISO-8601> Server-side error timestamp.

Example

{
  "code": "bad_request",
  "message": "Invalid address for chain: ethereum",
  "path": "/api/v1/address/ethereum/0x123",
  "timestamp": "2026-03-23T12:34:56.789Z"
}

Daily anonymous limit — HTTP 429

After 1,000 address lookup requests without a key from the same IP in a UTC day, further requests return 429. Admitted requests count even if the address is invalid or the lookup fails. All supported networks share the same quota. The Retry-After header gives the number of seconds until the reset at 00:00 UTC.

Create a free account and send a valid X-API-Key to continue immediately.

HTTP/1.1 429 Too Many Requests
Content-Type: application/json
Retry-After: 3600

{
  "code": "ANONYMOUS_DAILY_LIMIT_EXCEEDED",
  "message": "Daily limit of 1,000 requests without an API key has been reached. Create a free account at https://cryptolabel.io/sign-up and send your API key in the X-API-Key header. The limit resets at 00:00 UTC.",
  "path": "/api/v1/address/ethereum/0x22af984f13DFB5C80145E3F9eE1050Ae5a5FB651",
  "timestamp": "2026-10-11T23:00:00Z"
}

Enums

Chain

  • bitcoin — Bitcoin
  • ethereum — Ethereum
  • tron — Tron

Address Type

  • contract — Contract Account
  • eoa — Externally Owned Account
  • unknown — Unknown

Entity Category

  • bridge — Bridge
  • custodian — Custodian
  • dao — DAO
  • defi_protocol — DeFi Protocol
  • dex_aggregator — DEX Aggregator
  • exchange — Exchange
  • gambling_service — Gambling Service
  • government — Government
  • individual_address — Individual Address
  • illicit_activity — Illicit Activity
  • marketplace — Marketplace
  • mining_pool — Mining Pool
  • mixer — Mixer
  • payment_service — Payment Service
  • public_figure — Public Figure
  • service_provider — Service Provider
  • token_issuer — Token Issuer
  • wallet_provider — Wallet Provider
  • unknown — Unknown

Address Model

  • account_based — Account-based model
  • utxo — UTXO model

Label Source

  • internal — Internal
  • manual_review — Manual Review
  • partner — Partner
  • public — Public

Label Method

  • aggregation — Aggregation
  • heuristic — Heuristic
  • import — Import
  • manual — Manual
  • onchain_analysis — On-chain Analysis

Label Status

  • active — Active
  • historical — Historical
  • inactive — Inactive

Label Type

  • bridge_address — Bridge Address
  • burn_address — Burn Address
  • compliance_related — Compliance Related
  • cross_chain_activity — Cross-chain Activity
  • custodial_wallet — Custodial Wallet
  • defi_pool — DeFi Pool
  • defi_treasury — DeFi Treasury
  • deployer — Deployer
  • dex_contract — DEX Contract
  • darknet_market — Darknet Market
  • exchange_cold_wallet — Exchange Cold Wallet
  • exchange_deposit_wallet — Exchange Deposit Wallet
  • exchange_hot_wallet — Exchange Hot Wallet
  • exchange_withdrawal_wallet — Exchange Withdrawal Wallet
  • forwarder_contract — Forwarder Contract
  • fraud_related — Fraud Related
  • gambling_address — Gambling Address
  • high_frequency — High Frequency
  • high_volume — High Volume
  • institutional_flow — Institutional Flow
  • market_maker_related — Market Maker Related
  • marketplace_address — Marketplace Address
  • money_laundering — Money Laundering
  • mining_pool_payout — Mining Pool Payout
  • mixer_address — Mixer Address
  • blackmail — Blackmail
  • payment_processor — Payment Processor
  • phishing — Phishing
  • proxy_contract — Proxy Contract
  • public_figure_related — Public Figure Related
  • risky_service — Risky Service
  • sanctioned — Sanctioned
  • scam — Scam
  • service_wallet — Service Wallet
  • staking_wallet — Staking Wallet
  • stolen_funds — Stolen Funds
  • terrorism_related — Terrorism Related
  • treasury_wallet — Treasury Wallet
  • unknown — Unknown
  • validator — Validator
  • wrapper_contract — Wrapper Contract

Label Category

  • behavior — Behavior
  • bridge — Bridge
  • cex — Centralized Exchange
  • compliance — Compliance
  • crime — Crime
  • custody — Custody
  • defi — DeFi
  • flow — Flow
  • fraud — Fraud
  • gambling — Gambling
  • identity — Identity
  • infrastructure — Infrastructure
  • marketplace — Marketplace
  • mining — Mining
  • mixer — Mixer
  • payment — Payment
  • risk — Risk
  • sanctions — Sanctions
  • service — Service
  • trading — Trading
  • treasury — Treasury
  • unknown — Unknown
  • wallet — Wallet