API documentation
HTTP methodPOST
Response formatJSON
API URLhttps://vsim.pro/api/v2
API keyGet your API key on the Account page
CurrencyAll prices are in USD
Rate limit: 60 requests per minute, including up to 20 orders.
Balance
ParameterDescription
keyYour API key
actionbalance
Example response
{
  "status": "success",
  "balance": "12.4500",
  "currency": "USD"
}
Services list
ParameterDescription
keyYour API key
actionservices
Example response
[
  {
    "service": 12,
    "name": "WhatsApp"
  },
  {
    "service": 15,
    "name": "Telegram"
  }
]
Countries list
ParameterDescription
keyYour API key
actioncountries
serviceService ID
Example response
[
  {
    "country": 45,
    "name": "United Kingdom",
    "prefix": "+44",
    "price": "0.3000",
    "stock": 9294068,
    "rate": 46.97
  }
]
Operators list
ParameterDescription
keyYour API key
actionoperators
serviceService ID
countryCountry ID
Example response
[
  {
    "operator": "premium",
    "price": "2.5454",
    "stock": 9294068,
    "rate": 51.97
  },
  {
    "operator": "virtual59",
    "price": "0.9100",
    "stock": 120511,
    "rate": 46.97
  }
]
Add order
ParameterDescription
keyYour API key
actionorder
serviceService ID
countryCountry ID
operatorOperator name from the Operators list (e.g. virtual59 or premium)
Example response
{
  "status": "success",
  "order": 23501,
  "phone": "+447397940000",
  "charge": "0.9100",
  "expires": "2026-09-30 12:20:00",
  "currency": "USD"
}
Add smart order
ParameterDescription
keyYour API key
actionsmartOrder
serviceService ID

Only the service is needed. We pick the country and operator with the best chance of receiving your code.

Example response
{
  "status": "success",
  "order": 23502,
  "phone": "+447397940001",
  "country": 45,
  "charge": "1.0010",
  "expires": "2026-09-30 12:20:00",
  "currency": "USD"
}
Order status
ParameterDescription
keyYour API key
actionstatus
orderOrder ID

Status values: waiting (no SMS yet), received (SMS arrived), completed, canceled, timeout (expired). Canceled and timeout orders without an SMS are refunded automatically.

Example response
{
  "order": 23501,
  "status": "received",
  "phone": "+447397940000",
  "code": "482913",
  "sms": [
    {
      "sender": "WhatsApp",
      "text": "Your WhatsApp code is 482-913",
      "code": "482913"
    }
  ],
  "charge": "0.9100",
  "refunded": false,
  "expires": "2026-09-30 12:20:00",
  "currency": "USD"
}
Complete order
ParameterDescription
keyYour API key
actioncomplete
orderOrder ID

Use after you have received the code. The number is closed.

Example response
{
  "status": "success"
}
Cancel order
ParameterDescription
keyYour API key
actioncancel
orderOrder ID

Only possible before an SMS arrives. The full price returns to your balance.

Example response
{
  "status": "success",
  "refund": "0.9100"
}
Errors

If something goes wrong, every action returns status: error with a message.

Too many requests returns HTTP 429 with the message Too many requests. Please slow down. Wait a few seconds and try again.

{
  "status": "error",
  "message": "Insufficient balance"
}