Crypto Address Validator
Crypto address validator: identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Solana base58 and on-curve check, Cosmos bech32 with its HRP, Tron, XRP, Litecoin, Dogecoin, Cardano, Polkadot SS58 and Algorand. Returns every chain the address is valid for (ambiguous when several match), the checksummed form for EVM addresses, and the reason a check failed, including unrecognised_format.
Offering
- Provider
- api.duoleads.com
- Method
- GET
- Offering type
- Api Endpoint
- Transport type
- http
- Category
- Blockchain And Crypto
- Delivery
- Not provided
- Pricing model
- Not provided
- x402 version
- 2
Endpoint context
- URL
https://api.duoleads.com/v1/chain/address- MIME type
- application/json
- First seen
- 2026-10-16T01:50:32.458Z
- Last seen
- Tags
- crypto-address, wallet-address, address-validator, blockchain, addresses
Payment pricing
x402 payment terms are the authoritative price for calling this endpoint.
- Payment option 1
- 0.05 USDC
Atomic price: 50000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
{
"scheme": "exact",
"network": "eip155:8453",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "50000",
"payTo": "0xCD673f7e1daD254347AEab6be0DEFe8b9C6b3A39"
}
]Observed health
- Status
- Healthy
- Latest latency
- 243 ms
- Average latency
- 782 ms
- HTTP status
- 402
- Last checked
- Reachability
- 100% over 13 checks
Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.
Input schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"type": "string",
"enum": [
"GET"
]
},
"queryParams": {
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "Address to identify and validate.",
"maxLength": 128
},
"expect": {
"type": "string",
"description": "Restrict the check to one chain id.",
"enum": [
"evm",
"bitcoin",
"solana",
"cosmos",
"tron",
"xrp",
"cardano",
"polkadot",
"algorand",
"litecoin",
"dogecoin"
],
"maxLength": 64
},
"chain_id": {
"type": "string",
"description": "EVM chain id; enables EIP-1191 chain-salted checksum validation.",
"pattern": "^[+-]?\\d+$",
"maxLength": 64
}
},
"required": [
"address"
]
}
},
"required": [
"type",
"method"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"properties": {
"address": {
"description": "Address to identify and validate.",
"maxLength": 128,
"type": "string"
},
"chain_id": {
"description": "EVM chain id; enables EIP-1191 chain-salted checksum validation.",
"maxLength": 64,
"pattern": "^[+-]?\\d+$",
"type": "string"
},
"expect": {
"description": "Restrict the check to one chain id.",
"enum": [
"evm",
"bitcoin",
"solana",
"cosmos",
"tron",
"xrp",
"cardano",
"polkadot",
"algorand",
"litecoin",
"dogecoin"
],
"maxLength": 64,
"type": "string"
}
},
"required": [
"address"
],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"data": {
"properties": {
"ambiguous": {
"type": "boolean"
},
"checksum": {
"properties": {
"checksum_valid": {
"type": "boolean"
},
"checksummed": {
"type": "string"
},
"eip1191_applied": {
"type": "boolean"
},
"input_form": {
"type": "string"
}
},
"required": [
"input_form",
"checksummed",
"checksum_valid",
"eip1191_applied"
],
"type": [
"object",
"null"
]
},
"matches": {
"items": {
"properties": {
"chain": {
"type": "string"
},
"detail": {
"properties": {
"address_type": {
"type": "string"
},
"bytes": {
"type": "integer"
},
"encoding": {
"type": "string"
},
"header_type": {
"type": "integer"
},
"hrp": {
"type": "string"
},
"network": {
"type": "string"
},
"network_prefix": {
"type": "integer"
},
"on_curve": {
"type": "boolean"
},
"purpose": {
"type": "string"
},
"version_byte": {
"type": "integer"
},
"witness_version": {
"type": "integer"
}
},
"type": "object"
},
"format": {
"type": [
"string",
"null"
]
},
"reason": {
"type": [
"string",
"null"
]
},
"valid": {
"type": "boolean"
}
},
"required": [
"chain",
"format",
"valid",
"reason",
"detail"
],
"type": "object"
},
"type": "array"
},
"reason": {
"type": "string"
},
"valid": {
"type": "boolean"
}
},
"required": [
"valid",
"matches",
"checksum",
"ambiguous"
],
"type": "object"
},
"meta": {
"properties": {
"computed_at": {
"description": "RFC 3339 UTC with milliseconds",
"type": "string"
},
"deterministic": {
"type": "boolean"
},
"disclaimer": {
"type": "string"
},
"price_usd": {
"type": "string"
},
"request_id": {
"type": "string"
},
"sources": {
"items": {
"required": [
"id",
"version",
"published"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"request_id",
"computed_at",
"price_usd",
"deterministic",
"disclaimer"
],
"type": "object"
},
"ok": {
"const": true
},
"route": {
"const": "/v1/chain/address"
},
"version": {
"type": "string"
}
},
"required": [
"ok",
"route",
"version",
"data",
"meta"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}