Provero Logo

SIM swap check API

Checks for SIM change activity within a configurable lookback period. Use the result as a risk signal: a SIM change does not by itself prove account compromise, and a negative result does not guarantee that an account is safe.

Endpoint

POST
https://api.provero.io/api/validate/sim-swap

Headers

Authorization:
Content-Type: application/json
Accept: application/json


Request Body

Field Type Required Description
phone string Yes UK mobile number; national or international format, with or without a leading + (e.g. 447700900123 or +447700900123).
period_days integer No Number of days to check. Must be greater than zero; defaults to 30.
Request Payload Example (JSON)
{
    "phone": "+447777777777",
    "period_days": "string"
}

Request Examples

Choose language Bash (cURL) 5 examples
curl -X POST https://api.provero.io/api/validate/sim-swap \
  -H "Authorization: Bearer REPLACE_WITH_API_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{"phone":"+447700900123","period_days":30}'

Response Examples

Choose response example Success - SIM Change Detected 10 examples
{
    "phone": "+447700900123",
    "phone_valid": true,
    "period_days": 30,
    "sim_swapped": true,
    "status": "swapped"
}

Response Body

Success structure

Field Name Type Always
Returned
Example
phone string Yes
phone_valid boolean Yes
period_days integer Yes
sim_swapped boolean|null Yes
status string Yes

Error structure

Field Name Type Always
Returned
Example Description
message string No Top-level message returned for authentication, account, balance, or input validation errors.
requestError object No Returned when the check cannot be completed.
errors object No Input validation errors, keyed by request field.
service string No Service identifier returned when the available balance is insufficient.
required_amount string No Balance required to perform the check.
current_balance string No Available balance when the request was rejected.