BEE-SMS Service API Documentation

API is a protocol between your software and our server. The API is needed in order to automate the process of receiving SMS messages on your side To work with the API, you must use your API Token, you can get it by going to the profile page.

Our software is fully compatible with competitor sites

Protocol Description

All requests should go to https://api.bee-sms.com

All requests must have an API Token as a parameter "token"

Search for country and service code

List country code

List service code


Affiliate Programs for Developers

You can get a commission on every spend when users use your program, all you need to do is sign up for an account and put you referral code on every request. Check out for more details.

Your software must be public so that everyone can buy or rent it.


Query balance

GET - https://api.bee-sms.com/v1/user/balance?token=$token

Parameters

FieldLocationTypeRequiredDescription
tokenqueryStringYesYour API Token

Result

FieldTypeDescription
codeNumberResponse Status
messageStringResponse Description
dataNumberAccount balance in cents (e.g., 100 cents = $1.00)

Success

{
  "code": 200,
  "message": "Operation Success",
  "data": 10978
}

Possible Errors

{
  "code": 401,
  "message": "Not yet logged in or certificate has expired"
}

List all countries / areas

GET - https://api.bee-sms.com/v1/otp/areas?token=$token

Parameters

FieldLocationTypeRequiredDescription
tokenqueryStringYesYour API Token

Result

FieldTypeDescription
codeNumberResponse status
messageStringResponse description
dataObjectList of area object

Columns of data

FieldTypeDescription
nameStringCountry / Area name
codeString
dialing_codeString

Success

{
  "code": 200,
  "message": "Operation Success",
  "data": [
    {
      "name": "Australia",
      "code": "au",
      "dialing_code": "61"
    }
  ]
}

Possible Errors

{
  "code": 401,
  "message": "Not yet logged in or certificate has expired"
}

List all services

GET - https://api.bee-sms.com/v1/otp/services?token=$token

Parameters

FieldLocationTypeRequiredDescription
tokenqueryStringYesYour API Token

Result

FieldTypeDescription
codeNumberResponse status
messageStringResponse description
dataObjectList of service object

Columns of data

FieldTypeDescription
nameStringService name
codeString

Success

{
  "code": 200,
  "message": "Operation Success",
  "data": [
    {
      "name": "Telegram",
      "code": "tg"
    }
  ]
}

Possible Errors

{
  "code": 401,
  "message": "Not yet logged in or certificate has expired"
}

List services price and available number

GET - https://api.bee-sms.com/v1/otp/prices?token=$token&area=$area_code&service=$service_code

Parameters

FieldLocationTypeRequiredDescription
tokenqueryStringYesYour API Token
areaqueryStringOptionalCountry / Area Code
servicequeryStringOptionalService Code

The area and service parameters must have at least one

Result

FieldTypeDescription
codeNumberResponse status
messageStringResponse description
dataObjectList of price data

Columns of data

FieldTypeDescription
area_nameStringCountry / Area name
area_codeStringArea union id
service_nameStringService name
service_codeStringService union id
retail_amountNumberOriginal price in cents (e.g., 100 cents = $1.00)
amountNumberPrice after discount, unit cents (e.g., 100 cents = $1.00)
qtyNumberAvailable number

Success

{
  "code": 200,
  "message": "Operation Success",
  "data": [
    {
      "area_code": "au",
      "area_name": "Australia",
      "service_code": "tg",
      "service_name": "Telegram",
      "retail_amount": 661,
      "amount": 641,
      "qty": 3968
    }
  ]
}

Possible Errors

// Both the area and service parameters are missing.
{
  "code": 400,
  "message": "Invalid Parameter"
}
{
  "code": 401,
  "message": "Not yet logged in or certificate has expired"
}
{
  "code": 50113,
  "message": "Area or service does not exist"
}

Purchase OTP number

GET - https://api.bee-sms.com/v1/otp/purchase?token=$token&area=$area_code&service=$service_code

Parameters

FieldLocationTypeRequiredDescription
tokenqueryStringYesYour API Token
areaqueryStringYesCountry / Area Code
servicequeryStringYesService Code
refer_idqueryStringNoPass Referral ID

Result

FieldTypeDescription
codeNumberResponse status
messageStringResponse description
dataObjectOrder result data

Columns of data

FieldTypeDescription
order_idStringOrder id
mobile_numberStringphone number
dialing_codeStringService name
reuseBooleanReusable or not

Success

{
  "code": 200,
  "message": "Operation Success",
  "data": {
    "order_id": "2541517119212500009",
    "mobile_number": "5139357073",
    "dialing_code": "1",
    "reuse": true
  }
}

Possible Errors

{
  "code": 401,
  "message": "Not yet logged in or certificate has expired"
}
{
  "code": 50001,
  "message": "Balance not enough"
}
{
  "code": 50101,
  "message": "The service is too hot, please try again later."
}
{
  "code": 50111,
  "message": "No number available, please try again later."
}
{
  "code": 50113,
  "message": "Area or service does not exist"
}

Get OTP sms

GET - https://api.bee-sms.com/v1/otp/sms?token=$token&order=$order_id

Parameters

FieldLocationTypeRequiredDescription
tokenqueryStringYesYour API Token
orderqueryStringYesOTP Order Id

Result

FieldTypeDescription
codeNumberResponse status
messageStringResponse description
dataObjectReceived sms

Success

{
  "code": 200,
  "message": "Operation Success",
  "data": "429916"
}

Possible Errors

{
  "code": 401,
  "message": "Not yet logged in or certificate has expired"
}
{
  "code": 50106,
  "message": "Not received sms yet"
}
{
  "code": 50107,
  "message": "This mobile number has been released or timeout."
}
{
  "code": 50112,
  "message": "Incorrect number status, this order has been canceled and refunded."
}

Cancel a request

GET - https://api.bee-sms.com/v1/otp/cancel?token=$token&order=$order_id

Parameters

FieldLocationTypeRequiredDescription
tokenqueryStringYesYour API Token
orderqueryStringYesOTP Order Id

Result

FieldTypeDescription
codeNumberResponse status
messageStringResponse description

Success

{
  "code": 200,
  "message": "Operation Success"
}

Possible Errors

{
  "code": 401,
  "message": "Not yet logged in or certificate has expired"
}
{
  "code": 50103,
  "message": "Can't change order status because the order has already closed."
}

Reuse number for certain project

Not every number can be reused. And this feature is only available if you have previously used the number to receive SMS from this service.

GET - https://api.bee-sms.com/v1/otp/reuse?token=$token&area=$area_code&service=$service_code&mobile_number=$mobile_number

Parameters

FieldLocationTypeRequiredDescription
tokenqueryStringYesYour API Token
areaqueryStringYesCountry / Area Code
servicequeryStringYesService Code
mobile_numberqueryStringYesNumber without the dialing code
refer_idqueryStringNoPass Referral ID

Result

FieldTypeDescription
codeNumberResponse status
messageStringResponse description
dataObjectOrder result data

Columns of data

FieldTypeDescription
order_idStringOrder id
mobile_numberStringphone number
dialing_codeStringService name
reuseBooleanReusable or not

Success

{
  "code": 200,
  "message": "Operation Success",
  "data": {
    "order_id": "2541517119212500009",
    "mobile_number": "5139357073",
    "dialing_code": "1",
    "reuse": true
  }
}

Possible Errors

{
  "code": 401,
  "message": "Not yet logged in or certificate has expired"
}
{
  "code": 50001,
  "message": "Balance not enough"
}
{
  "code": 50101,
  "message": "The service is too hot, please try again later."
}
{
  "code": 50108,
  "message": "This mobile number cannot be reused"
}
{
  "code": 50109,
  "message": "The mobile number is taken. Please try again later."
}
{
  "code": 50110,
  "message": "The mobile number is expired"
}
{
  "code": 50113,
  "message": "Area or service does not exist"
}