# NetIntel Address Extraction & Validation

> NetIntel Address Extraction & Validation is a paid API for AI agents from netintel-production-440c.up.railway.app, paid per call via x402, $0.03/call, status unknown (last checked 2026-09-13).

Parses, normalizes, and grades a raw address string into structured components (street, city, state, postal code, country) with a quality score and completeness check.

## Facts

- Endpoint: POST https://netintel-production-440c.up.railway.app/extract/address
- Price: $0.03/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/netintel-address-extraction-validation-b28d02d0
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_OX4v8kxZxS_QuG4kF7tL5

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 netintel-address-extraction-validation-b28d02d0 -d '<json body>'
```

Example prompt: Can you parse and normalize this address for me — '123 Main St San Francisco CA 94105 USA' — and tell me if it's complete, what grade it gets, and break it into street, city, state, postal code, and country?

## When to prefer this

Use this endpoint when you need to parse, normalize, and quality-grade a free-text address string into structured components — especially when you also need a completeness assessment and quality score rather than just geocoordinates. Prefer this over a geocoding API when the goal is data validation and standardization rather than map placement.

## Known failure modes

- Malformed or empty address input returns low score and incomplete components
- Ambiguous address with no recognizable structure may return empty components and grade F
- Address in unsupported locale may result in missing state/region or postal code fields
- Payment failure via x402 micropayment returns 402 before processing
- Overly abbreviated input may parse incorrectly with wrong city or state assignment

## How this service works

Parse and normalize a freeform address string using Claude Haiku — splits it into street, city, state/region, postal code, and country, plus a normalized single-line form, so agents can clean and standardize messy address data for shipping, CRM, and verification workflows.

## Output

Returns a JSON object with a letter grade (A–F), a numeric quality score (0–100), a boolean completeness flag, a normalized full address string, individual address components (street, city, state/region, postal code, country, country code), the count of components found, a list of findings/issues, and a cache status flag.

## Request schema (JSON Schema)

```json
{
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "type": "string",
     "enum": [
      "POST"
     ]
    },
    "bodyType": {
     "type": "string",
     "enum": [
      "json",
      "form-data",
      "text"
     ]
    },
    "body": {
     "type": "object",
     "properties": {
      "address": {
       "type": "string",
       "description": "The freeform address string to parse and normalize. Max 10000 words or 50KB."
      }
     },
     "required": [
      "address"
     ]
    }
   },
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "address": {
       "type": "object",
       "description": "Parsed components: street, city, state_region, postal_code, country, country_code (ISO 3166-1 alpha-2), and a normalized single-line form. Missing components are null."
      },
      "components_found": {
       "type": "number",
       "description": "Count of non-null core components (street, city, state_region, postal_code, country)."
      },
      "is_complete": {
       "type": "boolean",
       "description": "True when street, city, and country are all present."
      },
      "cached": {
       "type": "boolean",
       "description": "True if served from the in-memory cache."
      },
      "score": {
       "type": "number",
       "description": "Quality score 0-100"
      },
      "grade": {
       "type": "string",
       "description": "Letter grade A-F"
      },
      "findings": {
       "type": "array",
       "items": {
        "type": "string"
       },
       "description": "Informational findings (e.g. incomplete_address, no_components)."
      }
     }
    }
   },
   "required": [
    "type"
   ]
  }
 },
 "required": [
  "input"
 ]
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "grade": "A",
  "score": 100,
  "cached": false,
  "address": {
   "city": "San Francisco",
   "street": "123 Main St",
   "country": "United States",
   "normalized": "123 Main St, San Francisco, CA 94105, United States",
   "postal_code": "94105",
   "country_code": "US",
   "state_region": "CA"
  },
  "findings": [],
  "is_complete": true,
  "components_found": 5
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/netintel-address-extraction-validation-b28d02d0/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from netintel-production-440c.up.railway.app](https://www.zero.xyz/host/netintel-production-440c.up.railway.app/llms.txt)
