Skip to content

Validate a phone number

POST
/v1/phone
curl --request POST \
--url https://api.validationcheck.net/v1/phone \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "phone": "+1 415 555 2671", "country": "US", "bypass_cache": true }'

Validity, formats, line type and carrier. US and Canadian numbers get a live carrier record. 1 credit; invalid numbers are free.

Media typeapplication/json
object
phone
required
string
>= 1 characters <= 40 characters

Example

+1 415 555 2671
country

ISO 3166 alpha-2 country for numbers without a + prefix.

string | null
default: US >= 2 characters <= 2 characters

Example

US
bypass_cache

Skip the 7-day result cache and run a fresh, billed lookup.

boolean | null

Lookup result

Media typeapplication/json
object
success
required
boolean
data
required
object
request
required
object
id
required
string
type
required
string
input
timestamp
required
string
processing_time_ms
required
integer
metadata
required
object
api_version
required
string
Allowed values: 1
credits_used
required
integer
credits_remaining
required

Null in test mode.

integer | null
cache_hit
required
boolean
test_mode
required
boolean
data_sources
required
Array<string>
verdict
required
object
status
required
string
reason
required
string
risk
required
object
score
required
integer
<= 100
level
required
string
Allowed values: low medium high critical
factors
required
Array<string>
confidence
required
string
Allowed values: low medium high
details
required
object
e164
required
string | null
national_format
required
string | null
international_format
required
string | null
country_code
required
string | null
country
required
object
code
required
string
name
required
string
valid
required
boolean
possible
required
boolean
line_type
required
string
Allowed values: mobile landline voip toll_free premium unknown
carrier
required
object
name
required
string
ocn
required
string | null
mcc
required
string | null
mnc
required
string | null
type
required
string | null
ported
required
boolean | null
original_carrier
required
string | null
location
required
object
region
required
string | null
rate_center
required
string | null
timezone
required
string | null
routing
required
object
lrn
required
string
lata
required
string | null
coverage
required
string
Allowed values: live numbering_plan
recommendation
required
object
action
required
string
Allowed values: approve verify review block
message
required
string
key
additional properties
partial
required

A data source timed out or failed; some fields are null.

boolean

Example

{
"success": true,
"data": {
"metadata": {
"api_version": "1"
},
"risk": {
"level": "low",
"confidence": "low"
},
"details": {
"line_type": "mobile",
"coverage": "live"
},
"recommendation": {
"action": "approve"
}
}
}

Error

Media typeapplication/json
object
success
required
boolean
error
required
object
code
required
string
Allowed values: INVALID_REQUEST INVALID_INPUT MISSING_FIELD UNAUTHORIZED INSUFFICIENT_CREDITS FORBIDDEN_SCOPE ACCOUNT_SUSPENDED NOT_FOUND IDEMPOTENCY_CONFLICT INPUT_LIMIT_EXCEEDED RATE_LIMITED INTERNAL_ERROR UPSTREAM_UNAVAILABLE MAINTENANCE
message
required
string
docs_url
required
string format: uri
request_id
required
string

Example

{
"success": false,
"error": {
"code": "INVALID_REQUEST"
}
}

Error

Media typeapplication/json
object
success
required
boolean
error
required
object
code
required
string
Allowed values: INVALID_REQUEST INVALID_INPUT MISSING_FIELD UNAUTHORIZED INSUFFICIENT_CREDITS FORBIDDEN_SCOPE ACCOUNT_SUSPENDED NOT_FOUND IDEMPOTENCY_CONFLICT INPUT_LIMIT_EXCEEDED RATE_LIMITED INTERNAL_ERROR UPSTREAM_UNAVAILABLE MAINTENANCE
message
required
string
docs_url
required
string format: uri
request_id
required
string

Example

{
"success": false,
"error": {
"code": "INVALID_REQUEST"
}
}

Error

Media typeapplication/json
object
success
required
boolean
error
required
object
code
required
string
Allowed values: INVALID_REQUEST INVALID_INPUT MISSING_FIELD UNAUTHORIZED INSUFFICIENT_CREDITS FORBIDDEN_SCOPE ACCOUNT_SUSPENDED NOT_FOUND IDEMPOTENCY_CONFLICT INPUT_LIMIT_EXCEEDED RATE_LIMITED INTERNAL_ERROR UPSTREAM_UNAVAILABLE MAINTENANCE
message
required
string
docs_url
required
string format: uri
request_id
required
string

Example

{
"success": false,
"error": {
"code": "INVALID_REQUEST"
}
}

Error

Media typeapplication/json
object
success
required
boolean
error
required
object
code
required
string
Allowed values: INVALID_REQUEST INVALID_INPUT MISSING_FIELD UNAUTHORIZED INSUFFICIENT_CREDITS FORBIDDEN_SCOPE ACCOUNT_SUSPENDED NOT_FOUND IDEMPOTENCY_CONFLICT INPUT_LIMIT_EXCEEDED RATE_LIMITED INTERNAL_ERROR UPSTREAM_UNAVAILABLE MAINTENANCE
message
required
string
docs_url
required
string format: uri
request_id
required
string

Example

{
"success": false,
"error": {
"code": "INVALID_REQUEST"
}
}

Error

Media typeapplication/json
object
success
required
boolean
error
required
object
code
required
string
Allowed values: INVALID_REQUEST INVALID_INPUT MISSING_FIELD UNAUTHORIZED INSUFFICIENT_CREDITS FORBIDDEN_SCOPE ACCOUNT_SUSPENDED NOT_FOUND IDEMPOTENCY_CONFLICT INPUT_LIMIT_EXCEEDED RATE_LIMITED INTERNAL_ERROR UPSTREAM_UNAVAILABLE MAINTENANCE
message
required
string
docs_url
required
string format: uri
request_id
required
string

Example

{
"success": false,
"error": {
"code": "INVALID_REQUEST"
}
}

Error

Media typeapplication/json
object
success
required
boolean
error
required
object
code
required
string
Allowed values: INVALID_REQUEST INVALID_INPUT MISSING_FIELD UNAUTHORIZED INSUFFICIENT_CREDITS FORBIDDEN_SCOPE ACCOUNT_SUSPENDED NOT_FOUND IDEMPOTENCY_CONFLICT INPUT_LIMIT_EXCEEDED RATE_LIMITED INTERNAL_ERROR UPSTREAM_UNAVAILABLE MAINTENANCE
message
required
string
docs_url
required
string format: uri
request_id
required
string

Example

{
"success": false,
"error": {
"code": "INVALID_REQUEST"
}
}

Error

Media typeapplication/json
object
success
required
boolean
error
required
object
code
required
string
Allowed values: INVALID_REQUEST INVALID_INPUT MISSING_FIELD UNAUTHORIZED INSUFFICIENT_CREDITS FORBIDDEN_SCOPE ACCOUNT_SUSPENDED NOT_FOUND IDEMPOTENCY_CONFLICT INPUT_LIMIT_EXCEEDED RATE_LIMITED INTERNAL_ERROR UPSTREAM_UNAVAILABLE MAINTENANCE
message
required
string
docs_url
required
string format: uri
request_id
required
string

Example

{
"success": false,
"error": {
"code": "INVALID_REQUEST"
}
}

Error

Media typeapplication/json
object
success
required
boolean
error
required
object
code
required
string
Allowed values: INVALID_REQUEST INVALID_INPUT MISSING_FIELD UNAUTHORIZED INSUFFICIENT_CREDITS FORBIDDEN_SCOPE ACCOUNT_SUSPENDED NOT_FOUND IDEMPOTENCY_CONFLICT INPUT_LIMIT_EXCEEDED RATE_LIMITED INTERNAL_ERROR UPSTREAM_UNAVAILABLE MAINTENANCE
message
required
string
docs_url
required
string format: uri
request_id
required
string

Example

{
"success": false,
"error": {
"code": "INVALID_REQUEST"
}
}