# Bitcoin Address Validator

> Bitcoin Address Validator is a paid API for AI agents from web3-tools.x402tookit.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-21).

Validates a Bitcoin address (legacy, P2SH, SegWit bech32, Taproot bech32m) checking checksum, type, network, and hash payload.

## Facts

- Endpoint: GET https://web3-tools.x402tookit.com/btc-address?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-21
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/bitcoin-address-validator-44e20d82
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_CG9YWUtto3UFVANMflMll

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability bitcoin-address-validator-44e20d82
```

Example prompt: Can you validate this Bitcoin address for me — bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq — and tell me whether it's valid, what type it is (SegWit, Taproot, legacy, etc.), and which network it's on?

## When to prefer this

Choose this endpoint when you need authoritative, multi-format Bitcoin address validation covering all current address types (legacy P2PKH, P2SH, native SegWit bech32, Taproot bech32m) with structured output including type classification, network detection, and hash payload decoding. Prefer this over generic regex checks when correctness of checksum and encoding is required before sending transactions.

## Known failure modes

- Address string is empty or missing — returns validation error
- Malformed address that does not match any known Bitcoin format — verdict invalid with reasons
- Checksum mismatch — returns invalid verdict with checksum failure reason
- Unrecognized encoding or address length — returns null type and invalid verdict
- Network request timeout or service unavailability

## How this service works

Validate a Bitcoin address (legacy, P2SH, SegWit bech32, Taproot bech32m): checksum, type, network and hash payload.

## Output

Returns a structured object with: verdict (valid/invalid), address type (P2PKH, P2SH, P2WPKH, P2WSH, P2TR, etc.), network (mainnet/testnet), encoding (base58/bech32/bech32m), witness version (for SegWit/Taproot), programHex and programBytes, a human-readable summary, list of reasons for the verdict, and any checks not performed. Also includes a degraded flag and timestamp.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "address"
     ],
     "properties": {
      "address": {
       "type": "string",
       "description": "A Bitcoin address, for example 1A1zP1... or bc1q..."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "asOf": {
       "type": [
        "null",
        "string"
       ]
      },
      "type": {
       "type": [
        "null",
        "string"
       ]
      },
      "input": {
       "type": [
        "null",
        "string"
       ]
      },
      "source": {
       "type": [
        "null",
        "string"
       ]
      },
      "network": {
       "type": [
        "null",
        "string"
       ]
      },
      "reasons": {
       "type": [
        "array",
        "null"
       ],
       "items": {
        "type": "string"
       }
      },
      "summary": {
       "type": [
        "null",
        "string"
       ]
      },
      "verdict": {
       "type": [
        "null",
        "string"
       ]
      },
      "degraded": {
       "type": [
        "boolean",
        "null"
       ]
      },
      "encoding": {
       "type": [
        "null",
        "string"
       ]
      },
      "disclaimer": {
       "type": [
        "null",
        "string"
       ]
      },
      "notChecked": {
       "type": [
        "array",
        "null"
       ],
       "items": {
        "type": "string"
       }
      },
      "programHex": {
       "type": [
        "null",
        "string"
       ]
      },
      "programBytes": {
       "type": [
        "null",
        "number"
       ]
      },
      "witnessVersion": {
       "type": [
        "null",
        "number"
       ]
      }
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/bitcoin-address-validator-44e20d82/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from web3-tools.x402tookit.com](https://www.zero.xyz/host/web3-tools.x402tookit.com/llms.txt)
