# Phone Number Intelligence & Validation

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

Parses and validates any phone number, returning its country, line type (mobile/landline/VOIP/toll-free/premium), carrier region, E.164 format, and all standard format variants.

## Facts

- Endpoint: GET https://netintel-production-440c.up.railway.app/phone-intel/analyze
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/netintel-production-440c-up-railway-app-b703a51f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_fRU1ndDM_sk_dml17tgsN

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-production-440c-up-railway-app-b703a51f
```

Example prompt: Can you validate this phone number for me — +1 555 867-5309 — and tell me if it's real, what country it belongs to, whether it's a mobile or landline, and give me the properly formatted E.164 version?

## When to prefer this

Use this endpoint when you need free-tier phone validation with line-type classification (mobile/VOIP/toll-free) and multi-format normalization without subscribing to a paid telecom API like Twilio Lookup or Numverify. Especially useful for contact data cleanup, CRM enrichment, or fraud screening workflows where E.164 normalization and line-type detection are both needed in one call.

## Known failure modes

- Unparseable number format returns is_valid=false with empty or null format fields
- Missing required 'phone' query parameter returns 400 error
- Ambiguous local number without country_hint may resolve to wrong country
- Very short or test numbers (e.g. 555 numbers) may return low score/grade
- VOIP numbers may not have reliable carrier region data

## How this service works

Parse and validate any phone number in any format, identify its country, line type (mobile/landline/VOIP/toll-free/premium), carrier region, and return all standard format variants — so agents can validate contacts, normalize phone data, and classify line types without a paid telecom API.

## Output

Returns a JSON object with: E.164 normalized number, national and international format strings, validity boolean, country ISO code and full name, line type (mobile/landline/VOIP/toll-free/premium), digit count, a numeric confidence score, a grade, and an array of findings with additional analysis details.

## Example request

```json
{
 "input": {
  "type": "http",
  "method": "GET",
  "queryParams": {
   "phone": "+1-202-555-0173",
   "country_hint": "US"
  }
 }
}
```

## 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": [
      "phone"
     ],
     "properties": {
      "phone": {
       "type": "string",
       "description": "Phone number in any format (e.g. +1 555 867-5309). In query strings URL-encode a leading + as %2B — an unencoded + decodes to a space (tolerated: leading space+digits is re-interpreted as +)."
      },
      "country_hint": {
       "type": "string",
       "description": "ISO 3166-1 alpha-2 country code hint when no dial code present (e.g. US)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "e164": {
       "type": "string"
      },
      "grade": {
       "type": "string"
      },
      "input": {
       "type": "string"
      },
      "score": {
       "type": "number"
      },
      "country": {
       "type": "string"
      },
      "findings": {
       "type": "array",
       "items": {
        "type": "object"
       }
      },
      "is_valid": {
       "type": "boolean"
      },
      "national": {
       "type": "string"
      },
      "line_type": {
       "type": "string"
      },
      "digit_count": {
       "type": "number"
      },
      "country_code": {
       "type": "string"
      },
      "country_name": {
       "type": "string"
      },
      "international": {
       "type": "string"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "e164": "+15558675309",
  "grade": "F",
  "input": "+1 (555) 867-5309",
  "score": 0,
  "country": "US",
  "findings": [
   {
    "rule": "unassigned_area_code",
    "detail": "555 is not an assigned NANP area code — commonly used for fictional numbers",
    "deduction": -100
   }
  ],
  "is_valid": false,
  "national": "(555) 867-5309",
  "line_type": "mobile_or_landline",
  "digit_count": 11,
  "country_code": "1",
  "country_name": "United States",
  "international": "+1 555 867 5309"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/netintel-production-440c-up-railway-app-b703a51f/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)
