POST / sms/send
Base URL: https://backend.easify.app/api/v2
This endpoint is used to send SMS/MMS.
This endpoint allows users to send SMS/MMS messages using their Easify phone number.
To prevent abuse, there is a rate limit of 15 requests per minute per user. If you exceed this limit, you will receive a 429 Too Many Requests status with a message indicating when you can try again.
Authentication
The Easify API token used for authentication is passed in the header as a Bearer token, which can be obtained from the easify app under Settings > API Settings.
Headers
Authorization string required Bearer << YOUR_EASIFY_API_TOKEN_HERE >>
Query Parameters
from_number string |
From number to send SMS *Ensure that you are using a phone number associated with the api token,please use the Phone Numbers API to retrieve the associated phone numbers. *No need of attaching country code |
Required |
to_number string | To number to send SMS (No need of attaching country code) | Required |
message string | The content to be sent | Required without media |
media string/file | To attach media files | Required without message |
lead_id string | CRM lead id(If you have a CRM and need to associate the SMS history with a specific lead, you can use the lead_id to connect the SMS records to the corresponding lead in your CRM) | Optional |
country_code string | Country code for to_number (Currently support +1, +972 and +44 codes) | Required |
force_send integer | If you send an SMS outside of open hours and closing hours, it will be scheduled for the next opening hour. If you need to send it immediately despite being outside of these hours, set force_send to 1 | Optional |
Sample Request and Success Response:
Request:
{
"from_number": "315293****",
"to_number": "315135****",
"country_code": "+1",
"message": "Hai"
}
Success Response:
{
"status": true,
"message": " SMS Processed successfully.",
"data": {
"sms_id": "315**"
}
}
Easify DNC Registry and chat block will not prevent sending SMS; they only block blacklisted numbers
Api Response Status
Case | Status Code | Response |
---|---|---|
If the user provides an invalid Easify API token or does not pass the Easify API token in the header. | 401 |
{
"status":false,
"message":"Unauthenticated",
"errors":[]
}
|
If user not provided from_number | 422 |
{
"message":"The from_number is required.",
"errors": {
"from_number": ["The from number is required."]
}
}
|
If user provided invalid from_number | 400 |
{
"status":false,
"message":"Selected from number is invalid",
"errors": []
}
|
If user provided invalid to_number | 400 |
{
"status":false,
"message":"InvalidRecipient!",
"errors": []
}
|
If the number is blacklisted | 400 |
{
"status":false,
"message":" Sorry, this recipient is blacklisted! ",
"errors": []
}
|
If the user does not have enough credits | 400 |
{
"status": false,
"message": "Sorry, you do not have enough credits to send this SMS. Please recharge for more.",
"errors": []
}
|
If the user provided invalid country code | 422 |
{
"message": "Currently, this service is only available in the following countries: Canada, United States, Israel, United Kingdom. Please verify the country code.",
"errors": {
"country_code": ["Currently, this service is only available in the following countries: Canada, United States, Israel, United Kingdom. Please verify the country code."]
}
}
|
If the user not providedcountry_code | 400 |
{
"message": "The country code field is required.",
"errors": {
"country_code": ["The country code field is required."]
}
}
|
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":[]
}
|
If the user does not have an enterprise plan | 403 |
{
"status": false,
"message": "Access denied. Your current plan does not allow access to this feature. Please upgrade to the Enterprise plan.",
"errors": []
}
|
PHP-cURL
php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://backend.easify.app/api/v2/sms/send',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => json_encode([
'from_number' => '+1320301****',
'to_number' => '7736389****',
'message' => 'Haii',
'country_code' => '+1'
]),
CURLOPT_HTTPHEADER => [
'Accept: application/json',
'Authorization: Bearer 1955|43da5bb5-5c2b-4059-a4de-d44bf5****',
'Content-Type: application/json'
],
]);
$response = curl_exec($curl);
curl_close($curl);
echo $response;