Prefer a Plugin? Start Faster

Install the BG TEL SMS Gateway module for Odoo 17, 18, or 19, or use our WooCommerce extension or WordPress plugin for automated notifications and campaigns.

Need Help Connecting Our API?

Don’t have the technical resources to connect our API? Our team can help set it up—or develop a custom connector or plugin where feasible, complimentary.

Contact Us

Production API Endpoints

All requests use HTTPS and return JSON. Authenticate requests with your account code and API key where specified.

POST https://apipro.bgtelsms.com/balance

Check Balance

Check the remaining SMS balance of a prepaid account.

Parameter Required Description
acode Yes Account Code
api_key Yes API Key

Request

{
  "acode": "XXXXXXX",
  "api_key": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
}

Success Response

{
  "response": {
    "code": 200,
    "timestamp": "2023-09-12 10:32:16",
    "message": "Success"
  },
  "info": {
    "request": "Balance enquiry",
    "balance": "0.0000",
    "credit": "0.0000"
  }
}

Failed Response

{
  "response": {
    "code": 202,
    "timestamp": "2023-09-12 10:35:28",
    "message": "Authentication failed"
  },
  "info": {
    "request": "Balance enquiry",
    "requestID": "64ffea90f09d7"
  }
}
POST / GET / PUT https://apipro.bgtelsms.com/onetomany

Send SMS (One to Many)

Send one SMS message to multiple contacts for transactional or promotional use.

ParameterRequiredDescription
acodeYesAccount Code
api_keyYesAPI Key
msgYesSMS text
typeYesSMS text type: text or unicode
senderidYesApproved sender number
contactsYesPhone numbers separated with +
transactionTypeYesT for Transactional or P for Promotional
contentIDYesContent/Template ID; leave empty for Transactional SMS

JSON Request

{
  "acode": "XXXXX",
  "api_key": "XXXXX",
  "senderid": "XXXXX",
  "type": "text",
  "msg": "SMS Text",
  "contacts": "+8801XXXXXXXXX+8801XXXXXXXX+8801XXXXXXXXX",
  "transactionType": "T",
  "contentID": ""
}

GET Request

https://apipro.bgtelsms.com/onetomany?acode=XXXXXX&api_key=XXXXXXXXX&senderid=XXXXXXX&type=text&msg=Test%20message&contacts=%2B8801XXXXXX%2B8801XXXXXX&transactionType=T&contentID=

Success Response

{
  "response": {
    "code": 200,
    "timestamp": "2023-07-23 15:44:42",
    "message": "Success"
  },
  "info": {
    "request": "SMS Send",
    "requestID": "64bcf68a788a6",
    "smsCharge": "X.XX",
    "balance": "X.XX"
  }
}

Failed Response

{
  "response": {
    "code": 301,
    "timestamp": "2023-07-23 12:56:56",
    "message": "Failed for low balance"
  },
  "info": {
    "request": "SMS Send",
    "requestID": "64bccf3891d0e"
  }
}
POST / GET / PUT https://apipro.bgtelsms.com/manytomany

Send SMS (Many to Many)

Send individual SMS messages to multiple recipients for transactional or promotional use.

ParameterRequiredDescription
acodeYesAccount Code
api_keyYesAPI Key
senderidYesApproved sender number
messagesYesArray of recipient and message objects
transactionTypeYesT for Transactional or P for Promotional
contentIDYesContent/Template ID; leave empty for Transactional SMS

JSON Request

{
  "acode": "XXXXXXX",
  "api_key": "XXXXXX",
  "senderid": "XXXXX",
  "messages": [
    {
      "to": "880XXXXXXXXX",
      "message": "test message"
    },
    {
      "to": "880XXXXXXXXX",
      "message": "test message"
    }
  ],
  "transactionType": "T",
  "contentID": ""
}

Success Response

{
  "response": {
    "code": 200,
    "timestamp": "2023-07-23 15:44:42",
    "message": "Success"
  },
  "info": {
    "request": "SMS Send",
    "requestID": "64bcf68a788a6",
    "smsCharge": "X.XX",
    "balance": "X.XX"
  }
}

Failed Response

{
  "response": {
    "code": 301,
    "timestamp": "2023-07-23 12:56:56",
    "message": "Failed for low balance"
  },
  "info": {
    "request": "SMS Send",
    "requestID": "64bccf3891d0e"
  }
}
POST https://apipro.bgtelsms.com/deliveryreport

Delivery Report

Retrieve the delivery report for an SMS request.

ParameterRequiredDescription
acodeYesAccount Code
requestIDYesRequest ID returned by the SMS send endpoint
smsdateYesSMS request date in YYYYMMDD format

Request

{
  "acode": "XXXXXXX",
  "requestID": "64da40fb6c646",
  "smsdate": "20230814"
}

Success Response

{
  "response": {
    "code": 200,
    "timestamp": "2023-08-14 21:18:06",
    "message": "Success"
  },
  "info": [
    {
      "requestID": "64da40fb6c646",
      "sender": "8809617612411",
      "receiver": "8801792169566",
      "submittime": "2023-08-14 20:58:04",
      "deliverytime": "2023-08-14 20:58:04",
      "status": "Delivered",
      "response": ""
    }
  ]
}

Failed Response

{
  "response": {
    "code": 201,
    "timestamp": "2023-08-14 21:22:19",
    "message": "Invliad DLR request information"
  },
  "info": []
}

Why Developers Love Our API

  • Secure HTTPS endpoints with JSON responses

  • One-to-many and many-to-many SMS sending

  • Transactional and promotional message support

  • Balance enquiries and delivery report tracking