API KoalaSMS

Activations API
section-arrow
Activation API: Request a number
Activation API: Request a number v2
Activation API: Activation status changes
Activation API: Get the activation status
Activation API: Get the activation status v2
Activation API: Balance Request
Activation API: Get current prices by country
Activation API: Get current prices by country v2
Activation API: Get current prices by country v3
Activation API: Get a list of active activations
Tables
section-arrow
API: Country codes
API: Service codes
API is a protocol of interaction between your software and our activation server. API is needed to automate the process of receiving SMS messages on your side
info Our API is compatible with sms-activate API
info
All requests must contain
the API key in the form of the api_key parameter
Brief information
Activation API: Request a numbercopy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=getNumber&service=$service&country=$country&maxPrice=$maxPrice&providerIds=$providerIds&exceptProviderIds=$exceptProviderIds

&action=getNumber
$api_key — your API key (Settings);
$service — service code;
$country — country code. You can pass "any" or leave the value empty to let the system automatically select the best available country based on stock, price, and deliverability;
$maxPrice — the maximum price for which you are ready to buy a number;
$providerIds - a list of providers from which purchases will be made, separated by commas (1,2,3)
$exceptProviderIds - a list of providers excluded from the number purchase, separated by commas (1,2,3)

Possible errors:
BAD_KEY — check your API key;
NO_NUMBERS — repeat a request or choose another country;
The service is prohibited for sale by administration — select another service;
SERVICE_UNAVAILABLE_REGION — access from your region is restricted, please use another IP.

The example of successful answer:

ACCESS_NUMBER:59384721:447912345678

Where 59384721 is activation id. 447912345678 is a phone number.

Activation API: Request a number v2copy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=getNumberV2&service=$service&country=$country&maxPrice=$maxPrice&providerIds=$providerIds&exceptProviderIds=$exceptProviderIds

&action=getNumberV2

The method works similarly to the getNumber method, accepts the same parameters, but returns additional activation information.

$api_key — your API key (Settings);

$service — service code;
$country — country code. You can pass "any" or leave the value empty to let the system automatically select the best available country based on stock, price, and deliverability;
$maxPrice — the maximum price for which you are ready to buy a number;
$providerIds - a list of providers from which purchases will be made, separated by commas (1,2,3)
$exceptProviderIds - a list of providers excluded from the number purchase, separated by commas (1,2,3)

Possible errors:
BAD_KEY — check your API key;
NO_BALANCE — insufficient funds, please top up your balance;
NO_NUMBERS — repeat a request or choose another country;
The service is prohibited for sale by administration — select another service;
SERVICE_UNAVAILABLE_REGION — access from your region is restricted, please use another IP.

The example of successful answer:

{
    "activationCancel": "2026-04-15 10:07:30",
    "activationCost": 1.49,
    "activationEnd": "2026-04-15 10:22:30",
    "activationId": 728904112,
    "activationTime": "2026-04-15 10:02:30",
    "canGetAnotherSms": "1",
    "countryCode": "7",
    "currency": 643,
    "phoneNumber": "18036181752"
}

Where 728904112 is activation id, 18036181752 is a phone number,
1.49 - purchase price,
643 - currency code by ISO 4217, 12 - country code,
0/1 = true/false support second sms,
2026-04-15 10:02:30 - activation start date,
2026-04-15 10:07:30 - time, when activation could be cancelled,
2026-04-15 10:22:30 - activation end date.

Activation API: Activation status changescopy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=setStatus&status=$status&id=$id

&action=setStatus

$api_key — your API key (Settings);
$id — activation id;
$status — activation status:
-1 — cancel activation
1 — inform about the readiness of the number (sms sent to the number);
3 — wait for the next code on the same number;
6 — complete activation;
8 — cancel activation.

Service responses:
ACCESS_READY — the availability of the number has been confirmed
ACCESS_RETRY_GET — waiting for a new sms
ACCESS_ACTIVATION — the service has been activated successfully
ACCESS_CANCEL — activation canceled

Possible errors:
ERROR_SQL — SQL server error
NO_ACTIVATION — the activation id does not exist
BAD_SERVICE — incorrect service name
BAD_STATUS — incorrect status
BAD_KEY — Invalid API key
BAD_ACTION — incorrect action
SERVICE_UNAVAILABLE_REGION — access from your region is restricted, please use another IP

Activation API: Get the activation statuscopy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=getStatus&id=$id

&action=getStatus
$api_key — your API key (Settings);
$id — activation id.

Service responses:
STATUS_WAIT_CODE — waiting for sms
STATUS_WAIT_RETRY:$lastcode — waiting for code refinement (where $lastcode is the last, unsuitable code)
STATUS_WAIT_RESEND — waiting for the sms to be sent again (the software must click re-send sms and perform a status change to 6)
STATUS_CANCEL — activation canceled
STATUS_OK:$code — code received (where $code is the activation code).

Possible errors:
NO_ACTIVATION — the activation id does not exist
BAD_KEY — Invalid API key
BAD_ACTION — incorrect action
SERVICE_UNAVAILABLE_REGION — access from your region is restricted, please use another.

Activation API: Get the activation status v2copy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=getStatus&id=$id

&action=getStatus
$api_key — your API key (Settings);
$id — activation id.

Possible errors:
NO_ACTIVATION — the activation id does not exist
BAD_KEY — Invalid API key
BAD_ACTION — incorrect action
SERVICE_UNAVAILABLE_REGION — access from your region is restricted, please use another IP

The example of successful answer:
{
    "verificationType": 1,
    "sms": {
        "dateTime": "2026-04-10 09:17:42",
        "code": "436921",
        "text": "Your verification code is 436921"
    }
}
Where dateTime - activation datetime, code - sms-code, text - full sms.

Activation API: Balance Requestcopy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=getBalance

&action=getBalance
$api_key — your API key (Settings);

Service response:
ACCESS_BALANCE:$balance (where $balance is the account balance)

Possible errors:
BAD_KEY — Invalid API key
SERVICE_UNAVAILABLE_REGION — access from your region is restricted, please use another IP

Activation API: Get current prices by countrycopy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=getPrices&service=$service&country=$country

&action=getPrices
$api_key — your API key (Settings);
$service — service code;
$country — country code.

Service responses in the format 
For example, a request of the form https://api.koalasms.com/stubs/handler_api.php?api_key=YOURKEY&action=getPrices&country=0

{
  "Country": {
    "Service": {
      "cost": Cost,
      "count": Quantity
    }
  }
}
Activation API: Get current prices by country v2copy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=getPrices&service=$service&country=$country

&action=getPricesV2
$api_key — your API key (Settings);
$service — service code;
$country — country code.

Possible errors:
BAD_KEY — Invalid API key
BAD_ACTION — incorrect action
BAD_SERVICE — incorrect service name

Service responses in the format 

  "country": {
    "service": {
            "price1": count,
            "price2": count,
            "price3": count,
          }
     },
Activation API: Get current prices by country v3copy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=getPricesV3&service=$service&country=$country

&action=getPricesV3
$api_key — your API key (Settings);
$service — service code;
$country — country code.

Possible errors:
BAD_KEY — Invalid API key
BAD_ACTION — incorrect action
BAD_SERVICE  — incorrect service name

Service responses in the format

{
  "country": {
    "service": {
      "price": price,
      "count": count,
      "providers": {
        "provider 1 id": {
          "count": count,
          "price": [price1, price2],
          "provider_id": provider_id
        },
        "provider 2 id": {
          "count": count,
          "price": [price],
          "provider_id": provider_id
        },
        "provider 3 id": {
          "count": count,
          "price": [price1, price2, price3],
          "provider_id": provider_id
        }
      }
    }
  }
}
Activation API: Get a list of active activationscopy-link

https://api.koalasms.com/stubs/handler_api.php?api_key=$api_key&action=getActiveActivations

&action=getActiveActivations
$api_key — your API key (Settings);

The example of successful answer:

[
    {
        "activationCost": 1.10,
        "activationId": "732845901",
        "activationStatus": 1,
        "activationTime": "2026-04-03 16:25:40",
        "canGetAnotherSms": "1",
        "countryCode": "49",
        "countryName": "Germany",
        "currency": 978,
        "discount": "0.05",
        "phoneNumber": "4917623456789",
        "repeated": "0",
        "serviceCode": "tg",
        "smsCode": "847392",
        "smsText": "Your Telegram verification code is 847392"
    }
]

Possible errors:
NO_KEY — Invalid API key
SERVICE_UNAVAILABLE_REGION — access from your region is restricted, please use another IP