# Vextorium Phone Number Validator

> Vextorium Phone Number Validator is a paid API for AI agents from api.vextorium.com, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-11).

Validates and normalizes a phone number from any country, returning E.164/national/international formats, number type, country, region, original carrier, and time zones — without calling or storing anything.

## Facts

- Endpoint: POST https://api.vextorium.com/v1/phone-validate?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/vextorium-phone-number-validator-a4e8107c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_o00TLgcBG8okk_A92uijn

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 vextorium-phone-number-validator-a4e8107c -d '<json body>'
```

Example prompt: Can you validate the phone number +34 612 345 678 and tell me if it's real, what type it is (mobile, landline, etc.), and what country and carrier it belongs to?

## When to prefer this

Choose this endpoint when you need to validate and enrich a single phone number with full metadata — format normalization, type classification, carrier, region, and time zones — without any side effects like actually calling the number or storing data. Prefer it over simple regex validation when you need structured output (E.164, carrier, type) or when handling international numbers from multiple countries.

## Known failure modes

- Invalid or unrecognizable number string returns valid=false and possible=false
- Missing required 'number' field returns a schema/validation error
- Number with ambiguous country and no default country code provided may return incorrect region
- Very new or rare number ranges may not be recognized by the underlying library
- Non-numeric or heavily malformed strings may cause parsing failures

## How this service works

Validate and normalize a phone number from any country: E.164, national and international format, type (mobile, landline, toll-free, VoIP...), country, region, original carrier and time zones. Nothing is called or stored.

## Output

A JSON object containing: whether the number is valid and possible, E.164 format, national and international formatted strings, country ISO code, region name, numeric prefix, number type (mobile, landline, toll-free, VoIP, etc.), original carrier/operator, and an array of applicable time zones. Also includes a note if the carrier may have changed due to number porting.

## 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",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "required": [
      "number"
     ],
     "properties": {
      "number": {
       "type": "string"
      },
      "country": {
       "type": "string",
       "description": "Default country if no + prefix, e.g. ES"
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": [
      "object",
      "null"
     ],
     "properties": {
      "e164": {
       "type": [
        "string",
        "null"
       ]
      },
      "note": {
       "type": [
        "string",
        "null"
       ]
      },
      "type": {
       "type": [
        "string",
        "null"
       ]
      },
      "valid": {
       "type": [
        "boolean",
        "null"
       ]
      },
      "number": {
       "type": [
        "string",
        "null"
       ]
      },
      "prefix": {
       "type": [
        "number",
        "null"
       ]
      },
      "region": {
       "type": [
        "string",
        "null"
       ]
      },
      "country": {
       "type": [
        "string",
        "null"
       ]
      },
      "national": {
       "type": [
        "string",
        "null"
       ]
      },
      "possible": {
       "type": [
        "boolean",
        "null"
       ]
      },
      "timezones": {
       "type": [
        "array",
        "null"
       ],
       "items": {
        "type": [
         "null",
         "string"
        ]
       }
      },
      "international": {
       "type": [
        "string",
        "null"
       ]
      },
      "original_operator": {
       "type": [
        "string",
        "null"
       ]
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "e164": "+34612345678",
  "note": "The carrier is the originally assigned one: the number may have been ported.",
  "type": "mobile",
  "valid": true,
  "number": "+34 612 345 678",
  "prefix": 34,
  "region": "Spain",
  "country": "ES",
  "national": "612 34 56 78",
  "possible": true,
  "timezones": [
   "Atlantic/Canary",
   "Europe/Madrid"
  ],
  "international": "+34 612 34 56 78",
  "original_operator": "Syma"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/vextorium-phone-number-validator-a4e8107c/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.vextorium.com](https://www.zero.xyz/host/api.vextorium.com/llms.txt)
