White SMS.ir - Restful Api V1.0



BankTransaction


GETGetBankTransactionsByPageId

https://api.sms.ir/users/v1/BankTransaction/GetBankTransactionsByPageId?pageid=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Response

Transaction : آرایه ای از تراکنشهای کاربر میباشد.
Amount : مقدار مبلغ تراکنشی که ثبت شده است.
CreationDateTime : تاریخ میالدی که تراکنش ثبت شده است.
PersianCreationDateTime : تاریخ شمسی که تراکنش به ثبت رسیده است.
TransactionType : توضیح نوع تراکنش ثبت شده در سیستم.
IsValid : درصورت True بودن تراکنش موفق بوده است و در صورتیکه False باشد تراکنش نا موفق بوده است.
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{"Transaction": [{
 "Amount": double,
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string",
 "TransactionType": "string",
 "IsValid": boolean
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetBankTransactionsByPageId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

    class PayamakSefid_GetBankTransactionsByPageId {

	/**
	* Get Bank Transactions By PageId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetBankTransactionsByPageIdUrl() {
		return "https://api.sms.ir/users/v1/BankTransaction/GetBankTransactionsByPageId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Bank Transactions By PageId.
	*
	* @param string $PageId Transactions PageId
    * @return string Indicates the Bank Transactions result
	*/
	public function GetBankTransactionsByPageId($PageId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetBankTransactionsByPageIdUrl()."?PageId=".$PageId;
			$GetBankTransactionsByPageId = $this->execute($url, $token);

			$object = json_decode($GetBankTransactionsByPageId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$PageId = 0;

	$PayamakSefid_GetBankTransactionsByPageId = new PayamakSefid_GetBankTransactionsByPageId($APIKey,$SecretKey);
	$GetBankTransactionsByPageId = $PayamakSefid_GetBankTransactionsByPageId->GetBankTransactionsByPageId($PageId);
	echo "<pre>";
	var_dump($GetBankTransactionsByPageId);

} catch (Exeption $e) {
	echo 'Error GetBankTransactionsByPageId : '.$e->getMessage();
}
?>
                                        
                                    
                                

GETGetBankTransactionsFromLastId

https://api.sms.ir/users/v1/BankTransaction/GetBankTransactionsFromLastId?lastid=0
HEADERS

Content-Type
نوع ارسالی که باید از نوع json باشد.
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                                    
Response

Transction : آرایه ای از تراکنش های کاربر می باشد.
Id : شناسه تراکنش
Amount : مقدار مبلغ تراکنشی که ثبت شده است.
CreationDateTime : تاریخ میالدی که تراکنش ثبت شده ست.
PersianCreationDateTime : تاریخ شمسی که تراکنش به ثبت رسیده است.
TransactionType : توضیح نوع تراکنش ثبت شده در سیستم.
IsValid : درصورت True بودن تراکنش موفق بوده است و در صورتیکه False باشد تراکنش نا موفق بوده است.
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{ "Transaction": [{
 "Id": integer,
 "Amount": double,
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string",
"TransactionType": "string",
 "IsValid": boolean
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}

                        
Example Request
GetBankTransactionsFromLastId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
    class PayamakSefid_GetBankTransactionsFromLastId {

	/**
	* Get Bank Transactions From LastId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetBankTransactionsFromLastIdUrl() {
		return "https://api.sms.ir/users/v1/BankTransaction/GetBankTransactionsFromLastId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Bank Transactions From LastId.
	*
	* @param string $LastId Transactions LastId
    * @return string Indicates the Bank Transactions result
	*/
	public function GetBankTransactionsFromLastId($LastId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetBankTransactionsFromLastIdUrl()."?LastId=".$LastId;
			$GetBankTransactionsFromLastId = $this->execute($url, $token);

			$object = json_decode($GetBankTransactionsFromLastId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$LastId = 0;

	$PayamakSefid_GetBankTransactionsFromLastId = new PayamakSefid_GetBankTransactionsFromLastId($APIKey,$SecretKey);
	$GetBankTransactionsFromLastId = $PayamakSefid_GetBankTransactionsFromLastId->GetBankTransactionsFromLastId($LastId);
	echo "<pre>";
	var_dump($GetBankTransactionsFromLastId);

} catch (Exeption $e) {
	echo 'Error GetBankTransactionsFromLastId : '.$e->getMessage();
}
?>

                                        
                                    
                                

Contacts


POSTAddContacts

https://api.sms.ir/users/v1/Contacts/AddContacts
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Body

ContactsDetails :آرایه ای از اطلاعات مخاطبین
Prefix (اختیاری) : پیشوند اسامی مخاطبین
FirstName (اختیاری) : نام مخاطب
LastName (اختیاری) : نام خانوادگی مخاطب
Mobile (اجباری) : شماره موبایل مخاطب
EmojiId (اختیاری) : شناسه اموجی )تصویر فرضی برای کاراکتر مخاطب( که می تواند سه مقدار عددی یک و دو و سه را شامل شود. هنگام فراخوانی اطالعات مخاطب هر شناسه می تواند تصویر کاراکتر مرتبط را نشان دهد.
ناشناس : Emojiid = 1
آقا : Emojiid = 2
خانم : Emojiid = 3
GroupId (اجباری) : گروه مخاطبی که قصد افزودن مخاطبان به آن را دارید.
Json Code

{
 "ContactsDetails": [
 {
 "Prefix": "string",
 "FirstName": "string",
 "LastName": "string",
 "Mobile": "string",
 "EmojiId": "byte"
 }
],
 "GroupId": integer
}
                        
Response

AddedList : لیست مخاطبینی که افزودن آنها به سیستم با موفقیت انجام شده است.
Prefix : پیشوند مخاطب
FirstName : نام مخاطب
LastName : نام خانوادگی مخاطب
Mobile : شماره موبایل مخاطب
EmojiId: شناسه اموجی )تصویر فرضی برای کاراکتر مخاطب( که می تواند سه مقدار عددی یک و دو و سه را شامل شود. هنگام فراخوانی اطالعات مخاطب هر شناسه می تواند تصویر کاراکتر مرتبط را نشان دهد.
ناشناس : Emojiid = 1
آقا : Emojiid = 2
خانم : Emojiid = 3
ErroneousList : لیست مخاطبینی که افزودن آنها به سیستم با خطا مواجه شده است. درصورتیکه خطایی هنگام افزودن مخاطبین رخ نداده باشد این مقدار null می باشد.
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "AddedList": [{
 "Prefix": "string",
"FirstName": "string",
 "LastName": "string",
 "Mobile": "string",
 "EmojiId": "byte"
 }],
 "ErroneousList": [{
 "Prefix": "string",
 "FirstName": "string",
 "LastName": "string",
 "Mobile": "string",
 "EmojiId": "byte"
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
AddContacts
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
    class PayamakSefid_AddContacts {

	/**
	* Add Contacts Url.
	*
    * @return string Indicates the Url
	*/
	protected function AddContactsUrl() {
		return "https://api.sms.ir/users/v1/Contacts/AddContacts";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Add Contacts.
	*
	* @param string $ContactsData Contacts Data
    * @return string Indicates the Add Contacts result
	*/
	public function AddContacts($ContactsData) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->AddContactsUrl();
			$AddContacts = $this->execute($ContactsData, $url, $token);

			$object = json_decode($AddContacts);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($postData, $url, $token){

		$postString = json_encode($postData);

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}

try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	// add contacts data
	$ContactsData = array(
		'ContactsDetails' => array(
			array(
				'Prefix' => 'Mr',
				'FirstName' => 'Name',
				"LastName" => 'Family',
				'Mobile' => 912xxxxxxx,
				'EmojiId' => '1'
			),
			array(
				'Prefix' => 'Mr',
				'FirstName' => 'Name',
				"LastName" => 'Family',
				'Mobile' => 912xxxxxxx,
				'EmojiId' => '1'
			)
		),
		'GroupId' => 0
	);

	$PayamakSefid_AddContacts = new PayamakSefid_AddContacts($APIKey,$SecretKey);
	$AddContacts = $PayamakSefid_AddContacts->AddContacts($ContactsData);
	echo "<pre>";
	var_dump($AddContacts);

} catch (Exeption $e) {
	echo 'Error AddContacts : '.$e->getMessage();
}
?>
                                        
                                    
                                

POSTAddOrUpdateContactGroup

https://api.sms.ir/users/v1/Contacts/AddOrUpdateContactGroup
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
Json Code

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Body

Groupid (اجباری) : شناسه گروهی که قصد ویرایش آن را دارید. درصورتیکه می خواهید گروه جدید اضافه کنید، این پارامتر باید مقدار صفر داشته باشد.
GroupName (اجباری) : نام گروهی که قصد افزودن و یا ویرایش آن را دارید.
Color (اختیاری) : کد رنگی که برای گروه در نظر داریدبعنوان مثال: ffffff #برای رنگ سفید می باشد.
Json Code

{
"GroupId": integer,
"GroupName": "string,"
"Color": "string"
}

                        
Response

GroupId : شناسه گروهی که افزوده شده است و یا ویرایش شده است.
GroupName : نام گروهی که ویرایش شده است و یا افزوده شده است.
ContactsCount : تعداد مخاطبین موجود در گروه
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "GroupId": integer,
 "GroupName": "string",
 "CreationDateTime": "string",
 "ContactsCount": integer,
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
AddOrUpdateContactGroup
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_AddOrUpdateContactGroup {

	/**
	* Add Contacts Group Url.
	*
    * @return string Indicates the Url
	*/
	protected function AddOrUpdateContactGroupUrl() {
		return "https://api.sms.ir/users/v1/Contacts/AddOrUpdateContactGroup";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Add Or Update Contact Group.
	*
	* @param string $ContactsGroup Contacts Group
    * @return string Indicates the Add Or Update Contact Group result
	*/
	public function AddOrUpdateContactGroup($ContactsGroup) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->AddOrUpdateContactGroupUrl();
			$AddOrUpdateContactGroup = $this->execute($ContactsGroup, $url, $token);

			$object = json_decode($AddOrUpdateContactGroup);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($postData, $url, $token){

		$postString = json_encode($postData);

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	// add contacts Group data
	$ContactsGroup = array(
		'GroupId' => 0,
		'GroupName' => 'test',
		'Color' => '#000000'
	);

	$PayamakSefid_AddOrUpdateContactGroup = new PayamakSefid_AddOrUpdateContactGroup($APIKey,$SecretKey);
	$AddOrUpdateContactGroup = $PayamakSefid_AddOrUpdateContactGroup->AddOrUpdateContactGroup($ContactsGroup);
	echo "<pre>";
	var_dump($AddOrUpdateContactGroup);

} catch (Exeption $e) {
	echo 'Error AddOrUpdateContactGroup : '.$e->getMessage();
}

?>

                                        
                                    
                                

GETDeleteContactGroup

https://api.sms.ir/users/v1/Contacts/DeleteContactGroup?groupId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
Json Code

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
DeleteContactGroup
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_DeleteContactGroup {

	/**
	* Get Delete Contact Group Url.
	*
    * @return string Indicates the Url
	*/
	protected function DeleteContactGroupUrl() {
		return "https://api.sms.ir/users/v1/Contacts/DeleteContactGroup";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Delete Contact Group.
	*
	* @param string $groupId Group groupId
    * @return string Indicates the Delete Contact Group result
	*/
	public function DeleteContactGroup($groupId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->DeleteContactGroupUrl()."?groupId=".$groupId;
			$DeleteContactGroup = $this->execute($url, $token);

			$object = json_decode($DeleteContactGroup);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}

    try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$groupId = 0;

	$PayamakSefid_DeleteContactGroup = new PayamakSefid_DeleteContactGroup($APIKey,$SecretKey);
	$DeleteContactGroup = $PayamakSefid_DeleteContactGroup->DeleteContactGroup($groupId);
	echo "<pre>";
	var_dump($DeleteContactGroup);

} catch (Exeption $e) {
	echo 'Error DeleteContactGroup : '.$e->getMessage();
}
?>
                                        
                                    
                                

POSTDeleteContacts

https://api.sms.ir/users/v1/Contacts/DeleteContacts
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
Json Code

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}


                        
Body

Ids (اجباری) : آرایه ای از شناسه مخاطبینی که قصد حذف آنها را دارید
Json Code

                                        {[ integer": [ Ids {
                                    
Response

IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
DeleteContacts
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_DeleteContacts {

	/**
	* Delete Contacts Url.
	*
    * @return string Indicates the Url
	*/
	protected function DeleteContactsUrl() {
		return "https://api.sms.ir/users/v1/Contacts/DeleteContacts";
	}

	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }

	/**
	* Delete Contacts.
	*
	* @param string $ContactIds Contact Ids
    * @return string Indicates the Delete Contacts result
	*/
	public function DeleteContacts($ContactIds) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);

		if($token != false){

			$url = $this->DeleteContactsUrl();
			$DeleteContacts = $this->execute($ContactIds, $url, $token);

			$object = json_decode($DeleteContacts);

			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);

		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                                            'Content-Type: application/json'
                                            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($postData, $url, $token){

		$postString = json_encode($postData);

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
											'Content-Type: application/json',
											'x-sms-ir-secure-token: '.$token
											));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);

		curl_close($ch);
		return $result;
	}
}
                                            try {

	date_default_timezone_set("Asia/Tehran");

	include_once("Classes/DeleteContacts.php");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	// contact Ids
	$ContactIds = array(
		'Ids' => array(0,1)
	);

	$PayamakSefid_DeleteContacts = new PayamakSefid_DeleteContacts($APIKey,$SecretKey);
	$DeleteContacts = $PayamakSefid_DeleteContacts->DeleteContacts($ContactIds);
	echo "
";
	var_dump($DeleteContacts);

} catch (Exeption $e) {
	echo 'Error DeleteContacts : '.$e->getMessage();
}

?>


                                        
                                    
                                

POSTDeleteGroupContacts

https://api.sms.ir/users/v1/Contacts/DeleteGroupContacts
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Body

GroupIds (اجباری) : شناسه گروه هایی که قصد دارید همه مخاطبین آنها پا شوند.
Json Code

                                        {[ integer": [GroupIds {
                                    
Response

IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
DeleteGroupContacts
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_DeleteGroupContacts {

	/**
	* Delete Group Contacts Url.
	*
    * @return string Indicates the Url
	*/
	protected function DeleteGroupContactsUrl() {
		return "https://api.sms.ir/users/v1/Contacts/DeleteGroupContacts";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Delete Group Contacts.
	*
	* @param string $GroupIds Group Ids
    * @return string Indicates the Delete Group Contacts result
	*/
	public function DeleteGroupContacts($GroupIds) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->DeleteGroupContactsUrl();
			$DeleteGroupContacts = $this->execute($GroupIds, $url, $token);

			$object = json_decode($DeleteGroupContacts);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($postData, $url, $token){

		$postString = json_encode($postData);

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}

try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	// Group Ids
	$GroupIds = array(
		'GroupIds' => array(0,1)
	);

	$PayamakSefid_DeleteGroupContacts = new PayamakSefid_DeleteGroupContacts($APIKey,$SecretKey);
	$DeleteGroupContacts = $PayamakSefid_DeleteGroupContacts->DeleteGroupContacts($GroupIds);

	var_dump($DeleteGroupContacts);

} catch (Exeption $e) {
	echo 'Error DeleteGroupContacts : '.$e->getMessage();
}
?>

                                        
                                    
                                

GETGetCancelledContactsByPageId

https://api.sms.ir/users/v1/Contacts/GetCancelledContactsByPageId?pageId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}


                        
Response

ContactDetails : آرایه ای از لیست مخاطبین
ContactRelationId : شناسه ارتباطی مخاطب در گروه های عضو شده
GroupId : شناسه گروهی که مخاطب درآن عضو است
GroupName : نام گروهی که مخاطب در آن عضو است
Prefix : پیشوند مخاطب
FirstName : نام مخاطب
LastName : نام خانوادگی مخاطب
Mobile : شماره موبایل مخاطب
EmojiId: شناسه اموجی )تصویر فرضی برای کاراکتر مخاطب( که می تواند سه مقدار عددی یک و دو و سه را شامل شود. هنگام فراخوانی اطالعات مخاطب هر شناسه می تواند تصویر کاراکتر مرتبط را نشان دهد.
ناشناس : Emojiid = 1
آقا : Emojiid = 2
خانم : Emojiid = 3
CreationDateTime : تاریخ میالدی افزوده شدن مخاطب به سیستم
PersianCreationDateTime : تاریخ شمسی افزوده شدن مخاطب به سیستم
CancellationDateTime : تاریخ میالدی لغو عضویت مخاطبین
PersianCancellationDateTime : تاریخ شمسی لغو عضویت مخاطبین
CancelledContactCount : تعداد مخاطبین لغو عضو کرده در سیستم
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "ContactDetails": [
 {
 "ContactRelationId": integer,
 "GroupId": integer,
 "GroupName": "string",
 "Prefix": "string",
 "FirstName": "string",
 "LastName": "string",
 "Mobile": "string",
 "EmojiId": "byte",
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string",
 "CancellationDateTime": "DateTime",
 "PersianCancellationDateTime": "string"
 }
 ],
 "CancelledContactCount": integer,
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}

                        
Example Request
GetCancelledContactsByPageId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetCancelledContactsByPageId {

	/**
	* Get Cancelled Contacts By PageId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetCancelledContactsByPageIdUrl() {
		return "https://api.sms.ir/users/v1/Contacts/GetCancelledContactsByPageId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Cancelled Contacts By PageId.
	*
	* @param string $pageId pageId
    * @return string Indicates the Get Cancelled Contacts By PageId result
	*/
	public function GetCancelledContactsByPageId($pageId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetCancelledContactsByPageIdUrl()."?pageId=".$pageId;
			$GetCancelledContactsByPageId = $this->execute($url, $token);

			$object = json_decode($GetCancelledContactsByPageId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}

    try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$pageId = 0;

	$PayamakSefid_GetCancelledContactsByPageId = new PayamakSefid_GetCancelledContactsByPageId($APIKey,$SecretKey);
	$GetCancelledContactsByPageId = $PayamakSefid_GetCancelledContactsByPageId->GetCancelledContactsByPageId($pageId);
	echo "<pre>";
	var_dump($GetCancelledContactsByPageId);

} catch (Exeption $e) {
	echo 'Error GetCancelledContactsByPageId : '.$e->getMessage();
}
?>
                                        
                                    
                                

GETGetContactGroups

https://api.sms.ir/users/v1/Contacts/GetContactGroups
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}


                        
Response

ContactGroups : آرایه ای از گروه های مخاطبین
GroupId : شناسه گروه مخاطب
Name : نام گروه مخاطب
Color : کد رنگ افزوده شده برای گروه مخاطب.بعنوان مثال: ffffff #برای رنگ سفید می باشد.
ContactsCount : تعداد مخاطبین موجود در گروه
InvalidContactsCount: تعداد مخاطبینی که در صف زمانی، برای فعال شدن ارسال پیامک برایشان قرار دارند.)شماره هایی که اولین بار در لیست مخاطبین وارد می شوند بعد از ارسال پیامک عضویت، محدودیت زمانی برای ارسالی های بعدی دارند تا درصورت نیاز ، مخاطب ، لغو عضویت انجام دهد.(
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "ContactGroups": [
 {
 "GroupId": integer,
 "Name": "string",
 "Color": "string",
 "ContactsCount": integer,
 "InvalidContactsCount": integer
 }
 ],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}

                        
Example Request
GetContactGroups
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetContactGroups {

	/**
	* Get Contact Groups Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetContactGroupsUrl() {
		return "https://api.sms.ir/users/v1/Contacts/GetContactGroups";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Contact Groups.
	*
    * @return string Indicates the Get Cancelled Contacts By PageId result
	*/
	public function GetContactGroups() {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetContactGroupsUrl();
			$GetContactGroups = $this->execute($url, $token);

			$object = json_decode($GetContactGroups);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                                            'Content-Type: application/json'
                                            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
											'Content-Type: application/json',
											'x-sms-ir-secure-token: '.$token
											));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$PayamakSefid_GetContactGroups = new PayamakSefid_GetContactGroups($APIKey,$SecretKey);
	$GetContactGroups = $PayamakSefid_GetContactGroups->GetContactGroups();
	echo "<pre>";
	var_dump($GetContactGroups);

} catch (Exeption $e) {
	echo 'Error GetContactGroups : '.$e->getMessage();
}
?>

                                        
                                    
                                

GETGetContactsByGroupIdByPageId

https://api.sms.ir/users/v1/Contacts/GetContactsByGroupIdByPageId?groupId=0&pageid=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

ContactDetails : آرایه ای از لیست مخاطبین
ContactRelationId : شناسه ارتباطی مخاطب در گروه های عضو شده
GroupId : شناسه گروهی که مخاطب درآن عضو است
GroupName : نام گروهی که مخاطب در آن عضو است
FirstName : نام مخاطب
LastName : نام خانوادگی مخاطب
Mobile : شماره موبایل مخاطب
EmojiId: شناسه اموجی )تصویر فرضی برای کاراکتر مخاطب( که می تواند سه مقدار عددی یک و دو و سه را شامل شود. هنگام فراخوانی اطالعات مخاطب هر شناسه می تواند تصویر کاراکتر مرتبط را نشان دهد.
ناشناس : Emojiid = 1
آقا : Emojiid = 2
خانم : Emojiid = 3
CreationDateTime : تاریخ میالدی افزوده شدن مخاطب به سیستم
PersianCreationDateTime : تاریخ شمسی افزوده شدن مخاطب به سیستم
RemainedSecondsToBeValid : ثانیه های باقیمانده برای فعال شدن مخاطب جهت ارسال مجدد پیامک بعد از پیامک عضویت
Prefix : پیشوند مخاطب
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
BODY

{
 "ContactDetails": [
 {
 "ContactRelationId": integer,
 "GroupId": integer,
 "GroupName": "string",
 "FirstName": "string",
 "LastName": "string",
 "Mobile": "string",
 "EmojiId": "byte",
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string",
 "RemainedSecondsToBeValid": double,
 "Prefix": "string"
 }
 ],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetContactsByGroupIdByPageId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetContactsByGroupIdByPageId {

	/**
	* Get Contacts By GroupId By PageId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetContactsByGroupIdByPageIdUrl() {
		return "https://api.sms.ir/users/v1/Contacts/GetContactsByGroupIdByPageId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Contacts By GroupId By PageId.
	*
	* @param string $groupId groupId
	* @param string $pageId pageId
    * @return string Indicates the Get Contacts By GroupId By PageId result
	*/
	public function GetContactsByGroupIdByPageId($groupId,$pageId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetContactsByGroupIdByPageIdUrl()."?groupId=".$groupId."&pageId=".$pageId;
			$GetContactsByGroupIdByPageId = $this->execute($url, $token);

			$object = json_decode($GetContactsByGroupIdByPageId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
    try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$groupId = 0;
	$pageId = 0;

	$PayamakSefid_GetContactsByGroupIdByPageId = new PayamakSefid_GetContactsByGroupIdByPageId($APIKey,$SecretKey);
	$GetContactsByGroupIdByPageId = $PayamakSefid_GetContactsByGroupIdByPageId->GetContactsByGroupIdByPageId($groupId,$pageId);
	echo "<pre>";
	var_dump($GetContactsByGroupIdByPageId);

} catch (Exeption $e) {
	echo 'Error GetContactsByGroupIdByPageId : '.$e->getMessage();
}
?>

                                        
                                    
                                

GETGetContactsByPageId

https://api.sms.ir/users/v1/Contacts/GetContactsByPageId?pageId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

ContactDetails : آرایه ای از لیست مخاطبین
ContactRelationId : شناسه ارتباطی مخاطب در گروه های عضو شده
GroupId : شناسه گروهی که مخاطب درآن عضو است
GroupName : نام گروهی که مخاطب در آن عضو است
FirstName : نام مخاطب
LastName : نام خانوادگی مخاطب
Mobile : شماره موبایل مخاطب
EmojiId : شناسه اموجی )تصویر فرضی برای کاراکتر مخاطب( که می تواند سه مقدار عددی یک و دو و سه را شامل شود. هنگام فراخوانی اطالعات مخاطب هر شناسه می تواند تصویر کاراکتر مرتبط را نشان دهد.
ناشناس : Emojiid = 1
آقا : Emojiid = 2
خانم : Emojiid = 3
CreationDateTime : تاریخ میالدی افزوده شدن مخاطب به سیستم
PersianCreationDateTime : تاریخ شمسی افزوده شدن مخاطب به سیستم
RemainedSecondsToBeValid : ثانیه های باقیمانده برای فعال شدن مخاطب جهت ارسال مجدد پیامک بعد از پیامک عضویت
Prefix : پیشوند مخاطب
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده میشود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
Json Code

{
 "ContactDetails": [
 {
 "ContactRelationId": integer,
 "GroupId": integer,
 "GroupName": "string",
 "FirstName": "string",
 "LastName": "string",
 "Mobile": "string",
 "EmojiId": "byte",
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string",
 "RemainedSecondsToBeValid": double,
 "Prefix": "string"
 }
 ],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetContactsByPageId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetContactsByPageId {

	/**
	* Get Contacts By PageId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetContactsByPageIdUrl() {
		return "https://api.sms.ir/users/v1/Contacts/GetContactsByPageId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Contacts By PageId.
	*
	* @param string $pageId pageId
    * @return string Indicates the Get Contacts By PageId result
	*/
	public function GetContactsByPageId($pageId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetContactsByPageIdUrl()."?pageId=".$pageId;
			$GetContactsByPageId = $this->execute($url, $token);

			$object = json_decode($GetContactsByPageId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$pageId = 0;

	$PayamakSefid_GetContactsByPageId = new PayamakSefid_GetContactsByPageId($APIKey,$SecretKey);
	$GetContactsByPageId = $PayamakSefid_GetContactsByPageId->GetContactsByPageId($pageId);
	echo "<pre<";
	var_dump($GetContactsByPageId);

} catch (Exeption $e) {
	echo 'Error GetContactsByPageId : '.$e->getMessage();
}
?>

                                        
                                    
                                

GETGetContactsFromLastId

https://api.sms.ir/users/v1/Contacts/GetContactsFromLastId?lastid=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

ContactDetails : آرایه ای از لیست مخاطبین
Id : شناسه مخاطب
ContactRelationId : شناسه ارتباطی مخاطب در گروه های عضو شده
GroupId : شناسه گروهی که مخاطب درآن عضو است
GroupName : نام گروهی که مخاطب در آن عضو است
FirstName : نام مخاطب
LastName : نام خانوادگی مخاطب
Mobile : شماره موبایل مخاطب
EmojiId: شناسه اموجی )تصویر فرضی برای کاراکتر مخاطب( که می تواند سه مقدار عددی یک و دو و سه را شامل شود. هنگام فراخوانی اطالعات مخاطب هر شناسه می تواند تصویر کاراکتر مرتبط را نشان دهد.
ناشناس : Emojiid = 1
آقا : Emojiid = 2
خانم : Emojiid = 3
CreationDateTime : تاریخ میالدی افزوده شدن مخاطب به سیستم
PersianCreationDateTime : تاریخ شمسی افزوده شدن مخاطب به سیستم
RemainedSecondsToBeValid : ثانیه های باقیمانده برای فعال شدن مخاطب جهت ارسال مجدد پیامک بعد از پیامک عضویت
Prefix : پیشوند مخاطب
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را بازمیگرداند.
Json Code

{
 "ContactDetails": [
 {
 "Id": integer,
  "ContactRelationId": integer,
 "GroupId": integer,
 "GroupName": "string",
 "FirstName": "string",
 "LastName": "string",
 "Mobile": "string",
 "EmojiId": "byte",
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string",
 "RemainedSecondsToBeValid": double,
 "Prefix": "string"
 }
 ],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetContactsFromLastId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

    class PayamakSefid_GetContactsFromLastId {

	/**
	* Get Contacts From LastId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetContactsFromLastIdUrl() {
		return "https://api.sms.ir/users/v1/Contacts/GetContactsFromLastId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Contacts From LastId.
	*
	* @param string $lastId lastId
    * @return string Indicates the Get Contacts From LastId result
	*/
	public function GetContactsFromLastId($lastId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetContactsFromLastIdUrl()."?lastId=".$lastId;
			$GetContactsFromLastId = $this->execute($url, $token);

			$object = json_decode($GetContactsFromLastId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}

try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$lastId = 0;

	$PayamakSefid_GetContactsFromLastId = new PayamakSefid_GetContactsFromLastId($APIKey,$SecretKey);
	$GetContactsFromLastId = $PayamakSefid_GetContactsFromLastId->GetContactsFromLastId($lastId);
	echo "<pre>";
	var_dump($GetContactsFromLastId);

} catch (Exeption $e) {
	echo 'Error GetContactsFromLastId : '.$e->getMessage();
}

?>
                                        
                                    
                                

GETSearchContacts

https://api.sms.ir/users/v1/Contacts/SearchContacts?prefix=xxxx&firstname=xxxxx&lastname=xxxxx&mobile=xxxxx&groupid=0&pageid=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

Contacts : آرایه ای از مخاطبین که از جستجو بازگردانده شده اند.
ContactRelationId :شناسه ارتباطی مخاطب. این شناسه به منظور شناسایی مخاطبین در گروه هایی که عضو هستند کاربرد دارد و با شناسه یکتای مخاطب متفاوت است.
GroupName : نام گروهی که مخاطب در آن عضو است.
Prefix : پیشوند مخاطب
FirstName : نام مخاطب
LastName : نام خانوادگی مخاطب
Mobile : شماره موبایل مخاطب
EmojiId: شناسه اموجی )تصویر فرضی برای کاراکتر مخاطب( که می تواند سه مقدار عددی یک و دو و سه را شامل شود. هنگام فراخوانی اطالعات مخاطب هر شناسه می تواند تصویر کاراکتر مرتبط را نشان دهد.
ناشناس : Emojiid = 1
آقا : Emojiid = 2
خانم : Emojiid = 3
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند
Json Code

{
 "Contacts": [
 {
 "ContactRelationId": integer,
 "GroupName": "string",
 "Prefix": "string",
 "FirstName": "string",
 "LastName": "string",
 "Mobile": "string",
 "EmojiId": "byte"
 }
 ],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                                    
Example Request
SearchContacts
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

   class PayamakSefid_SearchContacts {

	/**
	* Search Contacts Url.
	*
    * @return string Indicates the Url
	*/
	protected function SearchContactsUrl() {
		return "https://api.sms.ir/users/v1/Contacts/SearchContacts";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Search Contacts.
	*
	* @param string $prefix prefix
	* @param string $firstname firstname
	* @param string $lastname lastname
	* @param string $mobile mobile
	* @param string $groupId groupId
	* @param string $pageId pageId
    * @return string Indicates the Search Contacts result
	*/
	public function SearchContacts($prefix,$firstname,$lastname,$mobile,$groupId,$pageId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->SearchContactsUrl()."?prefix=".$prefix."&firstname=".$firstname."&lastname=".$lastname."&mobile=".$mobile."&groupId=".$groupId."&pageId=".$pageId;
			$SearchContacts = $this->execute($url, $token);

			$object = json_decode($SearchContacts);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$prefix = "Mr";
	$firstname = "name";
	$lastname = "family";
	$mobile = 912xxxxxxx;
	$groupid = 0;
	$pageid = 0;

	$PayamakSefid_SearchContacts = new PayamakSefid_SearchContacts($APIKey,$SecretKey);
	$SearchContacts = $PayamakSefid_SearchContacts->SearchContacts($prefix,$firstname,$lastname,$mobile,$groupid,$pageid);
	echo "<pre>";
	var_dump($SearchContacts);

} catch (Exeption $e) {
	echo 'Error SearchContacts : '.$e->getMessage();
}
?>
                                        
                                    
                                

POSTTransferContactsToGroup

https://api.sms.ir/users/v1/Contacts/TransferContactsToGroup
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Body

ContactGroupRelationId (اجباری) : آرایه ای از شناسه مخاطبینی که قصد انتقال به گروه جدید را دارید.
NewGroupId (اجباری) : شناسه گروه جدید برای انتقال مخاطبین.
Json Code

{
 "ContactGroupRelationId": [ integer ],
 "NewGroupId": integer
}


                        
Response

MovedCount : تعداد مخاطبینی که انتقالشان با موفقیت انجام شده است.
DuplicateCount : تعداد مخاطبینی که منتقل نشده اند و در گروه جدید موجود بوده اند.
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
Json Code

{
 "MovedCount": integer,
 "DuplicateCount": integer,
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                                    
Example Request
TransferContactsToGroup
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

  class PayamakSefid_TransferContactsToGroup {

	/**
	* Transfer Contacts To Group Url.
	*
    * @return string Indicates the Url
	*/
	protected function TransferContactsToGroupUrl() {
		return "https://api.sms.ir/users/v1/Contacts/TransferContactsToGroup";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Transfer Contacts To Group.
	*
	* @param string $ContactsGroup Contacts Group
    * @return string Indicates the Transfer Contacts To Group result
	*/
	public function TransferContactsToGroup($ContactsGroup) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->TransferContactsToGroupUrl();
			$TransferContactsToGroup = $this->execute($ContactsGroup, $url, $token);

			$object = json_decode($TransferContactsToGroup);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($postData, $url, $token){

		$postString = json_encode($postData);

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	// Transfer Contacts data
	$TransferContacts = array(
		'ContactGroupRelationId' => array(0,1),
		'NewGroupId' => 0
	);

	$PayamakSefid_TransferContactsToGroup = new PayamakSefid_TransferContactsToGroup($APIKey,$SecretKey);
	$TransferContactsToGroup = $PayamakSefid_TransferContactsToGroup->TransferContactsToGroup($TransferContacts);
	echo "<pre>";
	var_dump($TransferContactsToGroup);

} catch (Exeption $e) {
	echo 'Error TransferContactsToGroup : '.$e->getMessage();
}
?>
                                        
                                    
                                

DraftMessage


POSTAddOrUpdateDraftMessage

https://api.sms.ir/users/v1/DraftMessage/AddOrUpdateDraftMessage
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Body

ContactsDetails :آرایه ای از اطلاعات مخاطبین
Id (اختیاری) : شناسه پیام پیش نویسی که قصد ویرایش آن را دارید. درصورتیکه بخواهید پیش نویس جدید اضافه کنید این پارامتر باید خالی فرستاده شود.
Message (اجباری) : متن پیش نویس برای افزودن و یا ویرایش
Json Code

{
 "Id": integer,
 "Message": "string"
}
                        
Response

DraftMessageDetails : جزئیات پیام پیش نویس ذخیره شده
Message : متن پیام پیش نویس
CreationDateTime :تاریخ میالدی ایجاد پیش نویس
PersianCreationDateTime : تاریخ شمسی ایجاد پیش نویس
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "DraftMessageDetails": [{
 "Message": "string",
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string"
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
AddOrUpdateDraftMessage
                                    
                                    
                                        
<?php
class PayamakSefid_AddOrUpdateDraftMessage {

	/**
	* Add Or Update Draft Message Url.
	*
    * @return string Indicates the Url
	*/
	protected function AddOrUpdateDraftMessageUrl() {
		return "https://api.sms.ir/users/v1/DraftMessage/AddOrUpdateDraftMessage";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Add Or Update Draft Message.
	*
	* @param string $DraftMessage Draft Message
    * @return string Indicates the Add Or Update Draft Message result
	*/
	public function AddOrUpdateDraftMessage($DraftMessage) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->AddOrUpdateDraftMessageUrl();
			$AddOrUpdateDraftMessage = $this->execute($DraftMessage, $url, $token);

			$object = json_decode($AddOrUpdateDraftMessage);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($postData, $url, $token){

		$postString = json_encode($postData);

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}

try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	// Draft Message data
	$DraftMessage = array(
		'Id' => 0,
		'Title' => 'title',
		'Message' => 'message'
	);

	$PayamakSefid_AddOrUpdateDraftMessage = new PayamakSefid_AddOrUpdateDraftMessage($APIKey,$SecretKey);
	$AddOrUpdateDraftMessage = $PayamakSefid_AddOrUpdateDraftMessage->AddOrUpdateDraftMessage($DraftMessage);
	echo "<pre>";
	var_dump($AddOrUpdateDraftMessage);

} catch (Exeption $e) {
	echo 'Error AddOrUpdateDraftMessage : '.$e->getMessage();
}
?>
                                        
                                    
                                

GetDeleteDraftMessage

https://api.sms.ir/users/v1/DraftMessage/DeleteDraftMessage?id=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}


                        
Response

IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
AddOrUpdateDraftMessage
                                    
                                    
                                        
<?php
class PayamakSefid_DeleteDraftMessage {

	/**
	* Delete Draft Message Url.
	*
    * @return string Indicates the Url
	*/
	protected function DeleteDraftMessageUrl() {
		return "https://api.sms.ir/users/v1/DraftMessage/DeleteDraftMessage";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Delete Draft Message.
	*
	* @param string $id id
    * @return string Indicates the Delete Draft Message result
	*/
	public function DeleteDraftMessage($id) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->DeleteDraftMessageUrl()."?id=".$id;
			$DeleteDraftMessage = $this->execute($url, $token);

			$object = json_decode($DeleteDraftMessage);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$id = 0;

	$PayamakSefid_DeleteDraftMessage = new PayamakSefid_DeleteDraftMessage($APIKey,$SecretKey);
	$DeleteDraftMessage = $PayamakSefid_DeleteDraftMessage->DeleteDraftMessage($id);
	echo "<pre>";
	var_dump($DeleteDraftMessage);

} catch (Exeption $e) {
	echo 'Error DeleteDraftMessage : '.$e->getMessage();
}
?>
                                        
                                    
                                

GetGetDraftMessages

https://api.sms.ir/users/v1/DraftMessage/GetDraftMessages
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}


                        
Response

DraftMessageDetails : آرایه ای از پیام های پیش نویس
Message : متن پیام پیش نویس
CreationDateTime : تاریخ میالدی ساخت پیام پیش نویس
PersianCreationDateTime : تاریخ شمسی ساخت پیام پیش نویس
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "DraftMessageDetails": [{
 "Message": "string",
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string"
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetDraftMessages
                                    
                                    
                                        
<?php
    /**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
class PayamakSefid_GetDraftMessages {

	/**
	* Get Draft Messages Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetDraftMessagesUrl() {
		return "https://api.sms.ir/users/v1/DraftMessage/GetDraftMessages";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Draft Messages.
	*
    * @return string Indicates the Get Draft Messages result
	*/
	public function GetDraftMessages() {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetDraftMessagesUrl();
			$GetDraftMessages = $this->execute($url, $token);

			$object = json_decode($GetDraftMessages);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$PayamakSefid_GetDraftMessages = new PayamakSefid_GetDraftMessages($APIKey,$SecretKey);
	$GetDraftMessages = $PayamakSefid_GetDraftMessages->GetDraftMessages();
	echo "<pre>";
	var_dump($GetDraftMessages);

} catch (Exeption $e) {
	echo 'Error GetDraftMessages : '.$e->getMessage();
}
?>
                                        
                                    
                                

GetFrequentlyAskedQuestions


GETGetFrequentlyAskedQuestions

https://api.sms.ir/users/v1/FrequentlyAskedQuestion/GetFrequentlyAskedQuestions
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Response

FrequentlyAskedQuestions : آرایه ای از سواالت متداول سیستم
Question : عنوان سوال مطرح شده
Answer : متن پاسخ سوال متداول
CreationDateTime : زمانی که سوال متداول ایجاد شده است.
IsActive : وضعیت سوال متداول به اینصورت که اگر True باشد یعنی فعال و معتبر است و اگر False باشد یعنی نامعتبر و غیرفعال است.
Priority : اولویت های تعریف شده برای سواالت متداول
PlatformKeyId : شناسه پلت فرمی که سواالت متداول برای آن درنظر گرفته شده است.
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "FrequentlyAskedQuestions": [{
 "Question": "string"
 "Answer": "string",
 "CreationDateTime": "DateTime",
 "IsActive": boolean,
 "Priority": integer,
 "PlatformKeyId": integer
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetFrequentlyAskedQuestions
                                    
                                    
                                        
<?php
 /**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
class PayamakSefid_GetFrequentlyAskedQuestions {

	/**
	* Get Frequently Asked Questions Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetFrequentlyAskedQuestionsUrl() {
		return "https://api.sms.ir/users/v1/FrequentlyAskedQuestion/GetFrequentlyAskedQuestions";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Frequently Asked Questions.
	*
    * @return string Indicates the Get Frequently Asked Questions result
	*/
	public function GetFrequentlyAskedQuestions() {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetFrequentlyAskedQuestionsUrl();
			$GetFrequentlyAskedQuestions = $this->execute($url, $token);

			$object = json_decode($GetFrequentlyAskedQuestions);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$PayamakSefid_GetFrequentlyAskedQuestions = new PayamakSefid_GetFrequentlyAskedQuestions($APIKey,$SecretKey);
	$GetFrequentlyAskedQuestions = $PayamakSefid_GetFrequentlyAskedQuestions->GetFrequentlyAskedQuestions();
	echo "
";
	var_dump($GetFrequentlyAskedQuestions);

} catch (Exeption $e) {
	echo 'Error GetFrequentlyAskedQuestions : '.$e->getMessage();
}

?>
                                        
                                    
                                

Message


GETGetLastSentMessagesByPageId

https://api.sms.ir/users/v1/Message/GetLastSentMessagesByPageId?pageId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Body

ContactsDetails :آرایه ای از اطلاعات مخاطبین
Prefix (اختیاری) : پیشوند اسامی مخاطبین
FirstName (اختیاری) : نام مخاطب
LastName (اختیاری) : نام خانوادگی مخاطب
Mobile (اجباری) : شماره موبایل مخاطب
EmojiId (اختیاری) : شناسه اموجی )تصویر فرضی برای کاراکتر مخاطب( که می تواند سه مقدار عددی یک و دو و سه را شامل شود. هنگام فراخوانی اطالعات مخاطب هر شناسه می تواند تصویر کاراکتر مرتبط را نشان دهد.
ناشناس : Emojiid = 1
آقا : Emojiid = 2
خانم : Emojiid = 3
GroupId (اجباری) : گروه مخاطبی که قصد افزودن مخاطبان به آن را دارید.
Json Code

{
 "ContactsDetails": [
 {
 "Prefix": "string",
 "FirstName": "string",
 "LastName": "string",
 "Mobile": "string",
 "EmojiId": "byte"
 }
],
 "GroupId": integer
}
                        
Response

Messages : آرایه ای از پیامک های دریافتی که درخواست شده اند.
Id : شناسه پیامکی که درخواست ارسال برایش ثبت شده است
BatchKey : کلید رشته ای ارسال پیامک که برای دریافت جزئیات ارسال به کار می رود
SendDateTime : تاریخ میالدی ثبت شده برای ارسال پیامک
PersianSendDateTime : تاریخ شمسی ثبت شده برای ارسال پیامک
DistinctRecipientsCount : تعداد مخاطبین یکتا و معتبر که برای درخواست ارسال ثبت شده اند Message : متن پیامک
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
    "Messages": [{
    "Id": integer,
    "BatchKey": "string",
    "SendDateTime": "DateTime",
    "PersianSendDateTime": "string",
    "DistinctRecipientsCount": integer,
    "Message": "string"
    }],
    "IsSuccessful": boolean,
    "Message": "string",
    "ErrorCode": integer
}
                        
Example Request
GetLastSentMessagesByPageId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
   class PayamakSefid_GetLastSentMessagesByPageId {

	/**
	* Get Last Sent Messages By PageId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetLastSentMessagesByPageIdUrl() {
		return "https://api.sms.ir/users/v1/Message/GetLastSentMessagesByPageId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Last Sent Messages By PageId.
	*
	* @param string $pageId pageId
    * @return string Indicates the Get Contacts By PageId result
	*/
	public function GetLastSentMessagesByPageId($pageId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetLastSentMessagesByPageIdUrl()."?pageId=".$pageId;
			$GetLastSentMessagesByPageId = $this->execute($url, $token);

			$object = json_decode($GetLastSentMessagesByPageId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$pageId = 0;

	$PayamakSefid_GetLastSentMessagesByPageId = new PayamakSefid_GetLastSentMessagesByPageId($APIKey,$SecretKey);
	$GetLastSentMessagesByPageId = $PayamakSefid_GetLastSentMessagesByPageId->GetLastSentMessagesByPageId($pageId);
	echo "<pre>";
	var_dump($GetLastSentMessagesByPageId);

} catch (Exeption $e) {
	echo 'Error GetLastSentMessagesByPageId : '.$e->getMessage();
}
?>
                                        
                                    
                                

GETGetLastSentMessagesFromLastId

https://api.sms.ir/users/v1/Message/GetLastSentMessagesFromLastId?lastId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Response

Messages : آرایه ای از پیامک های دریافتی که درخواست شده اند.
Id : شناسه پیامکی که درخواست ارسال برایش ثبت شده است
BatchKey : کلید رشته ای ارسال پیامک که برای دریافت جزئیات ارسال به کار می رود.
SendDateTime : تاریخ میالدی ثبت شده برای ارسال پیامک
PersianSendDateTime : تاریخ شمسی ثبت شده برای ارسال پیامک
DistinctRecipientsCount : تعداد مخاطبین یکتا و معتبر که برای درخواست ارسال ثبت شده اند
Message : متن پیامک
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "Messages": [{
 "Id": integer,
 "BatchKey": "string",
 "SendDateTime": "DateTime",
 "PersianSendDateTime": "string",
 "DistinctRecipientsCount": integer,
 "Message": "string"
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                                    
Example Request
GetLastSentMessagesFromLastId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
   class PayamakSefid_GetLastSentMessagesFromLastId {

	/**
	* Get Last Sent Messages From LastId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetLastSentMessagesFromLastIdUrl() {
		return "https://api.sms.ir/users/v1/Message/GetLastSentMessagesFromLastId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Last Sent Messages From LastId.
	*
	* @param string $lastId lastId
    * @return string Indicates the Get Last Sent Messages From LastId result
	*/
	public function GetLastSentMessagesFromLastId($lastId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetLastSentMessagesFromLastIdUrl()."?lastId=".$lastId;
			$GetLastSentMessagesFromLastId = $this->execute($url, $token);

			$object = json_decode($GetLastSentMessagesFromLastId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	include_once("Classes/GetLastSentMessagesFromLastId.php");
	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$lastId = 0;

	$PayamakSefid_GetLastSentMessagesFromLastId = new PayamakSefid_GetLastSentMessagesFromLastId($APIKey,$SecretKey);
	$GetLastSentMessagesFromLastId = $PayamakSefid_GetLastSentMessagesFromLastId->GetLastSentMessagesFromLastId($lastId);
	echo "<pre>";
	var_dump($GetLastSentMessagesFromLastId);

} catch (Exeption $e) {
	echo 'Error GetLastSentMessagesFromLastId : '.$e->getMessage();
}
?>
                                        
                                    
                                

GETGetSentMessagesMobileNumbers

https://api.sms.ir/users/v1/Message/GetSentMessagesMobileNumbers?lastId=0&batchKey=xxxxxxx
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Response

Messages : آرایه ای از پیامک های دریافتی که درخواست شده اند.
Id : شناسه پیامکی که درخواست ارسال برایش ثبت شده است
BatchKey : کلید رشته ای ارسال پیامک که برای دریافت جزئیات ارسال به کار می رود
MobileNumber : شماره موبایلی که درخواست ارسال برای آن انجام شده است
SendDateTime : تاریخ میالدی ثبت شده برای ارسال پیامک
PersianSendDateTime : تاریخ شمسی ثبت شده برای ارسال پیامک
DeliveryStatus : وضعیت ارسال به شماره )رسیده به گوشی، رسیده به مخابرات ، نرسیده به گوشی و ...(
SmsMessageBody : متن پیامک
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "Messages": [{
 "Id": integer,
 "BatchKey": "string",
 "MobileNumber": integer,
 "SendDateTime": "DateTime",
 "PersianSendDateTime": "string",
 "DeliveryStatus": "string",
 "SmsMessageBody": "string"
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetSentMessagesMobileNumbers
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
    class PayamakSefid_GetSentMessagesMobileNumbers {

	/**
	* Get Sent Messages Mobile Numbers Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetSentMessagesMobileNumbersUrl() {
		return "https://api.sms.ir/users/v1/Message/GetSentMessagesMobileNumbers";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Sent Messages Mobile Numbers.
	*
	* @param string $lastId lastId
	* @param string $batchKey batchKey
    * @return string Indicates the Get Sent Messages Mobile Numbers result
	*/
	public function GetSentMessagesMobileNumbers($lastId,$batchKey) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetSentMessagesMobileNumbersUrl()."?lastId=".$lastId."&batchKey=".$batchKey;
			$GetSentMessagesMobileNumbers = $this->execute($url, $token);

			$object = json_decode($GetSentMessagesMobileNumbers);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
  try {

	date_default_timezone_set("Asia/Tehran");

	include_once("Classes/GetSentMessagesMobileNumbers.php");
	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$lastId = 0;
	$batchKey = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx';

	$PayamakSefid_GetSentMessagesMobileNumbers = new PayamakSefid_GetSentMessagesMobileNumbers($APIKey,$SecretKey);
	$GetSentMessagesMobileNumbers = $PayamakSefid_GetSentMessagesMobileNumbers->GetSentMessagesMobileNumbers($lastId,$batchKey);
	echo "<pre>";
	var_dump($GetSentMessagesMobileNumbers);

} catch (Exeption $e) {
	echo 'Error GetSentMessagesMobileNumbers : '.$e->getMessage();
}
?>                                            
                                    
                                

POSTGroupContactsDistinctCount

https://api.sms.ir/users/v1/Message/GroupContactsDistinctCount
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Body

ContactsGroupIds (اجباری) : شناسه گروه های مخاطبین در سیستم. )این پارامتر باید ارسال شود، درصورتیکه نیاز به گروه ندارید این پارامتر را با مقدار آرایه خالی بفرستید.(
ContactRelationIds (اجباری) : شناسه ارتباطی مخاطب در گروه های عضو شده. )این پارامتر باید ارسال شود، درصورتیکه مخاطبین تکی ندارید این پارامتر را با مقدار آرایه خالی بفرستید.(
Json Code

{
 "ContactsGroupIds": [integer],
 "ContactRelationIds": [integer]
}
                        
Response

Count : تعداد یکتا و معتبر از شماره هایی که درخواست شده اند
InvalidCount : تعداد شماره های تکراری یا نا معتبر از شماره هایی که درخواست شده اند
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "Count": integer,
 "InvalidCount": integer,
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}

                                    
Example Request
GroupContactsDistinctCount
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
   class PayamakSefid_GroupContactsDistinctCount {

	/**
	* Group Contacts Distinct Count Url.
	*
    * @return string Indicates the Url
	*/
	protected function GroupContactsDistinctCountUrl() {
		return "https://api.sms.ir/users/v1/Message/GroupContactsDistinctCount";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Group Contacts Distinct Count.
	*
	* @param string $ContactsGroupData Contacts Group Data
    * @return string Indicates the Group Contacts Distinct Count result
	*/
	public function GroupContactsDistinctCount($ContactsGroupData) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GroupContactsDistinctCountUrl();
			$GroupContactsDistinctCount = $this->execute($ContactsGroupData, $url, $token);

			$object = json_decode($GroupContactsDistinctCount);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($postData, $url, $token){

		$postString = json_encode($postData);

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	// Contacts Group data
	$ContactsGroupData = array(
		'ContactsGroupIds' => array(0,1),
		'ContactRelationIds' => array(0,1)
	);

	$PayamakSefid_GroupContactsDistinctCount = new PayamakSefid_GroupContactsDistinctCount($APIKey,$SecretKey);
	$GroupContactsDistinctCount = $PayamakSefid_GroupContactsDistinctCount->GroupContactsDistinctCount($ContactsGroupData);
	echo "<pre>";
	var_dump($GroupContactsDistinctCount);

} catch (Exeption $e) {
	echo 'Error GroupContactsDistinctCount : '.$e->getMessage();
}

?>
                                        
                                    
                                

POSTAddContacts

https://api.sms.ir/users/v1/Message/Send
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Body

Message (اجباری) : پیامی که برای ارسال پیامک باید فرستاده شود
contactGroupIds (اجباری) : آرایه ای از شناسه گروه هایی که باید برای مخاطبانشان ارسال پیامک انجام شود. )این پارامتر باید ارسال شود، درصورتیکه ارسال به گروه ندارید این پارامتر را با مقدار آرایه خالی بفرستید.(
ContactRelationIds (اجباری) : آرایه ای از شناسه ارتباطی مخاطب در گروه های عضو شده. )این پارامتر باید ارسال شود، درصورتیکه ارسال به مخاطبین تکی ندارید این پارامتر را با مقدار آرایه خالی بفرستید.(
CanContinueInCaseOfError (اختیاری) : امکان ادامه پیدا کردن فرایند ارسال در مواردی که با خطا مواجه می شود. True به این مفهوم است که می تواند ادامه پیدا کند و False به این مفهوم است که هنگام بروز خطا فرایند متوقف می شود.
Json Code

{
 "Message": "string",
 "ContactGroupIds": [integer],
 "ContactRelationIds": [integer],
 "CanContinueInCaseOfError": boolean
}


                        
Response

MessageId : شناسه پیامکی که درخواست ارسال برایش ثبت شده است
BatchKey : کلید رشته ای ارسال پیامک که برای دریافت جزئیات ارسال به کار می رود
Ids : آرایه ای ازشماره هایی که برایشان درخواست ارسال پیامک ثبت شده است
ID : شناسه ارسال پیامک برای یک شماره
MobileNumber : شماره موبایل ثبت شده برای درخواست ارسال پیامک
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "MessageId": integer,
"BatchKey": "string",
 "Ids": [{
 "ID": integer,
 "MobileNumber": "string"
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}

                        
Example Request
Send
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
   class PayamakSefid_Send {

	/**
	* Send Url.
	*
    * @return string Indicates the Url
	*/
	protected function SendUrl() {
		return "https://api.sms.ir/users/v1/Message/Send";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Send.
	*
	* @param string $SendData Send Data
    * @return string Indicates the Send result
	*/
	public function Send($SendData) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->SendUrl();
			$Send = $this->execute($SendData, $url, $token);

			$object = json_decode($Send);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($postData, $url, $token){

		$postString = json_encode($postData);

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	// Send data
	$SendData = array(
		'Message' => 'test message',
		'ContactGroupIds' => array(0,1),
		'ContactRelationIds' => array(0,1),
		'CanContinueInCaseOfError' => true
	);

	$PayamakSefid_Send = new PayamakSefid_Send($APIKey,$SecretKey);
	$Send = $PayamakSefid_Send->Send($SendData);
	echo "<pre>";
	var_dump($Send);

} catch (Exeption $e) {
	echo 'Error Send : '.$e->getMessage();
}
?>
                                        
                                    
                                

getSendByMobileNumbers

https://api.sms.ir/users/v1/Message/SendByMobileNumbers
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
  "Message": "Text",
  "MobileNumbers": [
    Mobile
  ],
  "CanContinueInCaseOfError": true
}
                        
Example Request
SendByMobileNumbers
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
    class PayamakSefid_SendByMobileNumbers {

	/**
	* Send By Mobile Numbers Url.
	*
    * @return string Indicates the Url
	*/
	protected function SendByMobileNumbersUrl() {
		return "https://api.sms.ir/users/v1/Message/SendByMobileNumbers";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Send By Mobile Numbers.
	*
	* @param string $SendData Send Data
    * @return string Indicates the Send By Mobile Numbers result
	*/
	public function SendByMobileNumbers($SendData) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->SendByMobileNumbersUrl();
			$SendByMobileNumbers = $this->execute($SendData, $url, $token);

			$object = json_decode($SendByMobileNumbers);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                                            'Content-Type: application/json'
                                            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($postData, $url, $token){

		$postString = json_encode($postData);

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
											'Content-Type: application/json',
											'x-sms-ir-secure-token: '.$token
											));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
    try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	// Send data
	$SendData = array(
		'Message' => 'test message',
		'MobileNumbers' => array(0,1),
		'CanContinueInCaseOfError' => true
	);

	$PayamakSefid_SendByMobileNumbers = new PayamakSefid_SendByMobileNumbers($APIKey,$SecretKey);
	$SendByMobileNumbers = $PayamakSefid_SendByMobileNumbers->SendByMobileNumbers($SendData);
	echo "<pre>";
	var_dump($SendByMobileNumbers);

} catch (Exeption $e) {
	echo 'Error SendByMobileNumbers : '.$e->getMessage();
}
?>
                                        
                                    
                                

Notification


GETGetUserNotificationFromLastId

https://api.sms.ir/users/v1/Notification/GetUserNotificationFromLastId?lastId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Response

ListUserNotification : آرایه ای از لیست اطالعیه های بازگشتی که به کاربر ارسال شده اند
Id : شناسه اطالعیه در سیستم
Message : متن اطالعیه ارسال شده
Title : عناون اطالعیه ارسال شده
CreationDateTime : زمان ساخت اطالعیه توسط ادمین سیستم
StartDateTime : تاریخ شروع فعال بودن اطالعیه و نمایش آن
EndDateTime : تاریخ پایان نمایش اطالعیه و فعال بودن آن در سیستم
IsRead : نمایش وضعیت اطالعیه که در صورت True بودن یعنی خوانده شده است و درصورتیکه False باشد خوانده نشده است
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "ListUserNotification": [{
 "Id": integer,
 "Message": "string",
 "Title": "string",
 "CreationDateTime": "DateTime",
 "StartDateTime": " DateTime ",
 "EndDateTime": " DateTime ",
 "IsRead": boolean
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetUserNotificationFromLastId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
   class PayamakSefid_GetUserNotificationFromLastId {

	/**
	* Get User Notification From LastId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetUserNotificationFromLastIdUrl() {
		return "https://api.sms.ir/users/v1/Notification/GetUserNotificationFromLastId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get User Notification From LastId.
	*
	* @param string $lastId lastId
    * @return string Indicates the Get User Notification From LastId result
	*/
	public function GetUserNotificationFromLastId($lastId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetUserNotificationFromLastIdUrl()."?lastId=".$lastId;
			$GetUserNotificationFromLastId = $this->execute($url, $token);

			$object = json_decode($GetUserNotificationFromLastId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
 try {

	date_default_timezone_set("Asia/Tehran");

	include_once("Classes/GetUserNotificationFromLastId.php");
	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$lastId = 0;

	$PayamakSefid_GetUserNotificationFromLastId = new PayamakSefid_GetUserNotificationFromLastId($APIKey,$SecretKey);
	$GetUserNotificationFromLastId = $PayamakSefid_GetUserNotificationFromLastId->GetUserNotificationFromLastId($lastId);
	echo "<pre>";
	var_dump($GetUserNotificationFromLastId);

} catch (Exeption $e) {
	echo 'Error GetUserNotificationFromLastId : '.$e->getMessage();
}
?>
                                        
                                    
                                

GETGetUserNotificationFromPageId

https://api.sms.ir/users/v1/Notification/GetUserNotificationFromPageId?pageId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
Json Code

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

ListUserNotification : لیست اطالعیه های بازگشتی از درخواست
Id : شناسه اطالعیه در سیستم
Message : متن اطالعیه ارسال شده
Title : عناون اطالعیه ارسال شده
CreationDateTime : زمان ساخت اطالعیه توسط ادمین سیستم
StartDateTime : تاریخ شروع فعال بودن اطالعیه و نمایش آن
EndDateTime : تاریخ پایان نمایش اطالعیه و فعال بودن آن در سیستم
IsRead : نمایش وضعیت اطالعیه که در صورت True بودن یعنی خوانده شده است و درصورتیکه False باشد خوانده نشده است
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "ListUserNotification": [{
 "Id": integer,
 "Message": "string",
 "Title": "string",
 "CreationDateTime": "DateTime",
 "StartDateTime": " DateTime ",
 "EndDateTime": " DateTime ",
 "IsRead": boolean
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetBankTransactionsByPageId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetUserNotificationFromPageId {

	/**
	* Get User Notification From PageId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetUserNotificationFromPageIdUrl() {
		return "https://api.sms.ir/users/v1/Notification/GetUserNotificationFromPageId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get User Notification From PageId.
	*
	* @param string $pageId pageId
    * @return string Indicates the Get User Notification From PageId result
	*/
	public function GetUserNotificationFromPageId($pageId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetUserNotificationFromPageIdUrl()."?pageId=".$pageId;
			$GetUserNotificationFromPageId = $this->execute($url, $token);

			$object = json_decode($GetUserNotificationFromPageId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$pageId = 0;

	$PayamakSefid_GetUserNotificationFromPageId = new PayamakSefid_GetUserNotificationFromPageId($APIKey,$SecretKey);
	$GetUserNotificationFromPageId = $PayamakSefid_GetUserNotificationFromPageId->GetUserNotificationFromPageId($pageId);
	echo "<pre>";
	var_dump($GetUserNotificationFromPageId);

} catch (Exeption $e) {
	echo 'Error GetUserNotificationFromPageId : '.$e->getMessage();
}

?>

                                        
                                    
                                

GETUpdateNotificationStatus

https://api.sms.ir/users/v1/Notification/UpdateNotificationStatus?id=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
Json Code

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
UpdateNotificationStatus
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_UpdateNotificationStatus {

	/**
	* Update Notification Status Url.
	*
    * @return string Indicates the Url
	*/
	protected function UpdateNotificationStatusUrl() {
		return "https://api.sms.ir/users/v1/Notification/UpdateNotificationStatus";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Update Notification Status.
	*
	* @param string $id id
    * @return string Indicates the Update Notification Status result
	*/
	public function UpdateNotificationStatus($id) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->UpdateNotificationStatusUrl()."?id=".$id;
			$UpdateNotificationStatus = $this->execute($url, $token);

			$object = json_decode($UpdateNotificationStatus);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$id = 1;

	$PayamakSefid_UpdateNotificationStatus = new PayamakSefid_UpdateNotificationStatus($APIKey,$SecretKey);
	$UpdateNotificationStatus = $PayamakSefid_UpdateNotificationStatus->UpdateNotificationStatus($id);
	echo "
";
	var_dump($UpdateNotificationStatus);

} catch (Exeption $e) {
	echo 'Error UpdateNotificationStatus : '.$e->getMessage();
}
?>

                                            
                                    
                                

Contacts


GETGetOccasionalMessageCategory

https://api.sms.ir/users/v1/OccasionalMessage/GetOccasionalMessageCategory
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Response

OccasionalMessageCategory : آرایه ای از لیست دسته بندی های پیامک های مناسبتی
Id : شناسه دسته بندی پیامک های مناسبتی
Name : عنوان دسته بندی پیامک های مناسبتی
MessageCount : تعداد پیامک های مناسبتی که در این دسته بندی وجود دارند
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "OccasionalMessageCategory": [{
 "Id": integer,
 "Name": "string",
 "MessageCount": integer
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetOccasionalMessageCategory
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

    class PayamakSefid_GetOccasionalMessageCategory {

	/**
	* Get Occasional Message Category Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetOccasionalMessageCategoryUrl() {
		return "https://api.sms.ir/users/v1/OccasionalMessage/GetOccasionalMessageCategory";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Occasional Message Category.
	*
    * @return string Indicates the Get Occasional Message Category result
	*/
	public function GetOccasionalMessageCategory() {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetOccasionalMessageCategoryUrl();
			$GetOccasionalMessageCategory = $this->execute($url, $token);

			$object = json_decode($GetOccasionalMessageCategory);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
    try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$PayamakSefid_GetOccasionalMessageCategory = new PayamakSefid_GetOccasionalMessageCategory($APIKey,$SecretKey);
	$GetOccasionalMessageCategory = $PayamakSefid_GetOccasionalMessageCategory->GetOccasionalMessageCategory();
	echo "<pre>";
	var_dump($GetOccasionalMessageCategory);

} catch (Exeption $e) {
	echo 'Error GetOccasionalMessageCategory : '.$e->getMessage();
}
?>
                                        
                                    
                                

GETGetOccasionalMessages

https://api.sms.ir/users/v1/OccasionalMessage/GetOccasionalMessages?occasionalMessageCategoryId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
Json Code

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

OccasionalMessages : آرایه ای از پیامک های مناسبتی که در گروه موردنظر هستند.
Message : متن پیامک مناسبتی
OccasionalMessageCategoryId : شناسه دسته بندی پیامک مناسبتی
CreationDateTime : تاریخ ایجاد پیامک مناسبتی
ExpirationDateTime : زمان انقضای پیامک مناسبتی
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "OccasionalMessages": [{
 "Message": "string",
 "OccasionalMessageCategoryId": integer,
 "CreationDateTime": "DateTime",
 "ExpirationDateTime": " DateTime "
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}

                        
Example Request
GetOccasionalMessagesDiv
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetOccasionalMessages {

	/**
	* Get Occasional Messages Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetOccasionalMessagesUrl() {
		return "https://api.sms.ir/users/v1/OccasionalMessage/GetOccasionalMessages";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Occasional Messages.
	*
	* @param string $occasionalMessageCategoryId occasional Message Category Id
    * @return string Indicates the Get Occasional Messages result
	*/
	public function GetOccasionalMessages($occasionalMessageCategoryId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetOccasionalMessagesUrl()."?occasionalMessageCategoryId=".$occasionalMessageCategoryId;
			$GetOccasionalMessages = $this->execute($url, $token);

			$object = json_decode($GetOccasionalMessages);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$occasionalMessageCategoryId = 0;

	$PayamakSefid_GetOccasionalMessages = new PayamakSefid_GetOccasionalMessages($APIKey,$SecretKey);
	$GetOccasionalMessages = $PayamakSefid_GetOccasionalMessages->GetOccasionalMessages($occasionalMessageCategoryId);
	echo "
";
	var_dump($GetOccasionalMessages);

} catch (Exeption $e) {
	echo 'Error GetOccasionalMessages : '.$e->getMessage();
}
?>

                                        
                                    
                                

Ticket


GETCloseTicket

https://api.sms.ir/users/v1/Ticket/CloseTicket?ticketId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Response

IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
CloseTicket
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
class PayamakSefid_CloseTicket {

	/**
	* Close Ticket Url.
	*
    * @return string Indicates the Url
	*/
	protected function CloseTicketUrl() {
		return "https://api.sms.ir/users/v1/Ticket/CloseTicket";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Close Ticket.
	*
	* @param string $ticketId ticket Id
    * @return string Indicates the Close Ticket result
	*/
	public function CloseTicket($ticketId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->CloseTicketUrl()."?ticketId=".$ticketId;
			$CloseTicket = $this->execute($url, $token);

			$object = json_decode($CloseTicket);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$ticketId = 0;

	$PayamakSefid_CloseTicket = new PayamakSefid_CloseTicket($APIKey,$SecretKey);
	$CloseTicket = $PayamakSefid_CloseTicket->CloseTicket($ticketId);
	echo "<pre>";
	var_dump($CloseTicket);

} catch (Exeption $e) {
	echo 'Error CloseTicket : '.$e->getMessage();
}
?>
                                        
                                    
                                

GETGetTicketById

https://api.sms.ir/users/v1/Ticket/GetTicketById?ticketId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
Json Code

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

Subject : موضوع تیکت اصلی
Body : متن تیکت اصلی
DownloadUrl : آدرس لینک فایل الصاقی به تیکت اصلی در صورت وجود داشتن
PersianCreationDateTime : تاریخ شمسی ایجاد تیکت اصلی
Status : وضعیت تیکت
PriorityId : شناسه اولویت تیکت
DepartmentId : شناسه دپارتمانی که تیکت به آن واگذار شده است
TicketReplyDetails : آرایه ای از پاسخ های ارسالی به تیکت
TicketReplyId : شناسه پاسخ به تیکت
Subject : عنوان تیکت پاسخ
Body : متن تیکت پاسخ
DownloadUrl : آدرس لینک فایل الصاقی به تیکت پاسخ در صورت وجود داشتن
CreationDateTime : تاریخ ایجاد تیکت پاسخ
PersianCreationDateTime : تاریخ شمسی ایجاد تیکت پاسخ
IsAdminReply : درصورتیکه مقدار True برگرداند یعنی این پاسخ ادمین است و اگر False باشد ادمین پاسخ نداده است.
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "Subject": "string",
 "Body": "string",
 "DownloadUrl": "string",
 "PersianCreationDateTime": "string",
 "Status": integer,
 "PriorityId": integer,
 "DepartmentId": integer,
 "TicketReplyDetails": [{
 "TicketReplyId": integer,
 "Subject": "string",
 "Body": "string",
 "DownloadUrl": "string",
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string",
 "IsAdminReply": boolean
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetTicketById
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetTicketById {

	/**
	* Get Ticket By Id Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetTicketByIdUrl() {
		return "https://api.sms.ir/users/v1/Ticket/GetTicketById";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Ticket By Id.
	*
	* @param string $ticketId ticket Id
    * @return string Indicates the Get Ticket By Id result
	*/
	public function GetTicketById($ticketId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetTicketByIdUrl()."?ticketId=".$ticketId;
			$GetTicketById = $this->execute($url, $token);

			$object = json_decode($GetTicketById);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$ticketId = 0;

	$PayamakSefid_GetTicketById = new PayamakSefid_GetTicketById($APIKey,$SecretKey);
	$GetTicketById = $PayamakSefid_GetTicketById->GetTicketById($ticketId);
	echo "<pre>";
	var_dump($GetTicketById);

} catch (Exeption $e) {
	echo 'Error GetTicketById : '.$e->getMessage();
}

?>

                                        
                                    
                                

GETGetTicketPrioritiesAndDepartments

https://api.sms.ir/users/v1/Ticket/GetTicketPrioritiesAndDepartments
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
Json Code

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

TicketPriorities : آرایه ای از لیست اولویت های تعریف شده در سیستم برای تیکت ها
Id : شناسه اولویت
Name : عنوان اولویت
Departments : آرایه ای از لیست دپارتمان های تعریف شده در سیستم برای تیکت ها
Id : شناسه دپارتمان
Title : عنوان دپارتمان
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "TicketPriorities": [{
 "Id": "string",
 "Name": "string"
 }],
 "Departments": [{
 "Id": "string",
 "Title": "string"
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}

                        
Example Request
GetTicketPrioritiesAndDepartments
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetTicketPrioritiesAndDepartments {

	/**
	* Get Ticket Priorities And Departments Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetTicketPrioritiesAndDepartmentsUrl() {
		return "https://api.sms.ir/users/v1/Ticket/GetTicketPrioritiesAndDepartments";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Ticket Priorities And Departments.
	*
    * @return string Indicates the Get Ticket Priorities And Departments result
	*/
	public function GetTicketPrioritiesAndDepartments() {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetTicketPrioritiesAndDepartmentsUrl();
			$GetTicketPrioritiesAndDepartments = $this->execute($url, $token);

			$object = json_decode($GetTicketPrioritiesAndDepartments);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                    'Content-Type: application/json',
                    'x-sms-ir-secure-token: '.$token
                    ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
    try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$PayamakSefid_GetTicketPrioritiesAndDepartments = new PayamakSefid_GetTicketPrioritiesAndDepartments($APIKey,$SecretKey);
	$GetTicketPrioritiesAndDepartments = $PayamakSefid_GetTicketPrioritiesAndDepartments->GetTicketPrioritiesAndDepartments();
	echo "
";
	var_dump($GetTicketPrioritiesAndDepartments);

} catch (Exeption $e) {
	echo 'Error GetTicketPrioritiesAndDepartments : '.$e->getMessage();
}

?>

                                            
                                    
                                

GETGetTicketStatus

https://api.sms.ir/users/v1/Ticket/GetTicketStatus
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
Json Code

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}


                        
Response

TicketStatus : آرایه ای از لیست وضعیت تیکت های تعریف شده در سیستم
Id : شناسه وضعیت تیکت
Status : وضعیت تیکت
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "TicketStatus": [{
 "Id": integer,
 "Status": "string"
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}

                        
Example Request
GetTicketStatus
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetTicketStatus {

	/**
	* Get Ticket Status Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetTicketStatusUrl() {
		return "https://api.sms.ir/users/v1/Ticket/GetTicketStatus";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Ticket Status.
	*
    * @return string Indicates the Get Get Ticket Status result
	*/
	public function GetTicketStatus() {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetTicketStatusUrl();
			$GetTicketStatus = $this->execute($url, $token);

			$object = json_decode($GetTicketStatus);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}

try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$PayamakSefid_GetTicketStatus = new PayamakSefid_GetTicketStatus($APIKey,$SecretKey);
	$GetTicketStatus = $PayamakSefid_GetTicketStatus->GetTicketStatus();
	echo "<pre>";
	var_dump($GetTicketStatus);

} catch (Exeption $e) {
	echo 'Error GetTicketStatus : '.$e->getMessage();
}
?>


                                        
                                    
                                

GETGetTicketsByPageId

https://api.sms.ir/users/v1/Ticket/GetTicketsByPageId?pageId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}

                        
Response

TicketDetails : آرایه ای از لیست تیکت های کاربر
Id : شناسه تیکت
TicketStatusId : شناسه وضعیت فعلی تیکت
Subject : موضوع یا عنوان تیکت
Body : متن تیکت
PriorityId : شناسه اولویت تیکت
DepartmentId : شناسه دپارتمانی که تیکت به آن واگذار شده است
DownloadUrl : آدرس فایل الصاقی به تیکت
CreationDateTime : تاریخ میالدی ایجاد تیکت
PersianCreationDateTime : تاریخ شمسی ایجاد تیکت
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند
BODY

{
 "TicketDetails": [{
 "Id": integer,
 "TicketStatusId": integer,
 "Subject": "string",
 "Body": "string",
 "PriorityId": integer,
 "DepartmentId": integer,
 "DownloadUrl": "string",
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string"
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}
                        
Example Request
GetTicketsByPageId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */

class PayamakSefid_GetTicketsByPageId {

	/**
	* Get Tickets By PageId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetTicketsByPageIdUrl() {
		return "https://api.sms.ir/users/v1/Ticket/GetTicketsByPageId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Tickets By PageId.
	*
	* @param string $pageId pageId
    * @return string Indicates the Get Tickets By PageId result
	*/
	public function GetTicketsByPageId($pageId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetTicketsByPageIdUrl()."?pageId=".$pageId;
			$GetTicketsByPageId = $this->execute($url, $token);

			$object = json_decode($GetTicketsByPageId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$pageId = 0;

	$PayamakSefid_GetTicketsByPageId = new PayamakSefid_GetTicketsByPageId($APIKey,$SecretKey);
	$GetTicketsByPageId = $PayamakSefid_GetTicketsByPageId->GetTicketsByPageId($pageId);
	echo "<pre>";
	var_dump($GetTicketsByPageId);

} catch (Exeption $e) {
	echo 'Error GetTicketsByPageId : '.$e->getMessage();
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$pageId = 0;

	$PayamakSefid_GetTicketsByPageId = new PayamakSefid_GetTicketsByPageId($APIKey,$SecretKey);
	$GetTicketsByPageId = $PayamakSefid_GetTicketsByPageId->GetTicketsByPageId($pageId);
	echo "
";
	var_dump($GetTicketsByPageId);

} catch (Exeption $e) {
	echo 'Error GetTicketsByPageId : '.$e->getMessage();
}
?>

                                        
                                    
                                

GETGetTicketsFromLastId

https://api.sms.ir/users/v1/Ticket/GetTicketsFromLastId?lastId=0
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}


                        
Response

TicketDetails : آرایه ای از لیست تیکت های کاربر
Id : شناسه تیکت
Subject : موضوع یا عنوان تیکت
Body : متن تیکت
DownloadUrl : آدرس فایل الصاقی به تیکت
CreationDateTime : تاریخ میالدی ایجاد تیکت
PersianCreationDateTime : تاریخ شمسی ایجاد تیکت
PriorityId : شناسه اولویت تیکت
DepartmentId : شناسه دپارتمانی که تیکت به آن واگذار شده است
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "TicketDetails": [{
 "Id": integer,
 "Subject": "string",
 "Body": "string",
 "DownloadUrl": "string",
 "CreationDateTime": "DateTime",
 "PersianCreationDateTime": "string",
 "PriorityId": integer,
 "DepartmentId": integer
 }],
 "IsSuccessful": boolean,
 "Message": "string",
 "ErrorCode": integer
}


                        
Example Request
GetTicketsFromLastId
                                    
                                    
                                        
<?php
/**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
class PayamakSefid_GetTicketsFromLastId {

	/**
	* Get Tickets From LastId Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetTicketsFromLastIdUrl() {
		return "https://api.sms.ir/users/v1/Ticket/GetTicketsFromLastId";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get Tickets From LastId.
	*
	* @param string $lastId lastId
    * @return string Indicates the Get Tickets From LastId result
	*/
	public function GetTicketsFromLastId($lastId) {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetTicketsFromLastIdUrl()."?lastId=".$lastId;
			$GetTicketsFromLastId = $this->execute($url, $token);

			$object = json_decode($GetTicketsFromLastId);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$lastId = 0;

	$PayamakSefid_GetTicketsFromLastId = new PayamakSefid_GetTicketsFromLastId($APIKey,$SecretKey);
	$GetTicketsFromLastId = $PayamakSefid_GetTicketsFromLastId->GetTicketsFromLastId($lastId);
	echo "<pre>";
	var_dump($GetTicketsFromLastId);

} catch (Exeption $e) {
	echo 'Error GetTicketsFromLastId : '.$e->getMessage();
}

?>
                                        
                                    
                                

Token


GETGetToken

https://api.sms.ir/users/v1/Token/GetToken
HEADERS

Content-Type
application/json
BODY

{"json/application" => "Type-Content {
                        
Body

UserApiKey (اجباری) : کلید وب سرویس
SecretKey (اختیاری) : کد امنیتی
Json Code

{
"UserApiKey": "string",
 "SecretKey": "string"
}
                        
Response

TokenKey : رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورت True و یا False می باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
" TokenKey": "string,"
" IsSuccessful": boolean,
" Message": "string,"
" ErrorCode": integer
}

                        
Example Request
GetToken
                                    
                                    
                                        
<?php
 /**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
class PayamakSefid_GetToken {

	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	public function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);
		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = $response->Message;
			}
		}

		return $resp;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';
	$PayamakSefid_GetToken = new PayamakSefid_GetToken($APIKey,$SecretKey);
	$GetToken = $PayamakSefid_GetToken->GetToken();
	echo "<pre>";
	var_dump($GetToken);

} catch (Exeption $e) {
	echo 'Error GetToken : '.$e->getMessage();
}
?>
                                        
                                    
                                

WhiteSms


GETGetUserInfo

https://api.sms.ir/users/v1/WhiteSms/GetUserInfo
HEADERS

Content-Type
application/json
x-sms-ir-secure-token
رشته توکن امنیتی که برای ارسال درخواست ها مورد استفاده قرار می گیرد.
BODY

{
"Content-Type" => "application/json",
"x-sms-ir-secure-token" => "NWRCgNU0hBV1lY ..."
}
                        
Response

FirstName : نام کاربر
LastName : نام خانوادگی کاربر
BusinessName : نام تجاری ثبت شده برای کاربر
PersianExpirationDateTime : تاریخ شمسی برای انقضای حساب کاربری
IsExpired : نمایش وضعیت کاربری درصورتیکه True باشد یعنی کاربری منقضی شده و اگر False باشد یعنی منقضی نشده است
IsTrial : نمایش وضعیت کاربری درصورتیکه True باشد یعنی کاربر نسخه آزمایشی است و اگر False باشد یعنی دارای پلن زماندار می باشد.
SentCount : تعداد پیامک هایی که کاربر ارسال کرده است
ExpirationDateTime : تاریخ میالدی برای انقضای حساب کاربری
MembershipKeyword : کلیدواژه عضویت کاربر که برای مخاطبین مورد استفاده قرار میگیرد
CancelMembershipKeyword : کلیدواژه لغوعضویت کاربر که برای مخاطبین مورد استفاده قرار میگیرد
Credit : میزان اعتبار کاربر
HasUploadedNationalCard : نمایش وضعیت آپلود مدارک کاربر درصورتیکه True باشد آپلود شده است و اگر False باشد آپلود نکرده است
MobileNumber : شماره موبایل کاربر
ReagentCode : کد معرف کاربر )برای هر کاربری یکتاست(
ExpirationLeftDays : تعداد روزهای باقیمانده برای انقضای کاربری
IsSuccessful : بعنوان موفقیت آمیز بودن یا نبودن درخواست بازگردانده می شود و به صورتTrue و یا Falseمی باشد.
Message : پیامی که در پاسخ درخواست ارسال می شود را نمایش می دهد.
ErrorCode : کد خطایی که ممکن است در درخواست اتفاق بیفتد را باز می گرداند.
BODY

{
 "FirstName": "string",
 "LastName": "string",
 "BusinessName": "string",
 "PersianExpirationDateTime": "string",
 "IsExpired": boolean,
 "IsTrial": boolean,
 "SentCount": integer,
 "ExpirationDateTime": "DateTime",
 "MembershipKeyword": "string",
 "CancelMembershipKeyword": "string",
 "Credit": integer,
 "HasUploadedNationalCard": boolean,
 "MobileNumber": "string",
 "ReagentCode": "string",

                        
Example Request
GetUserInfo
                                    
                                    
                                        
<?php
 /**
 * @author Pejman Kheyri
 * @author Pejman Kheyri 
 * @copyright © 2018 The Ide Pardazan (ipe.ir) PHP Group. All rights reserved.
 * @link https://web.sms.ir/ Documentation of PayamakSefid RESTful API PHP sample.
 * @version 1.0
 */
class PayamakSefid_GetUserInfo {

	/**
	* Get User Info Url.
	*
    * @return string Indicates the Url
	*/
	protected function GetUserInfoUrl() {
		return "https://api.sms.ir/users/v1/WhiteSms/GetUserInfo";
	}
	/**
	* gets Api Token Url.
	*
    * @return string Indicates the Url
	*/
	protected function getApiTokenUrl(){
		return "https://api.sms.ir/users/v1/Token/GetToken";
	}

	/**
	* gets config parameters for sending request.
	*
	* @param string $APIKey API Key
	* @param string $SecretKey Secret Key
    * @return void
	*/
    public function __construct($APIKey,$SecretKey){
		$this->APIKey = $APIKey;
		$this->SecretKey = $SecretKey;
    }
	/**
	* Get User Info.
	*
    * @return string Indicates the Get User Info result
	*/
	public function GetUserInfo() {

		$token = $this->GetToken($this->APIKey, $this->SecretKey);
		if($token != false){
			$url = $this->GetUserInfoUrl();
			$GetUserInfo = $this->execute($url, $token);

			$object = json_decode($GetUserInfo);
			if(is_object($object)){
				$result = $object;
			} else {
				$result = 'Error Getting Object.';
			}

		} else {
			$result = 'Error Getting Token Key.';
		}
		return $result;
	}

	/**
	* gets token key for all web service requests.
	*
    * @return string Indicates the token key
	*/
	private function GetToken(){
		$postData = array(
			'UserApiKey' => $this->APIKey,
			'SecretKey' => $this->SecretKey
		);
		$postString = json_encode($postData);
		$ch = curl_init($this->getApiTokenUrl());
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json'
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_POST, count($postString));
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

		$result = curl_exec($ch);
		curl_close($ch);

		$response = json_decode($result);

		if(is_object($response)){
			if($response->IsSuccessful == true){
				@$resp = $response->TokenKey;
			} else {
				$resp = false;
			}
		}

		return $resp;
	}

	/**
	* executes the main method.
	*
	* @param string $url url
	* @param string $token token string
    * @return string Indicates the curl execute result
	*/
	private function execute($url, $token){

		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'x-sms-ir-secure-token: '.$token
            ));
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_VERBOSE, true);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
}
try {

	date_default_timezone_set("Asia/Tehran");

	// your PayamakSefid panel configuration
	$APIKey = 'enter your api key ...';
	$SecretKey = 'enter your secret key ...';

	$PayamakSefid_GetUserInfo = new PayamakSefid_GetUserInfo($APIKey,$SecretKey);
	$GetUserInfo = $PayamakSefid_GetUserInfo->GetUserInfo();
	echo "<pre>";
	var_dump($GetUserInfo);

} catch (Exeption $e) {
	echo 'Error GetUserInfo : '.$e->getMessage();
}

?>