SMS Status Classic
GET
/api/v2/sms/status Base URL https://api.easify.liveBearer token and Accept header required Authentication →
This endpoint is used to fetch the status of a message sent with Send SMS (Classic).
The user can fetch the SMS status using the sms_id, which is provided in the Send SMS (Classic) API response.
There is a rate limit of 60 requests per minute per API token. This limit is shared by all API endpoints except those with their own separate limit (/api/v2/sms/send, /api/v3/sms/send, etc.), so requests to other endpoints also count toward it. If you exceed this limit, you will receive a 429 Too Many Requests status, along with a message indicating when you can try again.
Query Parameters
| sms_id string | sms_id is provided in the send-sms API response | Required |
Example Request and Response
Params:
{
"sms_id": "3315**"
}
Success Response:
{
"status": true,
"message": "SMS status successfully fetched",
"data": {
"status": "Delivered",
"remarks": ""
}
}
SMS Status
| Status | Description |
|---|---|
| Pending | The SMS message is in the queue to be sent |
| Delivered | The SMS message has been successfully delivered to the recipient. |
| Undelivered | The SMS message could not be delivered to the recipient. This could be due to various reasons such as an invalid phone number or network issue. |
| Failed | The SMS message delivery attempt failed. This could be due to a technical issue on the service provider's end |
| Success | The SMS message has been successfully sent to the recipient |
| Scheduled | If you are sending an SMS during a restricted time, it will be scheduled for the next available time. |
Responses
| Case | Status Code | Response |
|---|---|---|
| If the user does not provide a token in the header or provides an invalid token | 401 |
{
"status":false,
"message":"Unauthenticated",
"errors":[]
}
|
| If user not provided sms_id | 422 |
{
"message":"The sms id field is required.",
"errors": {
"sms_id": ["The sms id field is required."]
}
}
|
| If user provided invalid sms_id | 400 |
{
"status":false"
message":"Failed to fetch SMS Status, please check your SMS ID!",
"errors": []
}
|
| If the user exceeds the allowed rate limit for requests | 429 |
{
"status":false,
"message":"Too many requests. Try again in 59 seconds",
"errors":[]
}
|
| If the user's subscription has ended | 402 |
{
"status":false,"message":"You need to recharge your account to proceed","errors":[]
}
|
| When the user account is inactive | 403 |
{
"status": false,
"message": "Your account is currently inactive.",
"errors": []
}
|
| If the request comes from an IP address or domain that is not on the account's API whitelist | 400 |
{
"status": false,
"message": "Access denied! Your IP or domain is not whitelisted.[ HostName : ] - [ Ip Address : << YOUR_SERVER_IP >>]",
"errors": []
}
|
Code Examples
Fetch the SMS status
php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.easify.live/api/v2/sms/status?sms_id=3315**',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer <> ',
'Accept: application/json',
],
]);
$response = curl_exec($curl);
curl_close($curl);
echo $response;