ESMS SMS API allows you to send and receive SMS messages to and from any country in the world through a REST API. Each message is identified by a unique random ID so that users can always check the status of a message using the given endpoint.
API Endpoint
https://login.esms.com.bd/api/v3/sms/send
Parameter | Required | Description |
---|---|---|
Authorization |
Yes
|
When calling our API, send your api token with the authentication type set as Bearer (Example: Authorization: Bearer {api_token} ) |
Accept |
Yes
|
Set to application/json |
ESMS’s Programmable SMS API enables you to programmatically send SMS messages from your web application. First, you need to create a new message object. ESMS returns the created message object with each request.
Send your first SMS message with this example request.
API Endpoint
https://login.esms.com.bd/api/v3/sms/send
Parameter | Required | Type | Description |
---|---|---|---|
recipient |
Yes
|
string | Number to send message. Use comma (,) to send multiple numbers. Ex. 31612345678,8801721970168 |
sender_id |
Yes
|
string | The sender of the message. This can be a telephone number (including country code) or an alphanumeric string. In case of an alphanumeric string, the maximum length is 11 characters. |
type |
Yes
|
string | The type of the message. For text message you have to insert plain as sms type. |
message |
Yes
|
string | The body of the SMS message. |
schedule_time |
No
|
datetime | The scheduled date and time of the message in RFC3339 format (Y-m-d H:i) |
curl -X POST https://login.esms.com.bd/api/v3/sms/send \
-H 'Authorization: Bearer 7|xs6pv2dspHJq8sWLhrpNFH5YLilMRQcVxLwSw2Sd' \
-d "recipient=31612345678" \
-d "sender_id=YourName" \
-d "type=plain" \
-d "schedule_time=2021-12-20 07:00" \
-d "message=This is a test message"
curl -X POST https://login.esms.com.bd/api/v3/sms/send \
-H 'Authorization: Bearer 7|xs6pv2dspHJq8sWLhrpNFH5YLilMRQcVxLwSw2Sd' \
-d "recipient=31612345678,8801721970168" \
-d "sender_id=YourName" \
-d "type=plain" \
-d "schedule_time=2021-12-20 07:00" \
-d "message=This is a test message"
Returns a contact object if the request was successful.
{
"status": "success",
"data": "sms reports with all details",
}
If the request failed, an error object will be returned.
{
"status": "error",
"message" : "A human-readable description of the error."
}
You can use ESMS’s SMS API to retrieve information of an existing inbound or outbound SMS message.
You only need to supply the unique message id that was returned upon creation or receiving.
API Endpoint
https://login.esms.com.bd/api/v3/sms/{uid}
Parameter | Required | Type | Description |
---|---|---|---|
uid |
Yes
|
string | A unique random uid which is created on the ESMS platform and is returned upon creation of the object. |
curl -X GET https://login.esms.com.bd/api/v3/sms/606812e63f78b \
-H 'Authorization: Bearer 7|xs6pv2dspHJq8sWLhrpNFH5YLilMRQcVxLwSw2Sd'
Returns a contact object if the request was successful.
{
"status": "success",
"data": "sms data with all details",
}
If the request failed, an error object will be returned.
{
"status": "error",
"message" : "A human-readable description of the error."
}
API Endpoint
https://login.esms.com.bd/api/v3/sms/
curl -X GET https://login.esms.com.bd/api/v3/sms \
-H 'Authorization: Bearer 7|xs6pv2dspHJq8sWLhrpNFH5YLilMRQcVxLwSw2Sd'
Returns a contact object if the request was successful.
{
"status": "success",
"data": "sms reports with pagination",
}
If the request failed, an error object will be returned.
{
"status": "error",
"message" : "A human-readable description of the error."
}