/ru/servis-sms-rassylok/sms-api/

ePochta SMS Sender API (v.3.0)


 

 

Уникальное предложение!
Отправляйте смс через API по цене 30 копеек с первой смс

 

API версии 3.0 предназначен для интеграции опытными программистами. Если у вас возникают проблемы, рекомендуем использовать API версии 2.0, которое значительно проще в интеграции, но обладает меньшим функционалом.

Пример использования API на языке программирования PHP. Подробно

ePochta SMS API (v. 3.0)

Базовые положения

Для активации смс шлюза необходимо в панели управления сервисом ePochta SMS в «Настройках» (https://myatompark.com/members/sms/profile.php) активировать использование апи 3.0.
Для этого в закладке «ePochta SMS», в пункте «Активировать API 3.0» установите «Да».

Внимание! В отличии от XML интерфейса, в версии апи 3.0 тестовый режим включается передачей параметра test=1. Примите во внимание, что данный параметр, если он присутствует, также используется в формировании контрольной суммы.

Принцип работы с API

Методы API вызываются посредством запроса к URL:
https://api.atompark.com/sms/3.0/METHOD

Параметры можно передавать методами GET, POST.

Пример GET-запроса:

https://api.atompark.com/sms/3.0/METHOD?key=public_key&sum=CONTROL_SUM&arg1=ARG_1&argN=ARG_N

где:

METHOD *название метода
KEY *публичный ключ доступа к API
SUM*контрольная сумма запроса
ARG_1 … ARG_Nиндивидуальные аргументы метода

*Далее все обязательные параметры обозначаются с помощью *
Все параметры должны иметь кодировку UTF-8. Рекомендуется передавать все параметры методом POST, чтобы он не сохранялся в логах прокси-серверов.

Для подсчета контрольной суммы необходимо:

  1. отсортировать все входящие ключи
  2. сделать конкатенация значений по этим ключам
  3. сделать конкатенацию полученного значения с приватным ключом
  4. взять MD5 от полученного результата

 

Полученный от сервера ответ передается в формате JSON.

Задать публичный и приватный ключи можно на странице настроек сервиса.

Пример подсчета суммы для метода addAddressbook на языке PHP.

$params ['version'] ="3.0";
$params ['action'] = "addAddressbook";
$params [‘key’] = $openKey; //you open key
$params [‘name’] = “Test addressbook”;
$params [‘description] = “Test description”;
ksort ($params);
$sum='';
foreach ($params as $k=>$v) 
$sum.=$v;
$sum .= $privateKey; //your private key
$control_sum =  md5($sum);

Пример ответа при успешном вызове метода

Если вызов метода выполнен успешно, то в ответе сервера будет присутствовать поле «result», включающее аргументы, характерные этому методу. Поля «error» в таком ответе не будет. Допускается наличие поля «warnings», содержимое которого состоит из массива объектов-предупреждений, указанных в одной строке поля «warning».

Пример результата успешного выполнения метода:

{
   "result":{
      "id":18628,
      "name":"TEST NAME ADRESSBOOK",
      "phones":0,
      "exceptions":0,
      "creationdate":"2012-04-01 18:44:36",
   }
}

Пример ответа с ошибкой

Если в ответе сервера присутствует только поле «error», в котором указан числовой код ошибки – это является показателем неуспешного вызова метода. При этом в объекте ответа полностью отсутствует поле «result».

{
   "error":"Wrong public key.",
   "code":"-1",
   "result":"false"
}

Для каждого метода есть свой код ошибки. Ознакомиться с перечнем всех кодов ошибки можно по ссылке.

Методы

Операции с адресной книгой.

Адресная книга представляет собой объект состоящий из:

[id] — Идетификатор

[name] => Имя

[phones] => Количество телефонов

[exceptions] => Количество телефонов в исключении

[creationdate] => Дата создания

[description] => Описание

Создать адресную книгу

Используется метод addAddressbook().

Аргументы:

name*Имя адресной книги
descriptionПримечание для адресной книги

Пример запроса:
URL:https://api.atompark.com/sms/3.0/addAddressbook?key=public_key&sum=control_sum&name=BOOK_NAME&description=BOOK_DESCRIPTION

Ответ:

{
   "result":{
      "addressbook_id":21620
   }
}

В ответе будет возвращен addressbook_id — уникальный идентификатор новой адресной книги.

 

Удалить адресную книгу

Используется метод delAddressbook().

Аргументы:

idAddressBook*Идентификатор удаляемой адресной книги

Пример запроса:

URL:https://api.atompark.com/sms/3.0/delAddressbook?key=public_key&sum=control_sum&idAddressBook=21619

Ответ:

В случае удачного выполнения объект result будет содержать «successful»:true.

{
   "result":{
      "successful":true
   }
}

В случае ошибки:

При удалении книги которая не существует сервер вернёт

{
   "error":"No addressbook",
   "code":"202",
   "result":"false"
}

 

Редактировать адресную книгу

Используется метод editAddressbook().

Аргументы:

idAddressBook*Идентификатор редактирование адресной книги
newName*Имя книги
newDescr*Описание книги

Пример запроса:

URL: https://api.atompark.com/sms/3.0/editAddressbook?key=public_key&sum=control_sum&idAddressBook=21619&newName=name&newDescr=descr

Ответ:

{
   "result":{
      "successful":true
   }
}

 

Получить адресную книгу

Используется метод getAddressbook().

Аргументы:

idAddressBookИдентификатор адресной книги
fromВернуть объекты, начиная с позиции from
offsetСколько вернуть объектов

Возврат адресной книги возможен:

  • с указанием идентификатора

Примеры запроса:

URL: https://api.atompark.com/sms/3.0/getAddressbook?key=public_key&sum=control_sum&idAddressBook=2161

Ответ:

{
   "result":{
      "id":2161,
      "name":"super book",
      "phones":25,
      "exceptions":0,
      "creationdate":"2012-04-01 18:44:36",
      "description":null
   }
}
  • без указания идентификатора, в этом случае будут возвращены все книги

Примеры запроса:

URL: https://api.atompark.com/sms/3.0/getAddressbook?key=public_key&sum=control_sum

  • без указания идентификатора, но с указанием смещений, с такими параметрами будут возвращены книги в соответствии заданного смещения.

Примеры запроса:

URL: https://api.atompark.com/sms/3.0/getAddressbook?key=public_key&sum=control_sum&from=3&offset=3

Ответ:

{
   "result":{
      "count":55,
      "fields":[
         "id",
         "name",
         "phone",
         "date",
         "description"
      ],
      "data":[
         [
            "21597",
            "new book",
            "250",
            "2012-01-17 14:57:37",
            ""
         ],
         [
            "18684",
            "testNAME",
            "0",
            "2012-02-06 15:08:16",
            ""
         ],
         [
            "18661",
            "testNAME2",
            "4",
            "2012-03-27 22:45:47",
            ""
         ]
      ]
   }
}

 

Поиск адресной книги

Используется метод searchAddressBook().

Аргументы:

searchFieldsОбъект в формате json для поиска. Поиск возможен по следующим полям:name,phones,date. В поиске можно использовать операции: like,=,>,>=,<,<=.Пример:

		{
		   "name":{
			  "operation":"like",
			  "value":"test%"
		   }
		}
fromВернуть объекты, начиная с позиции from
offsetСколько вернуть объектов

Пример запроса:

URL:
https://api.atompark.com/api/sm
s/3.0/searchAddressBook?
key=public_key&sum=control_sum&from=10&offset=3&searchFields=
{
«name»
:
{
«operation»
:
«like»
,
«value»
:
«test%»
} }

Ответ:

{
   "result":{
      "count":50,
      "fields":[
         "id",
         "name",
         "phone",
         "date",
         "description"
      ],
      "data":[
         [
            "18629",
            "test2",
            "0",
            "2012-01-05 16:34:15",
            "tstdescr"
         ],
         [
            "18684",
            "testNAME",
            "0",
            "2012-02-06 15:08:16",
            ""
         ],
         [
            "18661",
            "testNAME",
            "4",
            "2012-01-27 10:45:47",
            ""
         ]
      ]
   }
}

 

Клонирование адресной книги

Используется метод cloneaddressbook().

Метод используется для создания копии адресной книги с новым идентификатором

Аргументы:

idAddressBook*Идентификаторы адресной книги, копию которой надо создать.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/cloneaddressbook?key=public_key&sum=control_sum&idAddressBook=147

Ответ:

{
   "result":{
      "successful":true,
	  "idAddressBook":36107
   }
}

 

Операции с телефонами.

Телефон представляет собой объект состоящий из:

[id]=> Идентификатор телефона

[addressbook]=>Идентификатор адресной книги

[phone]=>Телефон

[normalphone]=>Телефон приведенный к международному стандарту *

[variables]=> Переменные для персонализации, разделенные «;» **

[status]=>Статус телефонного номера

* международный стандарт

** например: Test1;Test2;Test3

 

Добавить телефон в адресную книгу

Используется метод addPhoneToAddressBook().

Аргументы:

idAddressBook*Идентификатор адресной книги
phone*Телефон
variablesПеременная для персонализации

Пример запроса:

URL: https://api.atompark.com/sms/3.0/addPhoneToAddressBook?key=public_key&sum=control_sum&idAddressBook=2432&phone=380638962555&variables=test

Ответ:

{
   "result":{
      "phone_id":24552302
   }
}

В ответе будет возвращен phone_id — уникальный идентификатор телефонного номера.

 

Добавить телефоны в адресную книгу

Используется метод addPhoneToAddressBook().

Аргументы:

idAddressBook*Идентификатор адресной книги
data*Список телефонов с персонализацией в JSON формате. Структура:[[«phone1″,»variables1″],[«phone2″],[«phone3″,»variables3″]].

Пример запроса:

URL: https://api.atompark.com/sms/3.0/addPhoneToAddressBook?key=public_key&sum=control_sum&idAddressBook=2432&data=[[«38063169xxx1″,»test1″],[«38063169xxx2″,»test2″],[«38063169xxx3″,»test3″],[«38063169xxx3″,»test4″],[«38063169xxx4″],[«38063169xxx5″,»test5″]]

Ответ:

{
   "result":{
      "successful":true
   }
}

 

Получить адресную книгу

Используется метод getPhoneFromAddressBook().

Аргументы:

idAddressBookИдентификатор адресной книги
idPhoneИдентификатор телефона
phoneТелефон
fromВернуть объекты от from
offsetСколько вернуть объектов

Все аргументы: являются необязательными.

Пример запроса:

URL:
https://api.atompark.com/sms/3.0/getAddressbook?key=public_key&sum=control_sum&idAddressBook=2161

Ответ:

{
   "result":{
      "count":2,
      "fields":[
         "id",
         "phone",
         "normalPhone",
         "variables",
         "status",
         "code"
      ],
      "data":[
         [
            "24552301",
            "380632587852",
            "380632587852",
            "test variables",
            "0",
            ""
         ],
         [
            "24552302",
            "380632587853",
            "380632587853",
            "test variables",
            "0",
            ""
         ]
      ]
   }
}

Пример запроса:

URL: https://api.atompark.com/sms/3.0/getPhoneFromAddressBook?key=public_key&sum=control_sum&idPhone=24552301

Ответ:

{
   "result":{
      "id":24552301,
      "addressbook":18628,
      "phone":"380632587852",
      "normalphone":"380632587852",
      "variables":"test variables",
      "status":0
   }
}

 

Удаление телефона из адресной книги.

Используется метод delPhoneFromAddressBook().

Аргументы:

idAddressBook*Идентификатор адресной книги
idPhone*Идентификатор телефона

Для удаления всех телефонов с адресной книги необходимо указать идентификатор адресной книги, а для удаления одного телефона необходимо указать идентификатор телефона.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/
delPhoneFromAddressBook
?key=public_key&sum=control_sum&idPhone
=
24552301

Ответ:

{
   "result":{
      "successful":true
   }
}

 

Удалить группу телефонов из адресной книги

Используется метод delphonefromaddressbookgroup().

Аргументы:

idPhones*Идентификаторы телефонных номеров, разделенные запятыми.Например: 456,523,985,412

Пример запроса:

URL: https://api.atompark.com/sms/3.0/delphonefromaddressbookgroup?key=public_key&sum=control_sum&idPhones=456,523,985,412

Ответ:

{
   "result":{
      "successful":true
   }
}

 

Редактирование телефонов в адресной книги.

Используется метод editPhone().

Аргументы:

idPhone*Идентификатор телефона
phone*Номер телефона
variables*Переменная для персонализации

Необходимо указать новый телефон (в международном формате) и новую строку переменных.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/editPhone?key=public_key&sum=control_sum&idPhone=24552301&phone=380657412569&variables=test

Ответ:

{
   "result":{
      "successful":true
   }
}

 

Поиск телефонов в адресной книге

Используется метод searchPhones().

Аргументы:

searchFieldsОбъект в формате json для поиска. Поиск возможен по следующим полям:idAddressBook,phones,normalPhone, variables, status. В поиске можно использовать операции: like,=,>,>=,<,<=.Пример:

{
   "phone":{
      "operation":"like",
      "value":"38063%"
   }
}
fromВернуть объекты от from
offsetСколько вернуть объектов

Пример запроса:

URL: https://api.atompark.com/sms/3.0/searchPhones?key=public_key&sum=control_sum&searchFields={ «variables» : { «operation» : «like» , «value» : «иван%» } }

Ответ:

{
   "result":{
      "count":1,
      "fields":[
         "id",
         "idAddressBook",
         "phone",
         "normalPhone",
         "variables",
         "status",
         "code",
         "maid"
      ],
      "data":[
         [
            "24552295",
            "21597",
            "9999999999",
            "9999999999",
            "Иван Васильевич",
            "0",
            "",
            "0"
         ]
      ]
   }
}

 

Операции с исключениями.

Исключение представляет собой объект состоящий из:

[id] => Идентификатор

[phone] =>Телефон

[added] => Дата добавления

[comment] => Описание

 

Добавить телефон в исключения

Используется метод addPhoneToExceptions().

Аргументы:

idPhoneИдентификатор телефона
phoneТелефон
reasonПричина добавления

При добавлении телефона в исключения обязательно необходимо передать идентификатор телефона или сам телефон.

Пример запроса:

URL:
https://api.atompark.com/sms/3.0/addPhoneToExceptions?key=public_key&sum=control_sum&idPhone=24552291&reason=test_add

Ответ:

{
   "result":{
      "exseption_id":24552302
   }
}

В ответе будет возвращен exseption_id — уникальный идентификатор исключения.

 

Удалить телефон с исключений

Используется метод delPhoneFromExceptions().

Аргументы:

idPhoneИдентификатор телефона
phoneТелефон
idExceptionИдентификатор исключения

Для удаления телефона с исключения необходимо передать один из выше перечисленных параметров.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/delPhoneFromExceptions?key=public_key&sum=control_sum&idPhone=24552291

Ответ:

{
   "result":{
      "successful":true
   }
}

 

Редактировать телефон в исключениях

Используется метод editExceptions().

Аргументы:

idException*Идентификатор исключения
reason*Причина

Пример запроса:

URL:
https://api.atompark.com/sms/3.0/delPhoneFromExceptions?key=public_key&sum=control_sum&idPhone=24552291

Ответ:

{
   "result":{
      "successful":true
   }
}

 

Получить объект исключения

Используется метод getException().

Аргументы:

idExceptionИдентификатор исключения
phoneТелефон
idAddresbookИдентификатор адресной книги
fromВернуть объекты от from
offsetСколько вернуть объектов

Пример запроса:

URL:
https://api.atompark.com/sms/3.0/delPhoneFromExceptions?key=public_key&sum=control_sum&idPhone=24552291

Ответ:

{
   "result":{
      "id":181042,
      "phone":"380692587852",
      "added":"2012-04-04 10:55:08",
      "comment":"testREASON_PHONE"
   }
}

Пример запроса:

URL:https://api.atompark.com/sms/3.0/
getException
?key=public_key&sum=control_sum&
from=1&offset=2

Ответ:

{
   "result":{
      "count":6,
      "fields":[
         "id",
         "phone",
         "added",
         "comment"
      ],
      "data":[
         [
            "181038",
            "99999999999",
            "2012-03-12 10:44:31",
            "testREAS!!!"
         ],
         [
            "181042",
            "88888888888",
            "2012-04-04 10:55:08",
            "testREASON_PHONE"
         ]
      ]
   }
}

 

Поиск исключения

Используется метод searchPhonesInExceptions().

Аргументы:

searchFieldsОбъект в формате json для поиска. Поиск возможен по следующим полям: id, phone, date, descr. В поиске можно использовать операции: like,=,>,>=,<,<=.Пример

{
   "descr":{
      "operation":"like",
      "value":"testR%"
   }
}
fromВернуть объекты от from
offsetСколько вернуть объектов

Пример запроса:

URL: https://api.atompark.com/sms/3.0/searchPhones?key=public_key&sum=control_sum&searchFields={ «variables» : { «operation» : «like» , «value» : «иван%» } }

Ответ:

{
   "result":{
      "count":6,
      "fields":[
         "id",
         "phone",
         "added",
         "comment"
      ],
      "data":[
         [
            "181041",
            "91234561",
            "2012-04-04 10:11:40",
            "testREASON_PHONE"
         ],
         [
            "181038",
            "74999404711",
            "2012-03-12 10:44:31",
            "testREASasdON!!!"
         ]
      ]
   }
}

 

Проверка баланса

Используется метод getUserBalance().

Аргументы:

currencyВалюта. Доступные валюты: ‘USD’,’GBP’,’UAH’,’RUB’,’EUR’.

По умолчанию, баланс отображается в выбранной валюте в личном кабинете.

Баланс представляет собой объект:

«currency» -Валюта.

«balance_currency» — Баланс в выбранной валюте.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/getUserBalance?key=public_key&sum=control_sum&currency=USD

Ответ:

{
   "result":{
      "currency":"USD",
      "balance_currency":2.5
   }
}

 

Регистрация имени отправителя

Используется метод registerSender().

Аргументы:

nameОтправитель. Не более 14 цифр для цифрового, не более 11 символов для текстового.
countryСтрана, в которой необходимо зарегистрировать имя. Для регистрации доступны страны:MD,UA.

Пример запроса:

URL:
https://api.atompark.com/sms/3.0/registerSender?key=public_key&sum=control_sum&name=qwerty&country=UA

Ответ:

{
   "name_id":748,
   "status":0
}

В ответе будет возвращён статус в поле «status»:

0 – на модерации

1 — одобрено

2 — отклонено

 

Получить объект имени

Используется метод getSenderStatus().

Аргументы:

idNameИдентификатор имени
nameИмя
countryСтрана
fromВернуть объекты, начиная с позиции from
offsetСколько вернуть объектов

Для получения объекта необходимо передать идентификатор имени или передать имя и страну. Для получения всех объектов нужно указать только смещение.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/getSenderStatus
?key=public_key&sum=control_sum&
idName
=
7
47

или

URL:
https://api.atompark.com/sms/3.0/getSenderStatus?key=public_key&sum=control_sum&name=qwerty&country=ua

Ответ:

{
   "result":{
      "id":747,
      "name":"qwerty",
      "status":"0",
      "country":"UA"
   }
}

URL:
https://api.atompark.com/sms/3.0/getSenderStatus?key=public_key&sum=control_sum&from=10&offset=2

Ответ:

{
   "result":{
      "count":661,
      "fields":[
         "id",
         "country",
         "name",
         "status",
         "description"
      ],
      "data":[
         [
            "11",
            "UA",
            "test",
            "1",
            ""
         ],
         [
            "12",
            "UA",
            "test1",
            "1",
            ""
         ]
      ]
   }
}

 

Операции с рассылками.

 

Создать рассылку

Используется метод createCampaign()

Аргументы:

senderИдентификатор отправителя
textТекст сообщения
list_idИдентификатор адресной книги
datetimeДля планировки рассылки на заданное время
batchДля рассылки по частям – количество смс в 1й отправке
batchintervalДля рассылки по частям – интервал между отправками
sms_lifetimeВремя жизни смс (0 = максимум)
control_phoneКонтрольный номер телефона
userappИдентификатор приложения
typeДля России возможно задать тип рассылки параметром type.Типы рассылок:

ТипОписание
2отправка смс через прямые подключения к операторам (разрешены только альфа имена)
3отправка смс через каналы сторонних операторов (не прямые каналы). В большинстве случаев, заданное альфа имя подменяется на заданный вами цифровой номер
asenderальтернативный отправитель смс

Параметр datetime используется, если рассылку надо отправить не в текущее время, а запланировать. Для моментальной отправки необходимо передать пустой параметр. Пример формата даты при передаче параметра – 2012-05-01 00:20:00

Параметры batch и batchinterval используются, если необходимо рассылку разослать не за один раз, а частями. Если рассылку планируется разослать за одну итерацию, данные параметры следует передавать со значением 0.

Опциональный параметр control_phone задается в случае, если требуется контроль качества доставки на указанный номер телефона. Задается в международном виде.

Дополнительный параметр userapp можно использовать для указания источника рассылки. Если вы хотите знать, сколько сообщений было отправлено через ваше приложение/модуль/сервис — укажите его название в этом параметре, статистика будет доступна по запросу.

ВНИМАНИЕ! Этот параметр не участвует в формировании контрольной суммы.
Параметр имеет смысл передавать для функций создания рассылки, т.е. для:

createcampaign

sendsms

sendsmsgroup

Пример запроса:

URL: https://api.atompark.com/sms/3.0/createCampaign?key=public_key&sum=control_sum&sender=Info&text=Testing%20SMS&list_id=1234&datetime=&batch=0&batchinterval=0&sms_lifetime=0&controlnumber=

Ответ:

{
"result":{
"id":1853173,
"price":403.44
}
}

Где id – это идентификатор созданной кампании, price – цена рассылки кампании в валюте, установленной в настройках пользователя.

 

Послать сообщение на произвольный телефон

Используется метод sendSMS()

Аргументы:

senderИдентификатор отправителя
textТекст сообщения
phoneНомер получателя
datetimeДля планировки рассылки на заданное время
sms_lifetimeВремя жизни смс (0 = максимум, 1, 6, 12, 24 часа)
typeДля России возможно задать тип рассылки параметром type.Типы рассылок:

ТипОписание
2отправка смс через прямые подключения к операторам (разрешены только альфа имена)
3отправка смс через каналы сторонних операторов (не прямые каналы). В большинстве случаев, заданное альфа имя подменяется на заданный вами цифровой номер
asenderальтернативный отправитель смс

Параметр datetime используется, если рассылку надо отправить не в текущее время, а запланировать. Для моментальной отправки необходимо передать пустой параметр. Пример формата даты при передаче параметра – 2012-05-01 00:20:00

Пример запроса:

URL:
https://api.atompark.com/sms/3.0/sendSMS?key=public_key&sum=control_sum&sender=Info&text=Testing%20SMS&phone=380972920383&datetime=&sms_lifetime=0

Ответ:

{
"result":{
"id":1853174,
"price":0.13
}
}

Где id – это идентификатор созданной кампании, price – цена рассылки кампании в валюте, установленной в настройках пользователя.

 

Отправка сообщений группе получателей

Используется метод sendsmsgroup().

Аргументы:

sender*идентификатор отправителя.
text*текст e-mail сообщения.
phones*телефоны. Передаются в виде JSON строки в виде [«Номер телефона», «Переменная»].Структура: ‘[[«3806316923xx»,»Sergey»],[«3806316923xx»,»test»],[«3806785214xx»],[«3806785214xx»]]’.
datetime*Дата и время отправки.
sms_lifetime *Время жизни смс сообщения.
typeДля России возможно задать тип рассылки параметром type.Типы рассылок:

ТипОписание
2отправка смс через прямые подклюения к операторам (разрешены только альфа имена)
3отправка смс через каналы сторонних операторов (не прямые каналы). В большинстве случаев, заданное альфа имя подменяется на заданный вами цифровой номер
asenderальтернативный отправитель смс

Пример запроса:

URL: https://api.atompark.com/sms/3.0/sendsmsgroup?key=public_key&sum=control_sum&sender=senderid&text=text&datetime=2013-01-19 00:00:00&sms_lifetime=0&phones=[[«3806316923xx»,»Sergey»],[«3806316923xx»,»test»],[«3806785214xx»],[«3806785214xx»]]

Ответ:

{
   "result":{
      "id":9097982,
	  "price":0.5592,
	  "currency":"UAH"
   }
}

 

Получить информацию о рассылке

Используется метод getCampaignInfo()

Аргументы:

id*Идентификатор кампании, созданной при помощи sendSMS() или createCampaign ()

Пример запроса:

URL: https://api.atompark.com/sms/3.0/getCampaignInfo?key=public_key&sum=control_sum&id=128891

Ответ:

{
"result":{
"sent":1,
"delivered":1,
"not_delivered":0,
"price":0.13,
"status":3
}
}

Где:

sent – отправлено смс

delivered – доставлено смс

not_delivered – недоставлено смс

price – стоимость рассылки

status – состояние рассылки

Переменная status может принимать следующие значения:

0

В очереди отправки

1

Недостаточно денег для рассылки

2

В процессе рассылки

3

Отправлено

4

Нет правильных номеров получателей

5

Частично отправлено

6

Спам

7

Недействительное имя отправителя

8

Пауза

9

Запланирована

10

Ожидает модерации

 

Получить информацию о статусах смс рассылки

Используется метод getCampaignDeliveryStats()

Аргументы:

id*Идентификатор кампании, созданной при помощи sendSMS() или createCampaign ()
datefrom*Необязательный параметр, в случае его указания будут взяты статусы, которые были обновлены после datefrom

Пример запроса:

URL: https://api.atompark.com/sms/3.0/getCampaignDeliveryStats?key=public_key&sum=control_sum&id=128891

Ответ:

 
{
"result":{
"phone":[
"380972920383"
],
"sentdate":[
"0000-00-00 00:00:00"
],
"donedate":[
"0000-00-00 00:00:00"
],
"status":[
"0"
]
}
}

Где:

phone – массив телефонов

sentdate – массив времен отправки

donedate – массив времен установления финального статуса

status – массив состояния смс.

Переменные в status могут принимать следующие значения:

0

В очереди отправки

SENT

Отправлено

DELIVERED

Доставлено

NOT_DELIVERED

Не доставлено

INVALID_PHONE_NUMBER

Неверный номер

SPAM

Спам

Если поле sentdate содержит значение «0000-00-00 00:00:00″, значит, смс еще в очереди отправки. Так же, если donedate содержит «0000-00-00 00:00:00″, значит, финальный статус еще не получен от оператора

 

Отменить рассылку

Используется метод cancelCampaign()

Аргументы:

id*Идентификатор кампании, созданной при помощи sendSMS() или createCampaign ()

Отменить рассылку можно в том случае, если еще не началась ее отправка.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/cancelCampaign?key=public_key&sum=control_sum&id=128891

Ответ:

{
"result":{
"successful":1
}
}

 

Удалить рассылку

Используется метод deleteCampaign()

Аргументы:

idИдентификатор кампании, созданной при помощи sendSMS() или createCampaign ()

Пример запроса:

URL: https://api.atompark.com/sms/3.0/deleteCampaign?key=public_key&sum=control_sum&id=128891

Ответ:

{
"result":{
"successful":1
}
}

Если рассылка уже была удалена, данный запрос вернет ошибку. Удаляет рассылку вне зависимости от текущего статуса.

 

Проверить стоимость рассылки по заданному сообщению и списку

Используется метод checkCampaignPrice()

Аргументы:

senderИдентификатор отправителя
textТекст сообщения
list_idИдентификатор адресной книги
typeДля России возможно задать тип рассылки параметром type.Типы рассылок:

ТипОписание
2отправка смс через прямые подключения к операторам (разрешены только альфа имена)
3отправка смс через каналы сторонних операторов (не прямые каналы). В большинстве случаев, заданное альфа имя подменяется на заданный вами цифровой номер
asenderальтернативный отправитель смс

Пример запроса:

URL: https://api.atompark.com/sms/3.0/checkCampaignPrice?key=public_key&sum=control_sum&sender=Info&text=Testing%20SMS&list_id=1234

Ответ:

{
"result":{
"price":1210.32
}
}

 

Получение стоимости отправки

Используется метод checkCampaignPriceGroup().

Аргументы:

sender*Идентификатор отправителя.
text*текст e-mail сообщения.
phones*телефоны. Передаются в виде JSON строки в виде [«Номер телефона», «Переменная»].Структура: ‘[[«3806316923xx»,»Sergey»],[«3806316923xx»,»test»],[«3806785214xx»],[«3806785214xx»]]’.
typeДля России возможно задать тип рассылки параметром type.Типы рассылок:

ТипОписание
2отправка смс через прямые подключения к операторам (разрешены только альфа имена)
3отправка смс через каналы сторонних операторов (не прямые каналы). В большинстве случаев, заданное альфа имя подменяется на заданный вами цифровой номер
asenderальтернативный отправитель смс

Пример запроса:

URL: https://api.atompark.com/sms/3.0/checkCampaignPriceGroup?key=public_key&sum=control_sum&sender=senderid&text=text&phones=[[«3806316923xx»,»Sergey»],[«3806316923xx»,»test»],[«3806785214xx»],[«3806785214xx»]]

Ответ:

{
   "result":{
      "price":0.5592,
	  "currency":"UAH"
   }
}

 

Получить список кампаний

Используется метод getCampaignList()

Аргументы отсутствуют.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/getCampaignList?key=public_key&sum=control_sum

Ответ:

{
"result":{
	"id": [
			"10012",
			"10013"
			],
"from": [
"Sender1",
"Sender2"
],
 "body": [
"Text of SMS1",
"Text of SMS2"
],
 "status" : [
3,
3
]
}
}

Поле status имеет такое же значение, как и в таблице для функции getCampaignInfo()

 

Получение статусов состояния сообщений по кампаниям

Используется метод getcampaigndeliverystatsgroup().

Аргументы:

id*Идентификаторы кампаний, разделенные запятыми.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/getcampaigndeliverystatsgroup?key=public_key&sum=control_sum&id=754,751

Ответ:

{
   "result":{
      "phone":["3806316923xx","3806316923xx"],
	  "sentdate":["0000-00-00 00:00:00","0000-00-00 00:00:00"],
	  "donedate":["0000-00-00 00:00:00","0000-00-00 00:00:00"],
	  "status":["0","0"],"id":[97659179,97659180]
   }
}

 

Получение полных статусов по кампаниям

Используется метод gettaskinfo().

Аргументы:

taskIds*Идентификаторы кампаний, разделенные запятыми.

Пример запроса:

URL: https://api.atompark.com/sms/3.0/gettaskinfo?key=public_key&sum=control_sum&taskIds=97659003,97659005

Ответ:

{
   "result":[
   {
      "id":97659003,
	  "phone":"79503702408",
	  "country":0,
	  "parts":"1",
	  "sentdate":"2012-12-07 10:14:29"
	  "donedate":"0000-00-00 00:00:00",
	  "price":0.123,
	  "status":"0",
	  "variable":"",
	  "currency":"UAH"
   }
   {
	  "id":97659005,
      "phone":"79503703937"
	  "country":0,
	  "parts":"1"
	  "sentdate":"2012-12-07 10:14:29"
	  "donedate":"0000-00-00 00:00:00"
	  "price":0.123,
	  "status":"0",
	  "variable":"",
	  "currency":"UAH"
	}
	]
}

Пример использования на РНР

 

 

Приятный в пользовании сервис, удобен. Радуют цены! Читать далее »
Евгений Панчук
Внедрили ePochta SMS для оповещения клиентов о перебитых ставках на аукционе. Проблем при интеграции сервиса в сайт не возникло. Все работает. Планируем расширить функционал на основе ePochta SMS - верификация платежных контактов и т.д. Присматриваемся к другим программам и сервисам ePochta. Читать далее »
Вячеслав Ташкинов, администратор сайта
сайт Japanlot.ru (доставка товаров из Японии)
Попробуйте ePochta SMS бесплатно уже сегодня!

 

Активируйте свой аккаунт и получите 10 бесплатных СМС

Нажмите кнопку "Скачать" и затем "Сохранить" в диалоговом окне. Загрузка произойдет автоматически