wtsp.dev
The carrier and line type of any number, from the numbering plan: the network its range was issued to, mobile, fixed line or VoIP, plus country, region, time zones and national and international formats. Works whether or not the number is on WhatsApp. Ported numbers report their original carrier. Query param: phone, with country code (e.g. +447400123456). Only charged when a carrier is on record; numbers without one (the US and Canada among them) get a free 404.
Offering
- Provider
- wtsp.dev
- Method
- GET
- Offering type
- Api Endpoint
- Transport type
- http
- Category
- General Utilities
- Delivery
- Not provided
- Pricing model
- Not provided
- x402 version
- 2
Endpoint context
- URL
https://wtsp.dev/v1/carrier- MIME type
- application/json
- First seen
- 2026-10-16T01:50:32.458Z
- Last seen
- Tags
- phone, carrier, line-type, telecom, Validation
Payment pricing
x402 payment terms are the authoritative price for calling this endpoint.
- Payment option 1
- 0.004 USDC
Atomic price: 4000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
{
"scheme": "exact",
"network": "eip155:8453",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "4000",
"payTo": "0x539d036a305F78388dcA5FC49c27f9e29b83D315"
}
]Observed health
- Status
- Healthy
- Latest latency
- 127 ms
- Average latency
- 423 ms
- HTTP status
- 402
- Last checked
- Reachability
- 100% over 14 checks
Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.
Input schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"type": "string",
"enum": [
"GET"
]
},
"queryParams": {
"type": "object",
"properties": {
"phone": {
"type": "string",
"description": "Phone number with its country code, e.g. +14155552671. The + is optional; spaces, dashes and a leading 00 are fine."
}
},
"required": [
"phone"
]
}
},
"required": [
"type",
"method"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"properties": {
"phone": {
"description": "Phone number with its country code, e.g. +14155552671. The + is optional; spaces, dashes and a leading 00 are fine.",
"type": "string"
}
},
"required": [
"phone"
],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"carrier": {
"description": "Network the number range was issued to. Ported numbers keep their original carrier.",
"type": "string"
},
"country": {
"description": "ISO 3166-1 alpha-2 country of the number.",
"type": "string"
},
"countryCallingCode": {
"type": "string"
},
"countryName": {
"type": "string"
},
"flag": {
"type": "string"
},
"international": {
"description": "The number in international format.",
"type": "string"
},
"isMobile": {
"description": "Null where a country hands mobiles and landlines out of one shared range.",
"type": [
"boolean",
"null"
]
},
"lineType": {
"description": "`mobile`, `fixed line`, `fixed line or mobile`, `voip`, `toll free`…",
"type": "string"
},
"location": {
"description": "Town or region the number was issued in, where published.",
"type": [
"string",
"null"
]
},
"national": {
"description": "The number as dialled inside its country.",
"type": "string"
},
"phone": {
"description": "The number looked up, in E.164.",
"type": "string"
},
"timezones": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"phone",
"carrier",
"lineType",
"isMobile",
"country",
"countryName",
"flag",
"countryCallingCode",
"location",
"timezones",
"international",
"national"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}