# how.is Bot Verify

> how.is Bot Verify is a paid API for AI agents from how.is, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-31).

Verifies whether an IP address and user-agent belong to a legitimate known crawler (Googlebot, Bingbot, GPTBot, ClaudeBot), an impostor, another bot, or a human

## Facts

- Endpoint: POST https://how.is/v1/bot/verify?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/how-is-bot-verify-73469f3d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_GFj2U6CweIvgMe_xNaiV9

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 how-is-bot-verify-73469f3d -d '<json body>'
```

Example prompt: Check whether the visitor at IP 66.249.66.1 with user-agent 'Googlebot/2.1 (+http://www.google.com/bot.html)' is actually a real Googlebot or an impostor pretending to be one.

## When to prefer this

Use this endpoint when you need to definitively verify whether a specific IP + user-agent pair belongs to a major known crawler (Googlebot, GPTBot, Bingbot, ClaudeBot) rather than an impostor. It is especially valuable when protecting content from unauthorized scrapers masquerading as legitimate bots, when enforcing crawler access policies, or when auditing server access logs. Prefer this over generic IP reputation services when the question is specifically about crawler identity and legitimacy rather than spam or abuse scoring.

## Known failure modes

- Invalid or private IP address returns error or low-confidence result
- Missing user-agent may reduce accuracy of classification
- Unknown or novel crawlers may return unknown_bot verdict with low confidence
- TLS JA4 fingerprint mismatch may flag legitimate crawlers if infrastructure changes
- Network timeouts during reverse DNS or ASN lookups may degrade response quality
- Payment failure over x402 protocol blocks the call

## How this service works

Verify a crawler's identity: is this IP + user-agent really Googlebot, Bingbot, GPTBot or ClaudeBot, an impostor using the name, another bot, or a person?

## Output

Returns a verdict (verified, impostor, unknown_bot, or likely_human_or_unclassified), a confidence score, an automation_likely boolean, the claimed and identified operator, the verification method and supporting evidence, a list of reasons, recommended action (how_to_act), and detailed check results including published IP range membership, reverse DNS resolution, and ASN info. Also includes observatory data on the network, TLS fingerprint, claimed crawler family, and any impostors seen.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "ip": {
   "type": "string",
   "description": "The visitor's public IPv4 or IPv6 address"
  },
  "ua": {
   "type": "string",
   "maxLength": 1000,
   "description": "The User-Agent header it sent (omit or empty if none)"
  },
  "ja4": {
   "type": "string",
   "maxLength": 80,
   "description": "Optional TLS JA4 fingerprint, e.g. t13d1516h2_8daaf6152771_02713d6af862"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {
   "_shape": "data: verdict (verified / impostor / unknown_bot / likely_human_or_unclassified), confidence, automation_likely, claimed, identified_as{operator, method, evidence}, reasons[], how_to_act, checks{published_ranges, reverse_dns, asn}, observatory{network, fingerprint, claimed_family, impostors_seen}."
  },
  "result": "Crawler identity check for the requested subject",
  "receipt": {
   "rail": "x402",
   "tool": "bot_verify",
   "charge_usd": 0.005,
   "settlement_tx": "0x…"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/how-is-bot-verify-73469f3d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from how.is](https://www.zero.xyz/host/how.is/llms.txt)
