نسخه جدید SMSPanel
مقدمه
در این بخش مفاهیم و قراردادهای کلی مربوط به استفاده از وب سرویس sms.ir، شرح داده خواهند شد.
HTTP REQUEST HEADER
شما میتوانید برای انجام تنظیمات ضروری و یا شخصی سازی شده، از هدرهای مشخص شده در جدول زیر استفاده نمایید.
عملکرد | مقدار | کلید |
---|---|---|
دریافت خروجی با فرمت Json یا Xml | application/json یا application/xml | ACCEPT |
احراز هویت | کلید تعریف شده در پنل | X-API-KEY |
HTTP STATUS CODE
تمامی درخواست های ارسالی دارای HTTP status code های بازگشتی مطابق جدول زیر میباشند. .
توضیح | کد وضعیت |
---|---|
عملیات موفقیت آمیز | 200 |
وقوع خطای منطقی | 400 |
وجود خطا در فرآیند احراز هویت | 401 |
تعداد درخواست غیر مجاز | 429 |
خطای غیر منتظره | 500 |
UNIX TIME
واحد مقادیر مربوط به زمان در سطح این سامانه به صورت Unix Time و بر حسب ساعت هماهنگ جهانی (UTC) لحاظ شده است.
مدل بازگشتی
تمامی درخواست های ارسالی دارای مدل بازگشتی یکپارچه با ساختار زیر میباشند.
{ "status":1, "message":"موفق", "data":[ 30004505000027, 10002166593818 ] }
توضیح | مشخصه |
---|---|
کد وضعیت | Status |
توضیحات وضعیت درخواست | Message |
دیتای بازگشتی | Data |
AUTHORIZATION – احراز هویت
شبه منظور هویت سنجی در هنگام استفاده از وب سرویسهای پیامک سفید ملزم به ارسال کلید خصوصی در بخش هدر درخواست مورد نظر میباشید. کلید های خصوصی شما در پنل برنامه نویسان قابل مشاهده و مدیریت میباشند.در هنگام فراخوانی متدهای سامانه کلید خصوصی را با عنوان X-API-KEY در هدر درخواست قرار دهید.
PN1TVeBeaAehFLJAKU4XdfpsFXsQguYfleO0bV4ceh6diTZid2hRXza3uSkBbDef
ارسال ها
ارسال گروهی
این متد برای ارسال یک متن پیامک به گروهی از شماره موبایل ها مورد استفاده قرار میگیرد. همچنین شما میتوانید با مقداردهی به پارامتر زمان ارسال، از قابلیت ارسال پیامک زمانبندی شده نیز استفاده نمایید.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var payload = @"{" + "\n" + @" ""lineNumber"": 300000000000," + "\n" + @" ""messageText"": ""Your Text""," + "\n" + @" ""mobiles"": [" + "\n" + @" ""Your Mobile 1""" + "\n" + @" ]," + "\n" + @" ""sendDateTime"": null" + "\n" + @"}"; HttpContent content = new StringContent(payload, Encoding.UTF8, "application/json"); var response = await httpClient.PostAsync("https://api.sms.ir/v1/send/bulk", content); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); myHeaders.append("Content-Type", "application/json"); var raw = JSON.stringify({ "lineNumber": 300000000000, "messageText": "Your Text", "mobiles": [ "Your Mobile 1", "Your Mobile 2" ], "sendDateTime": null }); var requestOptions = { method: 'POST', headers: myHeaders, body: raw, redirect: 'follow' }; fetch("https://api.sms.ir/v1/send/bulk", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var data = JSON.stringify({ "lineNumber": 300000000000, "messageText": "Your Text", "mobiles": [ "Your Mobile 1", "Your Mobile 2" ], "sendDateTime": null }); var config = { method: 'post', url: 'https://api.sms.ir/v1/send/bulk', headers: { 'X-API-KEY': '[YOURAPIKEY]', 'Content-Type': 'application/json' }, data : data }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/send/bulk', 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 =>'{ "lineNumber": 300000000000, "messageText": "Your Text", "mobiles": [ "Your Mobile 1", "Your Mobile 2" ], "sendDateTime": null }', CURLOPT_HTTPHEADER => array( 'X-API-KEY: [YOURAPIKEY]', 'Content-Type: application/json' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = json.dumps({ "lineNumber": 300000000000, "messageText": "Your Text", "mobiles": [ "Your Mobile 1", "Your Mobile 2" ], "sendDateTime": None }) headers = { 'X-API-KEY': '[YOURAPIKEY]', 'Content-Type': 'application/json' } conn.request("POST", "/v1/send/bulk", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\r\n \"lineNumber\": 300000000000,\r\n \"messageText\": \"Your Text\",\r\n \"mobiles\": [\r\n \"Your Mobile 1\",\r\n \"Your Mobile 2\"\r\n ],\r\n \"sendDateTime\": null\r\n}"); Request request = new Request.Builder() .url("https://api.sms.ir/v1/send/bulk") .method("POST", body) .addHeader("X-API-KEY", "[YOURAPIKEY]") .addHeader("Content-Type", "application/json") .build(); Response response = client.newCall(request).execute();
Request Method : POST
حداکثر تعداد مجاز
شمارههای مقصد 100 میباشد.
برای ارسال زمانبندی شده، انتخاب زمان گذشته نامعتبر
میباشد.
برای ارسال زمانبندی شده ، زمان معتبر می تواند در
بازه یک ساعت آینده تا حداکثر 3 روز آینده در نظر
گرفته شود.
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
شماره خط ارسالی | Long | اجباری | lineNumber |
متن پیام کوتاه | String | اجباری | MessageText |
شماره موبایلها | Array of String | اجباری | Mobiles |
زمان ارسال پیامک (در صورت خالی بودن، ارسال در لحظه انجام میشود) | UnixTime | اختیاری | SendDateTime |
توضیح | نوع | مشخصه |
---|---|---|
شناسه یکتای مجموعه ارسال | Guid | PackId |
آرایه ای از شناسه های یکتای هر پیامک | Array of Integer | MessageIds |
اعتبار مصرفی مجموعه ارسال | Decimal | Cost |
{ "lineNumber": 30004505000017, "messageText": "سرویس پیامکی ایده پردازان با 10 سال سابقه همراه شماست", "mobiles": [ "00912xxxx677", "0919xxxx904" ] }
{ "status": 1, "message": "موفق", "data": { "packId": "2b99e63c-9bf8-4a21-9bfe-3f72dc1b46f1", "messageIds": [ 86522023, 86522024 ], "cost": 2.0 } }
ارسال نظیر به نظیر
این متد برای ارسال یک متن پیامک به گروهی از شماره موبایل ها مورد استفاده قرار میگیرد. همچنین شما میتوانید با مقداردهی به پارامتر زمان ارسال، از قابلیت ارسال پیامک زمانبندی شده نیز استفاده نمایید.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var payload = @"{" + "\n" + @" ""lineNumber"": 300000000000," + "\n" + @" ""messageTexts"": [" + "\n" + @" ""Your Text 1""" + "\n" + @" ]," + "\n" + @" ""mobiles"": [" + "\n" + @" ""Your Mobile 1""" + "\n" + @" ]," + "\n" + @" ""sendDateTime"": null" + "\n" + @"}"; HttpContent content = new StringContent(payload, Encoding.UTF8, "application/json"); var response = await httpClient.PostAsync("https://api.sms.ir/v1/send/likeToLike", content); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("Content-Type", "application/json"); myHeaders.append("Accept", "text/plain"); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var raw = JSON.stringify({ "lineNumber": 300000000000, "messageTexts": [ "Your Text 1", "Your Text 2" ], "mobiles": [ "Your Mobile 1", "Your Mobile 1" ], "senddatetime": null }); var requestOptions = { method: 'POST', headers: myHeaders, body: raw, redirect: 'follow' }; fetch("https://api.sms.ir/v1/send/likeToLike", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var data = JSON.stringify({ "lineNumber": 300000000000, "messageTexts": [ "Your Text 1", "Your Text 2" ], "mobiles": [ "Your Mobile 1", "Your Mobile 1" ], "senddatetime": null }); var config = { method: 'post', url: 'https://api.sms.ir/v1/send/likeToLike', headers: { 'Content-Type': 'application/json', 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' }, data : data }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/send/likeToLike', 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 =>'{ "lineNumber": 300000000000, "messageTexts": [ "Your Text 1", "Your Text 2" ], "mobiles": [ "Your Mobile 1", "Your Mobile 1" ], "senddatetime": null }', CURLOPT_HTTPHEADER => array( 'Content-Type: application/json', 'Accept: text/plain', 'X-API-KEY: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = json.dumps({ "lineNumber": 300000000000, "messageTexts": [ "Your Text 1", "Your Text 2" ], "mobiles": [ "Your Mobile 1", "Your Mobile 1" ], "senddatetime": None }) headers = { 'Content-Type': 'application/json', 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' } conn.request("POST", "/v1/send/likeToLike", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\n \"lineNumber\": 300000000000,\n \"messageTexts\": [\n \"Your Text 1\",\n \"Your Text 2\"\n ],\n \"mobiles\": [\n \"Your Mobile 1\",\n \"Your Mobile 1\"\n ],\n \"senddatetime\": null\n}"); Request request = new Request.Builder() .url("https://api.sms.ir/v1/send/likeToLike") .method("POST", body) .addHeader("Content-Type", "application/json") .addHeader("Accept", "text/plain") .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : POST
حداکثر تعداد مجاز
شمارههای مقصد 100 میباشد.
عداد شماره موبایلها و متنهای پیامک باید
برابر باشند.
رای ارسال
زمانبندی شده، انتخاب زمان گذشته نامعتبر
میباشد.
برای ارسال زمانبدی شده ، زمان معتبر می تواند
در بازه یک ساعت آینده تا حداکثر 3 روز آینده
در نظر گرفته شود.
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
شماره خط ارسالی | Long | اجباری | lineNumber |
متن پیام کوتاه | String | اجباری | MessageText |
شماره موبایلها | Array of String | اجباری | Mobiles |
زمان ارسال پیامک (در صورت خالی بودن، ارسال در لحظه انجام میشود) | UnixTime | اختیاری | SendDateTime |
توضیح | نوع | مشخصه |
---|---|---|
شناسه یکتای مجموعه ارسال | Guid | PackId |
شناسه یکتای مجموعه ارسال | Array of Integer | MessageIds |
اعتبار مصرفی مجموعه ارسال | Decimal | Cost |
{ "lineNumber": "30004505000017", "messageTexts": [ "سرویس پیامکی ایده پردازان با 10 سال سابقه همراه شماست", "ipdemy.ir پلتفرم آموزش آنلاین، آکادمی ایده پردازان" ], "mobiles": [ "912xxxx677", "+98919xxxx904" ] }
{ "status": 1, "message": "موفق", "data": { "packId": "2b99e63c-9bf8-4a21-9bfe-3f72dc1b46f1", "messageIds": [ 86522023, 86522024 ], "cost": 2.0 } }
حذف ارسال زمانبندی شده
بهمنظور حذف و انصراف از ارسال زمانبندی شده میتوانید از متد زیر استفاده نمایید. در این متد، شناسه مجموعه ارسال (packId) دریافتی از خروجی ارسال گروهی یا نظیر به نظیر، مورد استفاده قرار میگیرد.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var response = await httpClient.DeleteAsync("https://api.sms.ir/v1/send/scheduled/:Packid"); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("Accept", "text/plain"); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var requestOptions = { method: 'DELETE', headers: myHeaders, redirect: 'follow' }; fetch("https://api.sms.ir/v1/send/scheduled/:Packid", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var config = { method: 'delete', url: 'https://api.sms.ir/v1/send/scheduled/:Packid', headers: { 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' } }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/send/scheduled/:Packid', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'DELETE', CURLOPT_HTTPHEADER => array( 'Accept: text/plain', 'X-API-KEY: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = '' headers = { 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' } conn.request("DELETE", "/v1/send/scheduled/:Packid", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api.sms.ir/v1/send/scheduled/:Packid") .method("DELETE", body) .addHeader("Accept", "text/plain") .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : DELETE
حداکثر تا 3 دقیقه مانده به زمان ارسال زمانبندی شده، مجاز به لغو آن میباشید.
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
شناسه مجموعه ارسال | Guid | اجباری | PackId |
توضیح | نوع | مشخصه |
---|---|---|
مقدار اعتبار بازگشتی | Decimal | ReturnedCreditCount |
تعداد پیامک ها | Integer | SmsCount |
{ "status": 1, "message": "موفق", "data": { "returnedCreditCount": 10.0, "smsCount": 5 } }
ارسال VERIFY
با استفاده از این متد شما قادر به ارسال پیامک به منظور ارسال کد اعتبارسنجی (verification code)، کد تایید، فاکتور خرید و به طور کلی پیامکهایی با اولویت بالا و پارامترهای پویا میباشید. از آنجایی که این نوع از ارسال با خطوط خدماتی ارسال میشود امکان دریافت آن توسط افرادی که پیامکهای تبلیغاتی خود را مسدود کردهاند نیز وجود دارد و با اولویت بالایی ارسال خواهد شد.برای استفاده از این نوع ارسال ابتدا قالب پیامک خود را در پنل (بخش ارسال سریع) مشخص نمایید.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var payload = @"{" + "\n" + @" ""mobile"": ""Your Mobile""," + "\n" + @" ""templateId"": 100000," + "\n" + @" ""parameters"": [" + "\n" + @" {" + "\n" + @" ""name"": ""CODE""," + "\n" + @" ""value"": ""1234""" + "\n" + @" }" + "\n" + @" ]" + "\n" + @"}"; HttpContent content = new StringContent(payload, Encoding.UTF8, "application/json"); var response = await httpClient.PostAsync("https://api.sms.ir/v1/send/verify", content); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("Content-Type", "application/json"); myHeaders.append("Accept", "text/plain"); myHeaders.append("x-api-key", "[YOURAPIKEY]"); var raw = JSON.stringify({ "mobile": "Your Mobile", "templateId": "YourTemplateID", "parameters": [ {name: 'PARAMETER1' , value: '000000'}, {name: 'PARAMETER2' , value: '000000'} ], }); var requestOptions = { method: 'POST', headers: myHeaders, body: raw, redirect: 'follow' }; fetch("https://api.sms.ir/v1/send/verify", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var data = JSON.stringify({ "mobile": "Your Mobile", "templateId": "YourTemplateID", "parameters": [ {name: 'PARAMETER1' , value: '000000'}, {name: 'PARAMETER2' , value: '000000'} ], }); var config = { method: 'post', url: 'https://api.sms.ir/v1/send/verify', headers: { 'Content-Type': 'application/json', 'Accept': 'text/plain', 'x-api-key': '[YOURAPIKEY]' }, data : data }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/send/verify', 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 =>'{ "mobile": "Your Mobile", "templateId": YourTemplateID, "parameters": [ { "name": "PARAMETER1", "value": "000000" }, { "name":"PARAMETER2", "value":"000000" } ] }', CURLOPT_HTTPHEADER => array( 'Content-Type: application/json', 'Accept: text/plain', 'x-api-key: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = "{\n \"mobile\": \"Your Mobile\",\n \"templateId\": YourTemplateID,\n \"parameters\": [\n {\n \"name\": \"PARAMETER1\",\n \"value\": \"000000\"\n }, \n {\n \"name\":\"PARAMETER2\",\n \"value\":\"000000\"\n }\n ]\n}" headers = { 'Content-Type': 'application/json', 'Accept': 'text/plain', 'x-api-key': '[YOURAPIKEY]' } conn.request("POST", "/v1/send/verify", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\n \"mobile\": \"Your Mobile\",\n \"templateId\": YourTemplateID,\n \"parameters\": [\n {\n \"name\": \"PARAMETER1\",\n \"value\": \"000000\"\n },\n {\n \"name\":\"PARAMETER2\",\n \"value\":\"000000\"\n }\n ]\n}"); Request request = new Request.Builder() .url("https://api.sms.ir/v1/send/verify") .method("POST", body) .addHeader("Content-Type", "application/json") .addHeader("Accept", "text/plain") .addHeader("x-api-key", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : POST
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
شماره موبایل | String | اجباری | Mobile |
شناسه قالب (قالب ها از طریق پنل قابل تعریف و مدیریت میباشند) | Integer | اجباری | TemplateId |
آرایه ای از مدل parameter برای تعیین مقادیر جایگزین شونده در قالب تعریف شده (ساختار مدل parameter در جدول زیر ذکر شده است) | Array of Parameter Model | اجباری | Parameters |
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
کلید تعیین شده در قالب (بدون در نظر گرفتن # در ابتدا و انتهای آن) | String | اجباری | Name |
مقدار کلید تعیین شده برای جایگزینی در قالب پیامک | String | اجباری | Value |
توضیح | نوع | مشخصه |
---|---|---|
شناسه یکتای پیامک | Integer | MessageId |
اعتبار مصرفی ارسال | Decimal | Cost |
{ "mobile": "919xxxx904", "templateId": 100000, "parameters": [ { "name": "Code", "value": "12345" } ] }
{ "status": 1, "message": "موفق", "data": { "messageId": 89545112, "cost": 1.0 } }
گزارش ها
گزارش پیامک دریافت وضعیت
شما میتوانید با استفاده از شناسه یکتای پیامک که پس از انجام هریک از ارسالها دریافت کردهاید، با فراخوانی این متد، به دریافت اطلاعات پیامک و همینطور اطلاع از وضعیت (Delivery) آن اقدام نمایید.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var response = await httpClient.GetAsync("https://api.sms.ir/v1/send/:MessageID"); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var requestOptions = { method: 'GET', headers: myHeaders, redirect: 'follow' }; fetch("https://api.sms.ir/v1/send/:MessageID", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var config = { method: 'get', url: 'https://api.sms.ir/v1/send/:MessageID', headers: { 'X-API-KEY': '[YOURAPIKEY]' } }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/send/:MessageID', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'X-API-KEY: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = '' headers = { 'X-API-KEY': '[YOURAPIKEY]' } conn.request("GET", "/v1/send/:MessageID", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api.sms.ir/v1/send/:MessageID") .method("GET", body) .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method: GET
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
شماره خط ارسالی | Long | اجباری | lineNumber |
متن پیام کوتاه | String | اجباری | MessageText |
شماره موبایلها | Array of String | اجباری | Mobiles |
زمان ارسال پیامک (در صورت خالی بودن، ارسال در لحظه انجام میشود) | UnixTime | اختیاری | SendDateTime |
توضیح | نوع | مشخصه |
---|---|---|
شناسه یکتای پیامک | Integer | MessageId |
شماره موبایل | Long | Mobile |
متن پیامک | String | MessageText |
زمان ارسال | Integer (UnixTime) | SendDateTime |
شماره خط | Long | LineNumber |
اعتبار کسر شده | Decimal | Cost |
وضعیت دلیوری | Nullable Byte | DeliveryState |
زمان دلیوری | Nullable Integer (UnixTime) | DeliveryDateTime |
{ "status": 1, "message": "موفق", "data": { "messageId": 89545112, "mobile": 912xxxx677, "messageText": "سرویس پیامکی ایده پردازان با 10 سال سابقه همراه شماست", "sendDateTime": 1628683626, "lineNumber": 30004505000017, "cost": 1.0, "deliveryState": 1, "deliveryDateTime": 1628683629 } }
گزارش مجموعه ارسال های روز
شما میتوانید با استفاده از این گزارش اطلاعات کلی مجموعه ارسالهای روز جاری را دریافت نمایید.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var response = await httpClient.GetAsync("https://api.sms.ir/v1/send/pack?pageNumber=1&pageSize=100"); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("Accept", "text/plain"); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var requestOptions = { method: 'GET', headers: myHeaders, redirect: 'follow' }; fetch("https://api.sms.ir/v1/send/pack?pageNumber=1&pageSize=100", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var config = { method: 'get', url: 'https://api.sms.ir/v1/send/pack?pageNumber=1&pageSize=100', headers: { 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' } }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/send/pack?pageNumber=1&pageSize=100', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'Accept: text/plain', 'X-API-KEY: [YOURAPIKEY]', ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = '' headers = { 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' } conn.request("GET", "/v1/send/pack?pageNumber=1&pageSize=100", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api.sms.ir/v1/send/pack?pageNumber=1&pageSize=100") .method("GET", body) .addHeader("Accept", "text/plain") .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : GET
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
تعداد آیتمهای در صفحه (مقدار پیشفرض 100 میباشد) | Integer | اختیاری | PageSize |
شماره صفحه درخواستی (مقدار پیشفرض 1 میباشد) | Integer | اختیاری | PageNumber |
توضیح | نوع | مشخصه |
---|---|---|
شناسه مجموعه | GUID | packId |
تعداد مخاطبان | Number | recipientCount |
زمان ایجاد | Number | creationDateTime |
{ "status": 1, "message": "موفق", "data": [{ "packId": e7c09e23f0db4834b9bcb79e7b054f4c, "recipientCount": 100, "creationDateTime": 1628683626, },{ "packId": 0cf3017fd9d84babbb5ed5579104dab2, "recipientCount": 200, "creationDateTime": 1628683626, }] }
گزارش مجموعه ارسال
شما میتوانید با استفاده از شناسه مجموعه ارسال، گزارشی از پیامکهای ارسالی در آن درخواست به همراه وضعیتهایشان را دریافت نمایید.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var response = await httpClient.GetAsync("https://api.sms.ir/v1/send/pack/:PackID"); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("PageSize", "2"); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var requestOptions = { method: 'GET', headers: myHeaders, redirect: 'follow' }; fetch("https://api.sms.ir/v1/send/pack/:PackID", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var config = { method: 'get', url: 'https://api.sms.ir/v1/send/pack/:PackID', headers: { 'PageSize': '2', 'X-API-KEY': '[YOURAPIKEY]' } }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/send/pack/:PackID', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'PageSize: 2', 'X-API-KEY: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = '' headers = { 'PageSize': '2', 'X-API-KEY': '[YOURAPIKEY]' } conn.request("GET", "/v1/send/pack/:PackID", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api.sms.ir/v1/send/pack/:PackID") .method("GET", body) .addHeader("PageSize", "2") .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : GET
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
شناسه مجموعه ارسال | Guid | اجباری | PackId |
توضیح | نوع | مشخصه |
---|---|---|
شناسه یکتای پیامک | Integer | MessageId |
شماره موبایل | Long | Mobile |
متن پیامک | String | MessageText |
زمان ارسال | Integer (UnixTime) | SendDateTime |
شماره خط | Long | LineNumber |
اعتبار کسر شده | Decimal | Cost |
اعتبار کسر شده | Decimal | Cost |
وضعیت دلیوری | Nullable Byte | DeliveryState |
زمان دلیوری | Nullable Integer (UnixTime) | DeliveryDateTime |
{ "status": 1, "message": "موفق", "data": [{ "messageId": 89545112, "mobile": 912xxxx677, "messageText": "سرویس پیامکی ایده پردازان با 10 سال سابقه همراه شماست", "sendDateTime": 1628683626, "lineNumber": 30004505000017, "cost": 1.0, "deliveryState": 1, "deliveryDateTime": 1628683629 },{ "messageId": 89545113, "mobile": 919xxxx378, "messageText": "ipdemy.ir پلتفرم آموزش آنلاین، آکادمی ایده پردازان", "sendDateTime": 1628683626, "lineNumber": 30004505000017, "cost": 1.0, "deliveryState": 3, "deliveryDateTime": 1628683625 }] }
گزارش ارسال های روز
شبا استفاده از متد زیر، گزارشی از ارسالهای انجام شده در روز جاری قابل دریافت است.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var response = await httpClient.GetAsync("https://api.sms.ir/v1/send/live?pageNumber=1&pageSize=100"); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("Accept", "text/plain"); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var requestOptions = { method: 'GET', headers: myHeaders, redirect: 'follow' }; fetch("https://api.sms.ir/v1/send/live?pageNumber=1&pageSize=20", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var config = { method: 'get', url: 'https://api.sms.ir/v1/send/live?pageNumber=1&pageSize=20', headers: { 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' } }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/send/live?pageNumber=1&pageSize=20', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'Accept: text/plain', 'X-API-KEY: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = '' headers = { 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' } conn.request("GET", "/v1/send/live?pageNumber=1&pageSize=20", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api.sms.ir/v1/send/live?pageNumber=1&pageSize=20") .method("GET", body) .addHeader("Accept", "text/plain") .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : GET
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
تعداد آیتمهای در صفحه (مقدار پیشفرض 10 میباشد) | Integer | اختیاری | PageSize |
شماره صفحه درخواستی (مقدار پیشفرض 1 میباشد) | Integer | اختیاری | PageNumber |
توضیح | نوع | مشخصه |
---|---|---|
شناسه یکتای پیامک | Integer | MessageId |
شماره موبایل | Long | Mobile |
متن پیامک | String | MessageText |
زمان ارسال | Integer (UnixTime) | SendDateTime |
شماره خط | Long | LineNumber |
اعتبار کسر شده | Decimal | Cost |
وضعیت دلیوری | Nullable Byte | DeliveryState |
زمان دلیوری | Nullable Integer (UnixTime) | DeliveryDateTime |
{ "status": 1, "message": "موفق", "data": [{ "messageId": 89545112, "mobile": 912xxxx677, "messageText": "سرویس پیامکی ایده پردازان با 10 سال سابقه همراه شماست", "sendDateTime": 1628683626, "lineNumber": 30004505000017, "cost": 1.0, "deliveryState": 1, "deliveryDateTime": 1628683629 },{ "messageId": 89545113, "mobile": 919xxxx378, "messageText": "ipdemy.ir پلتفرم آموزش آنلاین، آکادمی ایده پردازان", "sendDateTime": 1628683626, "lineNumber": 30004505000017, "cost": 1.0, "deliveryState": 3, "deliveryDateTime": 1628683625 }] }
گزارش ارسال های آرشیو شده
شبا فراخوانی متد زیر، گزارشی از ارسالهای انجام شده در گذشته (تا انتهای روز قبل)، را دریافت خواهید نمود.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var response = await httpClient.GetAsync("https://api.sms.ir/v1/send/archive?pageNumber=1&pageSize=100&fromDate=1669753800&toDate=1672814257"); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("Accept", "text/plain"); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var requestOptions = { method: 'GET', headers: myHeaders, redirect: 'follow' }; fetch("https://api.sms.ir/v1/send/archive?pageNumber=1&pageSize=100&fromDate=1650016645&toDate=1650880645", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var config = { method: 'get', url: 'https://api.sms.ir/v1/send/archive?pageNumber=1&pageSize=100&fromDate=1650016645&toDate=1650880645', headers: { 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' } }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/send/archive?pageNumber=1&pageSize=100&fromDate=1650016645&toDate=1650880645', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'Accept: text/plain', 'X-API-KEY: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = '' headers = { 'Accept': 'text/plain', 'X-API-KEY': '[YOURAPIKEY]' } conn.request("GET", "/v1/send/archive?pageNumber=1&pageSize=100&fromDate=1650016645&toDate=1650880645", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api.sms.ir/v1/send/archive?pageNumber=1&pageSize=100&fromDate=1650016645&toDate=1650880645") .method("GET", body) .addHeader("Accept", "text/plain") .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : GET
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
از تاریخ | Integer (UnixTime) | اختیاری | FromDate |
تا تاریخ | Integer (UnixTime) | اختیاری | ToDate |
تعداد آیتمهای در صفحه (مقدار پیشفرض 10 میباشد) | Integer | اختیاری | PageSize |
شماره صفحه درخواستی (مقدار پیشفرض 1 میباشد) | Integer | اختیاری | PageNumber |
توضیح | نوع | مشخصه |
---|---|---|
شناسه یکتای پیامک | Integer | MessageId |
شماره موبایل | Long | Mobile |
متن پیامک | String | MessageText |
زمان ارسال | Integer (UnixTime) | SendDateTime |
شماره خط | Long | LineNumber |
اعتبار کسر شده | Decimal | Cost |
وضعیت دلیوری | Nullable Byte | DeliveryState |
زمان دلیوری | Nullable Integer (UnixTime) | DeliveryDateTime |
{ "status": 1, "message": "موفق", "data": [{ "messageId": 89545112, "mobile": 912xxxx677, "messageText": "سرویس پیامکی ایده پردازان با 10 سال سابقه همراه شماست", "sendDateTime": 1628583626, "lineNumber": 30004505000017, "cost": 1.0, "deliveryState": 1, "deliveryDateTime": 1628683629 },{ "messageId": 89545113, "mobile": 919xxxx378, "messageText": "ipdemy.ir پلتفرم آموزش آنلاین، آکادمی ایده پردازان", "sendDateTime": 1628583626, "lineNumber": 30004505000017, "cost": 1.0, "deliveryState": 3, "deliveryDateTime": 1628683625 },{ "messageId": 89545114, "mobile": 921xxxx432, "messageText": "HyperBox.irفروشگاه اینترنتی اسباب بازی و عروسک ", "sendDateTime": 1628583626, "lineNumber": 30004505000017, "cost": 1.0, "deliveryState": 1, "deliveryDateTime": 1628683669 }] ] }
گزارش تازه ترین پیامک های دریافتی
شما میتوانید با استفاده از این متد، تازهترین پیامکهای دریافتی را مشاهده نمایید. لازم به ذکر است هر پیامک دریافتی تنها یک مرتبه توسط این متد قابل دستیابی میباشد و پس از آن به دلیل قرار گرفتن در حالت خوانده شده قابل دسترسی مجدد توسط این متد نمیباشند.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var response = await httpClient.GetAsync("https://api.sms.ir/v1/receive/latest?count=100"); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var requestOptions = { method: 'GET', headers: myHeaders, redirect: 'follow' }; fetch("https://api.sms.ir/v1/receive/latest?count=100", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var config = { method: 'get', url: 'https://api.sms.ir/v1/receive/latest?count=100', headers: { 'X-API-KEY': '[YOURAPIKEY]' } }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/receive/latest?count=100', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'X-API-KEY: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = '' headers = { 'X-API-KEY': '[YOURAPIKEY]' } conn.request("GET", "/v1/receive/latest?count=100", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api.sms.ir/v1/receive/latest?count=100") .method("GET", body) .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : GET
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
تعداد درخواستی (حداکثر تعداد درخواستی و مقدار پیشفرض 100 میباشد) | Integer | اختیاری | Count |
توضیح | نوع | مشخصه |
---|---|---|
ششماره موبایل ارسال کننده | Long | Mobile |
متن پیامک | String | MessageText |
شماره خط دریافت کننده | Long | Number |
زمان دریافت | Integer (UnixTime) | ReceivedDateTime |
{ "status": 1, "message": "موفق", "data": [ { "messageText": "HyperBox.irفروشگاه اینترنتی اسباب بازی و عروسک", "number": 30004505000017, "mobile": 912xxxx002, "receivedDateTime": 1628683625 } ] }
گزارش پیامک های دریافتی روز
شبا فراخوانی متد زیر، گزارش پیامکهای دریافتی روز جاری (اعم از خوانده شده و نشده) قابل دستیابی میباشد.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var response = await httpClient.GetAsync("https://api.sms.ir/v1/receive/live?pageNumber=1&pageSize=100"); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("PageSize", "2"); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var requestOptions = { method: 'GET', headers: myHeaders, redirect: 'follow' }; fetch("https://api.sms.ir/v1/receive/live?pageNumber=1&pageSize=100", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var config = { method: 'get', url: 'https://api.sms.ir/v1/receive/live?pageNumber=1&pageSize=100', headers: { 'PageSize': '2', 'X-API-KEY': '[YOURAPIKEY]' } }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/receive/live?pageNumber=1&pageSize=100', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'PageSize: 2', 'X-API-KEY: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = '' headers = { 'PageSize': '2', 'X-API-KEY': '[YOURAPIKEY]' } conn.request("GET", "/v1/receive/live?pageNumber=1&pageSize=100", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api.sms.ir/v1/receive/live?pageNumber=1&pageSize=100") .method("GET", body) .addHeader("PageSize", "2") .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : GET
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
تعداد آیتمهای در صفحه (مقدار پیشفرض 10 میباشد) | Integer | اختیاری | PageSize |
شماره صفحه درخواستی (مقدار پیشفرض 1 میباشد) | Integer | اختیاری | PageNumber |
توضیح | نوع | مشخصه |
---|---|---|
شماره موبایل ارسال کننده | Long | Mobile |
متن پیامک | String | MessageText |
شماره خط دریافت کننده | Long | Number |
زمان دریافت | Integer (UnixTime) | ReceivedDateTime |
{ "status": 1, "message": "موفق", "data": [ { "messageText": "HyperBox.irفروشگاه اینترنتی اسباب بازی و عروسک", "number": 30004505000017, "mobile": 912xxxx002, "receivedDateTime": 1628683625 } ] }
گزارش پیامک های دریافتی آرشیو شده
با فراخوانی متد زیر، گزارشی از پیامکهای دریافتی در گذشته (تا انتهای روز قبل)، را مشاهده خواهید نمود.
نمونه کد
C#
HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-api-key", "[YOURAPIKEY]"); var response = await httpClient.GetAsync("https://api.sms.ir/v1/receive/archive?pageNumber=1&pageSize=100&fromDate=1669753800&toDate=1672814257"); var result = await response.Content.ReadAsStringAsync();
JS
var myHeaders = new Headers(); myHeaders.append("PageSize", "2"); myHeaders.append("X-API-KEY", "[YOURAPIKEY]"); var requestOptions = { method: 'GET', headers: myHeaders, redirect: 'follow' }; fetch("https://api.sms.ir/v1/receive/archive?pageNumber=1&pageSize=100&fromDate=1628683629&toDate=1628693629", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
Node.js
var config = { method: 'get', url: 'https://api.sms.ir/v1/receive/archive?pageNumber=1&pageSize=100&fromDate=1628683629&toDate=1628693629', headers: { 'PageSize': '2', 'X-API-KEY': '[YOURAPIKEY]' } }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
PHP
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.sms.ir/v1/receive/archive?pageNumber=1&pageSize=100&fromDate=1628683629&toDate=1628693629', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'PageSize: 2', 'X-API-KEY: [YOURAPIKEY]' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
Python
conn = http.client.HTTPSConnection("api.sms.ir") payload = '' headers = { 'PageSize': '2', 'X-API-KEY': '[YOURAPIKEY]' } conn.request("GET", "/v1/receive/archive?pageNumber=1&pageSize=100&fromDate=1628683629&toDate=1628693629", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
java
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api.sms.ir/v1/receive/archive?pageNumber=1&pageSize=100&fromDate=1628683629&toDate=1628693629") .method("GET", body) .addHeader("PageSize", "2") .addHeader("X-API-KEY", "[YOURAPIKEY]") .build(); Response response = client.newCall(request).execute();
Request Method : GET
توضیح | نوع | ارسال | مشخصه |
---|---|---|---|
از تاریخ | Integer (UnixTime) | اختیاری | FromDate |
تا تاریخ | Integer (UnixTime) | اختیاری | ToDate |
تعداد آیتمهای در صفحه (مقدار پیشفرض 10 میباشد) | Integer | اختیاری | PageSize |
شماره صفحه درخواستی (مقدار پیشفرض 1 میباشد) | Integer | اختیاری | PageNumber |
توضیح | نوع | مشخصه |
---|---|---|
شماره موبایل ارسال کننده | Long | Mobile |
متن پیامک | String | MessageText |
شماره خط دریافت کننده | Long | Number |
زمان دریافت | Integer (UnixTime) | ReceivedDateTime |
{ "status": 1, "message": "موفق", "data": [ { "messageText": "HyperBox.irفروشگاه اینترنتی اسباب بازی و عروسک", "number": 30004505000017, "mobile": 912xxxx002, "receivedDateTime": 1628683625 } ] }
تنظیمات
دریافت مقدار اعتبار فعلی
برای مشاهده مقدار اعتبار فعلی از متد زیر استفاده نمایید.
Request Method : GET
توضیح | نوع |
---|---|
مقدار اعتبار | Decimal |
{ "status": 1, "message": "موفق", "data": 165.3 }
دریافت لیست خطوط
با استفاده از این متد، لیست خطوط آماده استفاده برای ارسال، قابل مشاهده است.
Request Method : GET
توضیح | نوع |
---|---|
مقدار اعتبار | Decimal |
{ "status": 1, "message": "موفق", "data": [10002155613464, 30004505000017] }
جدول کدهای وضعیت
توضیح | کد وضعیت |
---|---|
عملیات با موفقیت انجام شد | 1 |
مشکلی در سامانه رخ داده است، لطفا با پشتیبانی در تماس باشید شد | 0 |
کلید وب سرویس نامعتبر است شد | 10 |
کلید وب سرویس غیرفعال است | 11 |
کلید وب سرویس محدود به IPهای تعریف شده میباشد | 12 |
حساب کاربری غیر فعال است | 13 |
حساب کاربری در حالت تعلیق قرار دارد | 14 |
تعداد درخواست بیشتر از حد مجاز است | 20 |
شماره خط نامعتبر میباشد | 101 |
اعتبار کافی نمیباشد | 102 |
درخواست شما دارای متن (های) خالی است | 103 |
درخواست شما دارای موبایل (های) نادرست است | 104 |
تعداد موبایل ها بیشتر از حد مجاز (100 عدد) میباشد | 105 |
تعداد متن ها بیشتر از حد مجاز (100 عدد) میباشد | 106 |
لیست موبایل ها خالی میباشد | 107 |
لیست متن ها خالی میباشد | 108 |
زمان ارسال نامعتبر میباشد | 109 |
تعداد شماره موبایل ها و تعداد متن ها برابر نیستند | 110 |
با این شناسه ارسالی ثبت نشده است | 111 |
رکوردی برای حذف یافت نشد | 112 |
قالب یافت نشد | 113 |
توضیح | کد وضعیت |
---|---|
رسیده به گوشی | 1 |
نرسیده به گوشی | 2 |
پردازش در مخابرات | 3 |
نرسیده به مخابرات | 4 |
رسیده به مخابرات | 5 |
خطا | 6 |
لیست سیاه | 7 |