وب سرویس پیام کوتاه قاصدک

این راهنما جهت سهولت در کار برنامه نویسانی طراحی شده است که قصد دارند سرویس پیامهای خود را به نرم افزار های کاربردی خود ارتباط دهند. سرویس REST خدماتی مانند ارسال انواع پیام (صوتی و متنی)،دریافت پیام، تبدیل متن به صدا و... را برای کاربران فرهم می کند.

ارسال تکی

از این متد برای ارسال پیامک به صورت تکی و ساده استفاده می شود.

ساختار URL:

https://api.ghasedak.io/v2/sms/send/simple 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
message Body string

متنی که باید ارسال شود .

اجباری
receptor Body string شماره گیرنده پیام می باشد . اجباری
linenumber Body string شماره فرستنده پیام می باشد ، که اگر قید نشود از بین خطوط شما خط با اولویت بالاتر انتخاب می شود. ( در صورت نداشتن خط اختصاصی باید linenumber را مشخص نمایید ) اختیاری
senddate Body string

تاریخ و زمان دقیق ارسال پیام بر اساس Unixtime می باشد که اگر قید نشود در همان لحظه پیام ارسال می شود . (1508144471)

اختیاری
checkid Body string برای تعیین شماره ای یکتا از طرف کاربر برای هر پیامک به کار می رود و پس از ارسال پیامک می توان با متد staus کلیه اطلاعات پیام ارسال شده را دریافت کرد . اختیاری

نمونه کد خروجی:

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/sms/send/simple",
CURLOPT_https_VERSION => CURL_https_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "message= &linenumber= & Receptor=&=",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/sms/send/simple")
.header("postman-token", "your apikey")
.header("content-type", "application/x-www-form-urlencoded")
.body("message=hello%20world&linenumber=&Receptor=&=")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/sms/send/simple");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "message" , " test " );
request.AddParameter("senddate", " 1508144471 ");
request.AddParameter("linenumber", " 5000222 " );
request.AddParameter( "receptor" , " 09111111111 " );
request.AddParameter( "checkid" , " 2020 " );
IRestResponse response = client.Execute(request);

import requests
url = "https://api.ghasedak.io/v2/sms/send/simple"

payload = "message=hello%20world&linenumber= &Receptor=&="
headers = {
'apikey': "your apikey",

response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)

var request = require("request");
var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/sms/send/simple',
headers:
{
apikey: 'your apikey' },
form:
{ message: '',
linenumber: '',
Receptor: '',
} };
request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

package main
import(
"fmt"
"github.com/ghasedakapi/ghasedakapi-go"
)
const (
ApiKey = "your apikey"
)
func main(){
c := ghasedakapi.New(ApiKey)
lineNumber := "sender number"
receptor := []string{"receptor1","receptor2"}
message := "test message"
if res, err:= c.SMS.Send( message,lineNumber, receptor); err != nil {
fmt.Println(err)
} else {
for _, r := range res.Items {
fmt.Println(r)
}
}
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
              1022
    ]
  } مقدار items آرایه ایی عددی به طول یک می باشد که اگر مقدار خروجی عددی بزرگتر از 100 باشد یعنی پیام با موفقیت ارسال شده و مقدار بازگشتی همان شناسه پیامک می باشد .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح موارد خطا:

کد خطا توضیحات
1 نام کاربری یا رمز عبور معتبر نمی باشد .
2 آرایه ها خالی می باشد.
3 طول آرایه بیشتر از 100 می باشد .
4 طول آرایه ی فرستنده و گیرنده و متن پیام با یکدیگر تطابق ندارد .
5 امکان گرفتن پیام جدید وجود ندارد .
6 - حساب کاربری غیر فعال می باشد.
- نام کاربری و یا رمز عبور خود را به درستی وارد نمی کنید .
- در صورتی که به تازگی وب سرویس را فعال کرده اید از منوی تنظیمات _رمز عبور ، رمز عبور وب سرویس خود را مجدد تنظیم نمائید .
7 امکان دسترسی به خط مورد نظر وجود ندارد .
8 شماره گیرنده نامعتبر است .
9 حساب اعتبار ریالی مورد نیاز را دارا نمی باشد.
10 خطایی در سیستم رخ داده است . دوباره سعی کنید .
11 نامعتبر می باشد . IP
20 شماره مخاطب فیلتر شده می باشد.
21 ارتباط با سرویس دهنده قطع می باشد.
24 امکان استفاده از این سرویس در پلن رایگان وجود ندارد.
ارسال گروهی

از این متد برای ارسال پیامک به صورت گروهی با متون مختلف و شماره فرستندگان و گیرندگان مختلف استفاده می شود.

ساختار URL:

https://api.ghasedak.io/v2/sms/send/bulk 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
message Body string متونی که باید ارسال شوند که با ( , ) از هم جدا می شوند . (..,test1,test2) اجباری
linenumber Body string شماره فرستندگان پیام که با ( , ) از هم جدا می شوند . (..,5000110,5000100) اجباری
receptor Body string شماره گیرندگان پیام که با ( , ) از هم جدا می شوند . (..,09121111111,09122222222) اجباری
senddate Body string

تاریخ و زمان دقیق ارسال پیام بر اساس Unixtime که با ( , ) از هم جدا می شوند که اگر قید نشود در همان لحظه پیام ارسال می شود . (..,1508144471,1508144471)

اختیاری
checkid Body string برای تعیین شماره ای یکتا از طرف کاربر برای هر پیامک به کار می رود که با ( , ) از هم جدا می شوند و پس از ارسال پیامک می توان با متد staus کلیه اطلاعات پیام ارسال شده را دریافت کرد . اختیاری

نمونه کد خروجی:


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/sms/send/bulk",

CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => " message=hello%20world%2Cgute%20nacht &linenumber=&Receptor =&checkmessageids%09=2%2C3 ",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/sms/send/bulk")
.header("apikey", "your apikey=")
.body("message= %2C&linenumber=&receptor =&checkmessageids%09=%2C")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/sms/send/bulk");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "message" , " test1 , test2 " );
request.AddParameter("senddate", " 1508144471 , 1508144475 ");
request.AddParameter("linenumber", " 5000222 , 5000222 " );
request.AddParameter( "receptor" , " 09111111111 , 09111111112 " );
request.AddParameter( "checkid" , " 2020 , 2021 " );
IRestResponse response = client.Execute(request);

import requests

url = " https://api.smsapp.ir/v2/sms/send/bulk "

payload = "message= %2C &linenumber=&receptor =%2C&checkmessageids%09= %2C"
headers = {
'apikey': "",

}
response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

var request = require("request");

var options = { method: 'POST',
url: ' https://api.smsapp.ir/v2/sms/send/bulk ',
headers:
{
apikey: 'your apikey' },
form:
{ message: ' , ',
linenumber: '',
receptor : ' , ',
'checkmessageids\t': '2,3' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

package main
import(
"fmt"
"github.com/ghasedakapi/ghasedakapi-go"
)
const (
ApiKey = "your apikey"
)
func main(){
c := ghasedakapi.New(ApiKey)
lineNumber := "sender number"
receptor := []string{"receptor1","receptor2"}
message := "test message"
if res, err:= c.SMS.Send( message,lineNumber, receptor); err != nil {
fmt.Println(err)
} else {
for _, r := range res.Items {
fmt.Println(r)
}
}
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
              1022,1023
    ]
  } مقدار items آرایه ایی به طول تعداد پیام های ارسالی است که هر یک از اعداد اگر بزرگتر از 100 باشد یعنی پیام با موفقیت ارسال شده و مقدار بازگشتی همان شناسه پیامک می باشد .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح موارد خطا:

جدول

ارسال گروهی 2

از این متد برای ارسال پیامک گروهی به گیرندگان مختلف استفاده می شود.به این صورت که شماره فرستنده و متن پیام فقط یک شماره میتواند باشد و نیازی نیست به ازای هر گیرنده،یک شماره فرستنده وارد گردد.

ساختار URL:

https://api.ghasedak.io/v2/sms/send/pair 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
message Body string

متنی که باید ارسال شود .

اجباری
receptor Body string شماره گیرندگان پیام که با ( , ) از هم جدا می شوند . (..,09121111111,09122222222) اجباری
linenumber Body string شماره فرستنده پیام می باشد ، که اگر فید نشود از بین خطوط شما خط با اولویت بالاتر انتخاب می شود . اختیاری
senddate Body string

تاریخ و زمان دقیق ارسال پیام بر اساس Unixtime می باشد که اگر قید نشود در همان لحظه پیام ارسال می شود . (1508144471)

اختیاری
checkid Body string برای تعیین شماره ای یکتا از طرف کاربر برای هر پیامک به کار می رود که با ( , ) از هم جدا می شوند و پس از ارسال پیامک می توان با متد staus کلیه اطلاعات پیام ارسال شده را دریافت کرد . اختیاری

نمونه کد خروجی:

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/sms/send/pair",
CURLOPT_https_VERSION => CURL_https_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "message= d&linenumber= &Receptor= %2C&checkmessageids%09=2%2C3",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post(" https://api.ghasedak.io/v2/sms/send/pair")
.header("apikey", "your apikey")
.body("message=&linenumber=30005088&Receptor=%2C&checkmessageids%09=2%2C3")
.asString();


var client = new RestClient(" https://api.ghasedak.io/v2/sms/send/pair");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "message" , " test " );
request.AddParameter("senddate", " 1508144471 ");
request.AddParameter("linenumber", " 5000222 " );
request.AddParameter( "receptor" , " 09111111111 , 09111111112 " );
request.AddParameter( "checkid" , " 2020 , 2021 " );
IRestResponse response = client.Execute(request);

import requests

url = "https://api.ghasedak.io/v2/sms/send/pair"

payload = " message= &linenumber=&receptor =91111111111%2C091111111111&checkingids%09=2%2C3 "
headers = {
'apikey': "your apikey",
}

response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)

var request = require("request");
var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/sms/send/pair',
headers:
{
apikey: 'your apikey' },
form:
{ message: '',
linenumber: '',
Receptor: ',',
'Checkmessageids\t': ',' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});

package main
import(
"fmt"
"github.com/ghasedakapi/ghasedakapi-go"
)
const (
ApiKey = "your apikey"
)
func main(){
c := ghasedakapi.New(ApiKey)
lineNumber := []string{"number1","number2"}
receptor := []string{"receptor1","receptor2"}
message := "test message"
if res, err:= c.SMS.Send( message,lineNumber, receptor); err != nil {
fmt.Println(err)
} else {
for _, r := range res.Items {
fmt.Println(r)
}
}
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
              5022,5028
    ]
  } مقدار items آرایه ایی به طول تعداد گیرندگان پیام ارسالی است که هر یک از اعداد اگر بزرگتر از 100 باشد یعنی پیام با موفقیت ارسال شده و مقدار بازگشتی همان شناسه پیامک می باشد .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح موارد خطا:

جدول

سرویس اعتبار سنجی با پارامتر

سرویس اعتبارسنجی به شما این امکان را میدهد که بدون نیاز به داشتن خط خدماتی و طی کردن پروسه زمانبر تهیه آن بتوانید از طریق وب سرویس به راحتی و بالاترین سرعت ممکن پیام های خود مانند: کد فعال سازی،شماره چک و فاکتور،کد قرعه کشی و... را به تمامی کاربران اعم از فیلتر و غیر فیلتر ارسال نمایید.
در متن قالب نام برند ،شرکت و یا خدمات خود را حتما ذکر نمایید و حداقل حاوی یک پارامتر %param1% باشد.حداکثر از 10 پارامتر، %param1% ، %param2% , ... , %param10% میتوان استفاده کرد.

ویژه امکان ارسال پیامک به صورت بین المللی ( کشورهای مختلف دنیا ) در سرویس اعتبارسنجی، وجود دارد. شما می توانید پیام کوتاه ( متن ) خود را بدون هیچ محدودیتی به تمام نقاط جهان ارسال کنید.
جهت ارسال به شماره های خارج از ایران شماره گیرنده را با + و کد کشور ( مثال : +33456351753 ) شروع کنید.
تعرفه های بین المللی را می توانید در صفحه تعرفه ها مشاهده نمایید.

ساختار URL:

https://api.ghasedak.io/v2/verification/send/simple 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
receptor Body string شماره گیرنده پیام که با ( , ) از هم جدا می شوند . (09122222222,+33456351753,09111111111 , ...) اجباری
type Body int برای ارسال پیام متنی type=1 و برای ارسال پیام صوتی type=2 قرار دهید . اجباری
template Body string عنوان قالبی که در پنل خود ایجاد کرده اید . اجباری
checkid Body string برای تعیین شماره ای یکتا از طرف کاربر برای هر پیامک به کار می رود و پس از ارسال پیامک می توان با متد staus کلیه اطلاعات پیام ارسال شده را دریافت کرد . اختیاری
param1 Body string مقادیری که از سمت شما وارد می شود ، وارد کردن حداقل 1 مورد اجباری است . اجباری
param2 Body string مقادیری که از سمت شما وارد می شود . اختیاری
param3 Body string مقادیری که از سمت شما وارد می شود . اختیاری
param4 Body string مقادیری که از سمت شما وارد می شود . اختیاری
param5 Body string مقادیری که از سمت شما وارد می شود . اختیاری
param6 Body string مقادیری که از سمت شما وارد می شود . اختیاری
param7 Body string مقادیری که از سمت شما وارد می شود . اختیاری
param8 Body string مقادیری که از سمت شما وارد می شود . اختیاری
param9 Body string مقادیری که از سمت شما وارد می شود . اختیاری
param10 Body string مقادیری که از سمت شما وارد می شود . اختیاری

نمونه کد خروجی:

$curl = curl_init();
curl_setopt_array($curl,
array(
CURLOPT_URL => "https://api.ghasedak.io/v2/verification/send/simple ",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_https_VERSION => CURL_https_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "type=1¶m1=&receptor=09191111111&template=testvoice",
CURLOPT_HTTPHEADER => array(
"apikey: yourapikey",
"cache-control: no-cache",
"content-type: application/x-www-form-urlencoded",
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

OkhttpsClient client = new OkhttpsClient();
MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody body = RequestBody.create(mediaType, "type=1¶m1=&receptor=09191111111&template=testvoice");
Request request = new Request.Builder()
.url("https://api.ghasedak.io/v2/verification/send/simple ")
.post(body)
.addHeader("apikey", "yourapikey")
.addHeader("cache-control", "no-cache")
.addHeader("content-type", "application/x-www-form-urlencoded")
.build();
Response response = client.newCall(request).execute();


var client = new RestClient("https://api.ghasedak.io/v2/verification/send/simple");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "receptor" , " 09111111111 , 09111111112 " );
request.AddParameter("type", 1 );
request.AddParameter("template", " test " );
request.AddParameter( "param1" , " test1 " );;
request.AddParameter( "param2" , " test2 " );;
request.AddParameter( "param3" , " test3 " );
IRestResponse response = client.Execute(request);

import https.client

conn = https.client.httpsConnection("api.smsapp.ir")
payload = "type=1¶m1=&receptor=09191111111&template=testvoice"
headers = { 'apikey': "+yourapikey",
'content-type': "application/x-www-form-urlencoded"
}
conn.request("POST","/v1/sms/template", payload, headers)
es = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))

var client = new RestClient("https://api.ghasedak.io/v2/verification/send/simple ");var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddHeader("apikey", "yourapikey");
request.AddParameter("application/x-www-form-urlencoded", "type=1¶m1=&receptor=09191111111&template=testvoice", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

package ghasedakapi

import (
"net/url"
"io/ioutil"
"encoding/json"
"strconv"
)
func (t *TemplateService) Verify(template string,messagetype int,receptor []string,param1 string,param2 string,param3 string) (apiResult *ApiResult, err error) {
v := url.Values{}
v.Set("template", template)
v.Set("receptor", arrayToString(receptor))
v.Set("type", strconv.Itoa(messagetype))
v.Set("param1", param1)
v.Set("param2", param2)
v.Set("param3", param3)
return t.makeRequest(v)
}

func (t *TemplateService) makeRequest(formValues url.Values) (apiResult *ApiResult, err error) {
smsUrl := t.client.BaseUrl + "/v1/sms/template"
res, err:=t.client.Execute(smsUrl,formValues)
if err != nil {
return apiResult, err
}
defer res.Body.Close()
responseBody, err := ioutil.ReadAll(res.Body)
if err != nil {
return apiResult, err
}
apiResult = new(ApiResult)
err = json.Unmarshal(responseBody, apiResult)
return apiResult, err
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
              5022,5028
    ]
  } مقدار items آرایه ایی به طول تعداد گیرندگان پیام ارسالی است که هر یک از اعداد اگر بزرگتر از 100 باشد یعنی پیام با موفقیت ارسال شده و مقدار بازگشتی همان شناسه پیامک می باشد .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح موارد خطا:

کد خطا توضیحات
1 نام کاربری یا رمز عبور معتبر نمی باشد .
2 آرایه ها خالی می باشد.
3 طول آرایه بیشتر از 100 می باشد .
4 طول آرایه ی فرستنده و گیرنده و متن پیام با یکدیگر تطابق ندارد .
5 امکان گرفتن پیام جدید وجود ندارد .
6 - حساب کاربری غیر فعال می باشد.
- نام کاربری و یا رمز عبور خود را به درستی وارد نمی کنید .
- در صورتی که به تازگی وب سرویس را فعال کرده اید از منوی تنظیمات _رمز عبور ، رمز عبور وب سرویس خود را مجدد تنظیم نمائید .
7 امکان دسترسی به خط مورد نظر وجود ندارد .
8 شماره گیرنده نامعتبر است .
9 حساب اعتبار ریالی مورد نیاز را دارا نمی باشد.
10 خطایی در سیستم رخ داده است . دوباره سعی کنید .
11 نامعتبر می باشد . IP
20 شماره مخاطب فیلتر شده می باشد .
21 ارتباط با سرویس دهنده قطع می باشد .
24 در پلن رایگان امکان ارسال فقط به شماره ثبت شده در پنل وجود دارد.
25 ساختار پارامترها (param1 , param2 ... param10) صحیح نمی باشد ، اگر پارامتر حاوی خط جدید،فاصله، UnderLine یا جداکننده باشد این خطا رخ میدهد
ارسال پیام صوتی

با استفاده از این متد شما می توانید پیام های خود را به صورت متنی نوشته و آنها را به صورت صوتی ارسال نمایید

ساختار URL:

https://api.ghasedak.io/v2/voice/send/simple 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
message Body string

متنی که باید ارسال شود .

اجباری
receptor Body string شماره گیرندگان پیام که با ( , ) از هم جدا می شوند . (..,09121111111,09122222222) اجباری
senddate Body string

تاریخ و زمان دقیق ارسال پیام بر اساس Unixtime می باشد که اگر قید نشود در همان لحظه پیام ارسال می شود . (1508144471)

اختیاری

نمونه کد خروجی:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/voice/send/simple",
CURLOPT_https_VERSION => CURL_https_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "Message=&receptor=",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
),));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/voice/send/simple")
.header("apikey", "your apikey")
.body(" Message=&receptor= ")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/voice/send/simple");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "message" , " test " );
request.AddParameter( "receptor" , " 09121111111 , 09122222222 " );
request.AddParameter( "senddate" , " 1508144471 " );
IRestResponse response = client.Execute(request);

import requests

url = "https://api.ghasedak.io/v2/voice/send/simple"

payload = " message=&receptor ="
headers = {
'apikey': "",
}
response = requests.request("POST", url, data=payload, headers=headers )

print(response.text)
;

var request = require("request");
var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/voice/send/simple',
headers:
{
apikey: 'your apikey' },
form: { Message: '', receptor: '' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});

package ghasedakapi

import (
"net/url"
"io/ioutil"
"encoding/json"
)
func (voice *VoiceService) Send(message string,receptor []string) (apiResult *ApiResult, err error) {
v := url.Values{}
v.Set("apikey", myapikey)
v.Set("receptor", arrayToString(receptor))
v.Set("message", message)
v.Set("senddate", datenow)
return voice.sendMessage(v)
}

// Core method to send voice
func (voice *VoiceService) sendMessage(formValues url.Values) (apiResult *ApiResult, err error) {
smsUrl := voice.client.BaseUrl + "/api/v1/voice/send"
res, err:=voice.client.Execute(smsUrl,formValues)
if err != nil {
return apiResult, err
}
defer res.Body.Close()
responseBody, err := ioutil.ReadAll(res.Body)
if err != nil {
return apiResult, err
}
apiResult = new(ApiResult)
err = json.Unmarshal(responseBody, apiResult)
return apiResult, err
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
              1022
    ]
  } مقدار items آرایه ایی عددی به طول یک می باشد که اگر مقدار خروجی عددی بزرگتر از 100 باشد یعنی پیام با موفقیت ارسال شده و مقدار بازگشتی همان شناسه پیامک می باشد .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

وضعیت پیام های ارسالی

برای دریافت وضعیت پیامک ارسالی به گیرنده از این متد استفاده می شود . کاربر می توان با هر بار فراخوانی این متد وضعیت 100 پیامک را دریافت کند . مقدار بازگشتی این متد می توانید مقدار صحیح شامل یکی از اعداد زیر باشد:

کد وضعیت:

کد توضیحات
0 وضعیت دریافت نشده است(یا پیامک در صف ارسال قرار دارد)
1 رسیده به گوشی
2 نرسیده به گوشی
8 رسیده به مخابرات
16 نرسیده به مخابرات
27 شماره گیرنده جزو لیست سیاه می باشد
1- شناسه ارسال شده اشتباه است

ساختار URL:

https://api.ghasedak.io/v2/sms/status 

متد:

Get

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
id Body string

شناسه پیامک که با ( , ) ازهم جدا می شوند.

اجباری
type Body int

نوع id پیام را مشخص می کند ( 1 برای messageid و 2 برای checkid )

اجباری

نمونه کد خروجی:


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/sms/status",
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "id=123456&type=1",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
),
));
$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/sms/status")
.header("apikey", "your apikey")
.body("id=123456&type=1")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/sms/status");
var request = new RestRequest(Method.GET);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "id" , " 2025 , 2026 " );
request.AddParameter( "type" , " 1 " );
IRestResponse response = client.Execute(request);

import requests

url = "https://api.ghasedak.io/v2/sms/status"

payload = "id=123456&type=1"
headers = {
'apikey': "your apikey",

}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

var request = require("request");

var options = { method: 'POST',
url: ' https://api.ghasedak.io/v2/sms/status ',
headers:
{
apikey: 'your apikey' },
form: { id: '123456' , 'type':1 } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

package main

=import (
"fmt"
"strings"
"net/https"
"io/ioutil"
)

func main() {
url := "https://api.ghasedak.io/v2/sms/status"
payload := strings.NewReader("apikey": myapi ; "id":myid ; "type":1)
req, _ := https.NewRequest("POST", url, payload)

req.Header.Add("content-type", "multipart/form-data;")
req.Header.Add("Cache-Control", "...")
req.Header.Add("Postman-Token", "...")

res, _ := https.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))

}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
          {
             "messageId":2025,
             "status": 1
          },
          {
             "messageId":2026,
             "status": 2
          },
    ]
  } مقدار items آرایه ایی به فرمت Json به طول تعداد شناسه پیامک های ارسالی است که در آن status مشخص کننده وضعیت پیام ارسال شده می باشد .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

افزودن گروه جدید

از این متد برای اضافه کردن گروه جدید استفاده می شود.

ساختار URL:

https://api.ghasedak.io/v2/contact/group/new 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
name Body string

نام گروه

اجباری
parent Body int

اگر مقدار parent قید نشود گروه جدید در مسیر ریشه ساخته می شود در عیر این صورت باید groupid گروه مورد نظر را ارسال کرد .

اختیاری

نمونه کد خروجی:

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/contact/group/new",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "parentid=0&groupname=hallo",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",

),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/contact/group/new")
.header("apikey", "your apikey")
.body("parentid=0&groupname=hallo")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/contact/group/new");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "parent" , 0 );
request.AddParameter( "name" , " test " );
IRestResponse response = client.Execute(request);

import requests
url = "https://api.ghasedak.io/v2/contact/group/new"
payload = "parentid=0&groupname=hallo"
headers = {
'apikey': "your apikey",
}
response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

var request = require("request");
var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/contact/group/new',
headers:
{
apikey: 'your apikey' },
form: { parentid: '0', groupname: 'hallo' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});

package main

import (
"fmt"
"strings"
"net/https"
"io/ioutil"
)

func main() {
url := "https://api.ghasedak.io/v2/contact/group/new"
payload := strings.NewReader("name="apikey":myapikey ; name="name":Test)
req, _ := https.NewRequest("POST", url, payload)
req.Header.Add("...", "...")
res, _ := https.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": {
             "groupid":21
         }
} مقدار groupid معادل id گروه ایجاد شده می باشد .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح کد خطا:

جدول

افزودن لیست مخاطبین به گروه

از این متد برای اضافه کردن همزمان لیستی از مخاطبین به یک گروه استفاده می شود.

ساختار URL:

https://api.ghasedak.io/v2/contact/group/addnumber 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
groupid Body int

شماره گروه که به هنگام ثبت گروه دریافت شده است .

اجباری
number Body string شماره تلفن مخاطبین که با ( , ) از هم جدا می شوند . (..,09121111111,09122222222) اجباری
firstname Body string نام تلفن مخاطبین که با ( , ) از هم جدا می شوند اختیاری
lastname Body string نام خانوادگی تلفن مخاطبین که با ( , ) از هم جدا می شوند اختیاری
email Body string ایمیل تلفن مخاطبین که با ( , ) از هم جدا می شوند اختیاری

نمونه کد خروجی:


$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/contact/group/addnumber",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "groupid=152074&number=09121111111",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
),));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/contact/group/addnumber")
.header("apikey", "your apikey")
.body("groupid=152074&number=09121111111")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/contact/group/addnumber");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "groupid" , 0 );
request.AddParameter( "number" , " test " );
request.AddParameter( "firstname" , " ali " );
request.AddParameter( "lastname" , " rad " );
request.AddParameter( "email" , " a@a.com " );
IRestResponse response = client.Execute(request);

import requests

url = "https://api.ghasedak.io/v2/contact/group/addnumber"

payload = "groupid=152074&number=09121111111"
headers = {
'apikey': "your apikey",
}
response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

var request = require("request");
var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/contact/group/addnumber',
headers:
{
apikey: 'your apikey' },
form: { groupid: '152074', number: '09121111111' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});

package main

import (
"fmt"
"strings"
"net/https"
"io/ioutil"
)

func main() {
url := "https://api.ghasedak.io/v2/contact/group/addnumber"
payload := strings.NewReader("apikey":"myapi","groupid":2030,"number":091111111,"firstname":"test","lastname":"test","email":"email@email.com")
req, _ := https.NewRequest("POST", url, payload)
req.Header.Add("...", "...")
res, _ := https.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))

}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": null
}

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح کد خطا:

جدول

لیست گروه ها

از این متد برای گرفتن لیست گروه های مخاطبین استفاده می شود.

ساختار URL:

https://api.ghasedak.io/v2/contact/group/list 

متد:

Get

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
parent Body int

اگر مقدار parent قید نشود parent=0 در نظر گرفته می شود و لیست گرو ها در سطح ریشه نمایش داده می شودو در عیر این صورت باید groupid مورد نظر را ارسال کنید تا لیست زیر گرو های ان گروه در خروجی نمایش داده شود .

اختیاری

نمونه کد خروجی:

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/contact/group/list",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "parentid=0&=",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
),));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/contact/group/list")
.header("apikey", "your apikey")
.body("parentid=0&=")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/contact/group/list");
var request = new RestRequest(Method.GET);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "parent" , 1020 );
IRestResponse response = client.Execute(request);

import requests
url = "https://api.ghasedak.io/v2/contact/group/list"

payload = "parentid=0&="
headers = {
'apikey': "your apikey",
}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

import requests
url = "https://api.ghasedak.io/v2/contact/group/list"

payload = "parentid=0&="
headers = {
'apikey': "your apikey",
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)

package main

import (
"fmt"
"strings"
"net/https"
"io/ioutil"
)

func main() {
url := "https://api.ghasedak.io/v2/contact/group/list"
payload := strings.NewReader("apikey":"myapi","parent":0)
req, _ := https.NewRequest("POST", url, payload)
req.Header.Add("...", "...")
res, _ := https.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
          {
             "id":12,
             "name": "test"
             "parent": 4
             "count": 1
          }
    ]
  } مقدار items آرایه ایی به فرمت Json از زیر گروه های داده شده می باشد ، اگر مقدار parent قید نشود یا 0 وارد شود خروجی آرایه ایی از گرو های سطح ریشه را برمیگرداند .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح کد خطا:

جدول

لیست مخاطبین گروه

از این متد برای گرفتن لیست شماره ها و مشخصات مخاطبین یک گروه استفاده می شود.

ساختار URL:

https://api.ghasedak.io/v2/contact/group/listnumber 

متد:

Get

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
groupid Body string

شماره گروه که به هنگام ثبت گروه دریافت شده

اجباری
offset Body int

دسته بندی لیست مخاطبین به تعداد offset داده شده انجام می گیرد ، که اگر قید نشود مقدار آن (offset=100) در نظر گرفته می شود .

اختیاری
page Body int

صفحه مورد نظر از لیست مخاطبین ، اگر مقدار داده نشود (page=1) در نظر گرفته می شود

اختیاری

نمونه کد خروجی:

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/contact/group/listnumber",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "groupid=152074&=",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
),
));
$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/contact/group/listnumber")
.header("apikey", "your apikey")
.body("groupid=152074&=")
.asString();
>


var client = new RestClient("https://api.ghasedak.io/v2/contact/group/listnumber ");
var request = new RestRequest(Method.GET);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "groupid" , 1020 );
request.AddParameter( "offset" , 50 );
request.AddParameter( "page" , 2 );
IRestResponse response = client.Execute(request);

import requests

url = "https://api.ghasedak.io/v2/contact/group/listnumber"

payload = "groupid=152074&="
headers = {
'apikey': "your apikey",

}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

var request = require("request");
var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/contact/group/listnumber',
headers:
{
apikey: 'your apikey' },
form: { groupid: '152074' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
          {
             "firstName":"test",
             "lastName": "test"
             "number": 4
             "email": "a@a.com"
          }
    ]
  } مقدار items آرایه ایی از لیست مخاطبین گروه مورد نظر با groupid داده شده می باشد .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح کد خطا:

جدول

ویرایش گروه ها

از این متد برای ویرایش گروه ها (تغییر نام گروه) استفاده می شود.

ساختار URL:

https://api.ghasedak.io/v2/contact/group/edit 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header string برای دریافت apikey بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را مشاهده نمایید. اجباری
groupid Body int

شماره گروه که به هنگام ثبت گروه دریافت شده

اجباری
name Body string

نام جدید برای گروه

اجباری

نمونه کد خروجی:


curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/contact/group/edit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "groupid=152074&groupname=tissue",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",

),
));
$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/contact/group/edit")
.header("apikey", "your apikey")
.body("groupid=152074&groupname=tissue")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/contact/group/edit");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "groupid" , 1020 );
request.AddParameter( "name" , " test " );
IRestResponse response = client.Execute(request);

import requests
url = "https://api.ghasedak.io/v2/contact/group/edit"

payload = "groupid=152074&groupname=test"
headers = {
'apikey': "your apikey",
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)

var request = require("request");
var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/contact/group/edit',
headers:
{
apikey: 'your apikey' },
form: { groupid: '152074', groupname: 'test' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

package main
import (
"fmt"
"strings"
"net/https"
"io/ioutil"
)

func main() {
url := "https://api.ghasedak.io/v2/contact/group/edit"
payload := strings.NewReader("apikey":"myapi","groupid":1020,"name":"test")
req, _ := https.NewRequest("POST", url, payload)
req.Header.Add("...", "...")
res, _ := https.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": null
}

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح کد خطا:

جدول

حذف گروه

از این متد برای حذف گروه مخاطبین استفاده می شود.

ساختار URL:

https://api.ghasedak.io/v2/contact/group/remove 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header String برای بدست آوردن مقدار بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را دریافت نمایید. اجباری
groupid Body string

شماره گروه که به هنگام ثبت گروه دریافت شده

اجباری

نمونه کد خروجی:

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/contact/group/remove",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "groupid=152074",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
),));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/contact/group/remove")
.header("apikey", "your apikey")
.body("groupid=152074")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/contact/group/remove");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "groupid" , 1020 );
IRestResponse response = client.Execute(request);

import requests
url = "https://api.ghasedak.io/v2/contact/group/remove"
payload = "groupid=152074"
headers = {
'apikey': "your apikey",
}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

var request = require("request");
var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/contact/group/remove',
headers:
{
apikey: 'your apikey' },
form: { groupid: '152074' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

package main
import (
"fmt"
"strings"
"net/https"
"io/ioutil"
)
func main() {
url := "https://api.ghasedak.io/v2/contact/group/remove"
payload := strings.NewReader("")
req, _ := https.NewRequest("POST", url, payload)
req.Header.Add("...", "...")
res, _ := https.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": null
}

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح کد خطا:

جدول

پیام های دریافتی

از این متد برای گرفتن لیست پیام های دریافتی استفاده می شود، به ازای هر بار فراخوانی این متد 100 پیام بازگردانده می شود.

ساختار URL:

https://api.ghasedak.io/v2/sms/receive/last 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header String برای بدست آوردن مقدار بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را دریافت نمایید. اجباری
linenumber Body String

شماره خط

اجباری
isread Body int

اگر (0) وارد شود پیام های خوانده نشده و اگر (1) وارد شود پیام های خوانده شده بر می گردد.

اجباری

نمونه کد خروجی:


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/sms/receive/last",
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "linenumber=30001818001828&isread=0&=",
CURLOPT_HTTPHEADER => array(
"apikey:your apikey",

),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" .$err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/sms/receive/last")
.header("apikey", "your apikey")

.body("linenumber=30001818...&isread=0&=")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/sms/receive/last");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "linenumber" , " 5000222 " );
request.AddParameter( "isread" , 1 );
IRestResponse response = client.Execute(request);

import requests
url = "https://api.ghasedak.io/v2/sms/receive/last"

payload = "linenumber=3000...&isread=0&="
headers = {
'apikey': "your apikey",

}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)

var request = require("request");

var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/sms/receive/last',
headers:
{
apikey: 'your apikey' },
form: { linenumber: '3000....', isread: '0' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

package main
import (
"fmt"
"strings"
"net/https"
"io/ioutil"
)
func main() {
url := "https://api.ghasedak.io/v2/sms/receive/last"
payload := strings.NewReader("apikey":"myapikey","linenumber":"12345","isread":1)
req, _ := https.NewRequest("POST", url, payload)
req.Header.Add("...", "...")
res, _ := https.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
          {
             "messageid": 1020,
             "message": "test",
             "sender": "09122222222",
             "linenumber": "1000200",
             "receivedate": "2017-10-16T12:31:1"
          }
    ]
  } @* مقدار items آرایه ایی شامل موارد بالا می باشد *@

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

پیام های دریافتی به صورت صفحه بندی

از این متد برای گرفتن لیست پیام های دریافتی به صورت صفحه بندی استفاده می شود، به ازای هر بار فراخوانی این متد 200 پیام بازگردانده می شود.

ساختار URL:

https://api.ghasedak.io/v2/sms/receive/paging 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header String برای بدست آوردن مقدار بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را دریافت نمایید. اجباری
linenumber Body String

شماره خط

اجباری
isread Body int

اگر (0) وارد شود پیام های خوانده نشده و اگر (1) وارد شود پیام های خوانده شده بر می گردد.

اجباری
fromdate Body String

تاریخ و زمان دقیق شروع ارسال پیام بر اساس Unixtime می باشد.

اجباری
todate Body String

تاریخ و زمان دقیق پایان ارسال پیام بر اساس Unixtime می باشد.

اجباری
page Body int

صفحه مورد نظر را وارد کنید، صفحه اول 0 می باشد.

اجباری
offset Body int

تعداد پیام بازگشتی در هر صفحه ، حداکثر تعداد 200 می باشد.

اجباری

نمونه کد خروجی:


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/sms/receive/paging",
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "linenumber=30001818001828&isread=0&fromdate=1508144471&todate=1508144471&page=0&offset=200",
CURLOPT_HTTPHEADER => array(
"apikey:your apikey",

),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" .$err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/sms/receive/paging")
.header("apikey", "your apikey")

.body("linenumber=30001818001828&isread=0&fromdate=1508144471&todate=1508144471&page=0&offset=200")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/sms/receive/paging");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "linenumber" , " 5000222 " );
request.AddParameter( "isread" , 1 );
request.AddParameter( "fromdate" , 1508144471 );
request.AddParameter( "todate" , 1508144471 );
request.AddParameter( "page" , 0 );
request.AddParameter( "offset" , 200 );
IRestResponse response = client.Execute(request);

import requests
url = "https://api.ghasedak.io/v2/sms/receive/paging"

payload = "linenumber=30001818001828&isread=0&fromdate=1508144471&todate=1508144471&page=0&offset=200"
headers = {
'apikey': "your apikey",

}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)

var request = require("request");

var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/sms/receive/paging',
headers:
{
apikey: 'your apikey' },
form: { linenumber: '3000....', isread: '0', 'fromdate': '1508144471','todate':'1508144471','page':'0','offset':'200' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

package main
import (
"fmt"
"strings"
"net/https"
"io/ioutil"
)
func main() {
url := "https://api.ghasedak.io/v2/sms/receive/paging"
payload := strings.NewReader("apikey":"myapikey","linenumber":"12345","isread":1, "fromdate": "1508144471","todate":"1508144471","page":0,"offset":200)
req, _ := https.NewRequest("POST", url, payload)
req.Header.Add("...", "...")
res, _ := https.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
          {
             "messageid": 1020,
             "message": "test",
             "sender": "09122222222",
             "linenumber": "1000200",
             "receivedate": "2017-10-16T12:31:1"
          }
        ,{
             "messageid": 1021,
             "message": "test2",
             "sender": "09122222222",
             "linenumber": "1000200",
             "receivedate": "2017-10-16T12:31:1"
          }     ]
  },
  "totalcount": 1000 مقدار items آرایه ایی شامل موارد بالا است. مقدار totalcount تعداد کل پیام های دریافتی در تاریخ مورد نظر می باشد.

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

لغو پیام ارسالی

از این متد برای لغو پیام های ارسالی زمانبندی شده استفاده میگردد.به این معنا که هر پیامی قابل حذف نمی باشد.

ساختار URL:

https://api.ghasedak.io/v2/sms/cancel 

متد:

Post

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header String برای بدست آوردن مقدار بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را دریافت نمایید. اجباری
messageid Body String

شناسه پیامک که با ( , ) ازهم جدا می شوند .

اجباری

نمونه کد خروجی:


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.ghasedak.io/v2/sms/cancel",

CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "messageids=123456",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",
\ ),
));
$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("https://api.ghasedak.io/v2/sms/cancel")
.header("apikey", "your apikey")
.header("cache-control", "no-cache")
.body("messageids=123456")
.asString();


var client = new RestClient("https://api.ghasedak.io/v2/sms/cancel");
var request = new RestRequest(Method.POST);
request.AddHeader("apikey" ," your apikey " );
request.AddParameter( "messageid" , " 1020 , 1022 " );
IRestResponse response = client.Execute(request);

import requests

url = "https://api.ghasedak.io/v2/sms/cancel"

payload = "messageids=123456"
headers = {
'apikey': "your apikey",

}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

var request = require("request");

var options = { method: 'POST',
url: 'https://api.ghasedak.io/v2/sms/cancel',
headers:
{ ',
apikey: 'your apikey' },
form: { messageids: '123456' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

package main
import (
"fmt"
"strings"
"net/https"
"io/ioutil"
)

func main() {
url := "https://api.ghasedak.io/v2/sms/cancel"
payload := strings.NewReader("apikey:'my api' , messageid:'12345'")
req, _ := https.NewRequest("POST", url, payload)
req.Header.Add("...", "...")
res, _ := https.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
              1022,1023
    ]
  } مقدار items آرایه ایی به طول تعداد شناسه پیامک های ارسالی است که هر یک از اعداد اگر بزرگتر از 100 باشد یعنی ارسال پیام پیام با موفقیت متوقف شده و مقدار بازگشتی همان شناسه پیامک می باشد .

{
  "result": {
     "code": 401,
     "message": "Unauthorized.Invalid Api key"
 },
  "items": null
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}

توضیح کد خطا:

جدول

اطلاعات کاربری

این متد برای دریافت اطلاعات کاربری شامل مقدار ریالی اعتبار باقیمانده و تاریخ انقضا حساب کاربری شخص می باشد

ساختار URL:

https://api.ghasedak.io/v2/account/info 

متد:

Get

پارامترهای ورودی:

Parameter Entry in Format Description Required
apikey Header String برای بدست آوردن مقدار بعد از وارد شدن به پنل حساب کاربری خود در قسمت تنظیمات حساب کاربری می توانید کد apikey را دریافت نمایید. اجباری

نمونه کد خروجی:


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => " https://api.ghasedak.io/v2/account/info",
CURLOPT_https_VERSION => CURL_https_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => array(
"apikey: your apikey",

),
));
curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post(" https://api.ghasedak.io/v2/account/info")
.header("apikey", "your apikey")

.asString();


var client = new RestClient("https://api.ghasedak.io/v2/account/info");
var request = new RestRequest(Method.GET);
request.AddHeader("apikey" ," your apikey " );
IRestResponse response = client.Execute(request);

import requests

url = "https://api.ghasedak.io/v2/account/info"

headers = {
'apikey': "your apikey",
}
response = requests.request("POST", url, headers=headers)
print(response.text)

var request = require("request");
var options = { method: 'POST',
url: ' https://api.ghasedak.io/v2/account/info',
headers:
{
apikey: 'your apikey' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

package main
import(
"fmt"
"github.com/ghasedakapi/ghasedakapi-go"
)
const (
ApiKey = "your apikey"
)
func main(){
c := ghasedakapi.New(ApiKey)
if result, err:= c.Account.GetInfo(); err != nil {
fmt.Println(err)
}
else {
fmt.Println(result.Items.Balance)
fmt.Println(result.Items.Expire)
}
}

نتیجه نهایی:

{
  "result": {
     "code": 200,
     "message": "success"
 },
  "items": [
          {
             "balance": 1250000,
             "expire": 1530445421
          }
    ]
  } مقدار items آرایه ایی شامل اعتبار باقیمانده حساب کاربری به ریال و تاریخ انقضا کاربر با فرمت Unixtime می باشد .

{
"result": "error",
"message": "description has been denied for this request.",
}

{
  "result": {
     "code": 400,
     "message": "Invalid Parameters"
 },
  "items": null
}