Нужна помощь?
Задайте вопрос специалисту технической поддержки
Для активации смс шлюза необходимо в общих настройках сервиса ePochta SMS на закладке API
активировать
использование API 3.0 (в пункте «Активировать API 3.0» установите «Да»).
Внимание! В версии API 3.0 тестовый режим включается передачей параметра test=1. Примите во
внимание, что
данный параметр, если он присутствует, также используется в формировании контрольной суммы.
Методы API вызываются посредством запроса к URL:
http://atompark.com/api/sms/3.0/METHOD
Параметры можно передавать методами GET, POST.
Пример GET-запроса:
http://api.myatompark.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, чтобы он не
сохранялся в логах прокси-серверов.
Для подсчета контрольной суммы необходимо:
Полученный от сервера ответ передается в формате JSON.
Задать публичный и приватный ключи можно на странице настроек сервиса.
Пример подсчета суммы для метода addAddressbook на языке PHP.
1
2
3
4
5
6
7
8
9
10
11
|
$params ['version'] ="3.0";
$params ['action'] = "addAddressbook";
$params ['key'] = $openKey; //you open
$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”.
Пример результата успешного выполнения метода:
1
2
3
4
5
6
7
8
9
|
{
"result":{
"id":18628,
"name":"TEST NAME ADRESSBOOK",
"phones":0,
"exceptions":0,
"creationdate":"2012-04-01 18:44:36",
}
}
|
Если в ответе сервера присутствует только поле “error”, в котором указан числовой код ошибки — это является
показателем неуспешного вызова метода. При этом в объекте ответа полностью отсутствует поле “result”.
1
2
3
4
5
|
{
"error":"Wrong public key.",
"code":"-1",
"result":"false"
}
|
Для каждого метода есть свой код ошибки. Ознакомиться с перечнем всех кодов ошибки можно по ссылке.
Адресная книга представляет собой объект состоящий из:
[id] — Идетификатор
[name] => Имя
[phones] => Количество телефонов
[exceptions] => Количество телефонов в исключении
[creationdate] => Дата создания
[description] => Описание
Создать адресную книгу
Используется метод addAddressbook().
Аргументы:
Название |
Значение |
name* |
Имя адресной книги |
description |
Примечание для адресной книги |
Пример запроса: URL: http://api.myatompark.com/sms/3.0/addAddressbook?key=public_key&sum=control_sum&name=BOOK_NAME&description=BOOK_DESCRIPTION
Ответ:
1
2
3
4
5
|
{
"result":{
"addressbook_id":21620
}
}
|
В ответе будет возвращен addressbook_id — уникальный идентификатор новой адресной книги.
Удалить адресную книгу
Используется метод delAddressbook().
Аргументы:
Название |
Значение |
idAddressBook* |
Идентификатор удаляемой адресной книги |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/delAddressbook?key=public_key&sum=control_sum&idAddressBook=21619
Ответ:
В случае удачного выполнения объект result будет содержать “successful“:true.
1
2
3
4
5
|
{
"result":{
"successful":true
}
}
|
В случае ошибки:
При удалении книги которая не существует сервер вернёт
1
2
3
4
5
|
{
"error":"No addressbook",
"code":"202",
"result":"false"
}
|
Редактировать адресную книгу
Используется метод editAddressbook().
Аргументы:
Название |
Значение |
idAddressBook* |
Идентификатор редактирование адресной книги |
newName* |
Имя книги |
newDescr* |
Описание книги |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/editAddressbook?key=public_key&sum=control_sum&idAddressBook=21619&newName=name&newDescr=descr
Ответ:
1
2
3
4
5
|
{
"result":{
"successful":true
}
}
|
Получить адресную книгу
Используется метод getAddressbook().
Аргументы:
Название |
Значение |
idAddressBook* |
Идентификатор адресной книги |
from |
Вернуть объекты, начиная с позиции from |
offset |
Сколько вернуть объектов |
Возврат адресной книги возможен:
с указанием идентификатора
Примеры запроса:
URL: http://api.myatompark.com/sms/3.0/getAddressbook?key=public_key&sum=control_sum&idAddressBook=2161
Ответ:
1
2
3
4
5
6
7
8
9
10
|
{
"result":{
"id":2161,
"name":"super book",
"phones":25,
"exceptions":0,
"creationdate":"2012-04-01 18:44:36",
"description":null
}
}
|
без указания идентификатора, в этом случае будут возвращены все книги
Примеры запроса:
URL: http://api.myatompark.com/sms/3.0/getAddressbook?key=public_key&sum=control_sum
без указания идентификатора, но с указанием смещений, с такими параметрами будут возвращены книги в
соответствии заданного смещения.
Примеры запроса:
URL: http://api.myatompark.com/sms/3.0/getAddressbook?key=public_key&sum=control_sum&from=3&offset=3
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
{
"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. В поиске можно
|
||
from |
Вернуть объекты, начиная с позиции from |
||
offset |
Сколько вернуть объектов |
Пример запроса:
URL: s/3.0/searchAddressBook?key=public_key&sum=control_sum&from=10&offset=3&searchFields={ “name”
: { “operation” : “like” , “value” : “test%” } }
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
{
"result":{
"count":50,
"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",
""
]
]
}
}
|
Клонирование адресной книги
Используется метод cloneaddressbook().
Метод используется для создания копии адресной книги с новым идентификатором
Аргументы:
Название |
Значение |
idAddressBook* |
Идентификаторы адресной книги, копию которой надо создать. |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/cloneaddressbook?key=public_key&sum=control_sum&idAddressBook=147
Ответ:
1
2
3
4
5
6
|
{
"result":{
"successful":true,
"idAddressBook":36107
}
}
|
Телефон представляет собой объект состоящий из:
[id]=> Идентификатор телефона
[addressbook]=>Идентификатор адресной книги
[phone]=>Телефон
[normalphone]=>Телефон приведенный к международному стандарту *
[variables]=> Переменные для персонализации, разделенные «;» **
[status]=>Статус телефонного номера
* международный стандарт
** например: Test1;Test2;Test3
Добавить телефон в адресную книгу
Используется метод addPhoneToAddressBook().
Аргументы:
Название |
Значение |
idAddressBook* |
Идентификатор адресной книги |
phone* |
Телефон |
variables |
Переменная для персонализации |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/addPhoneToAddressBook?key=public_key&sum=control_sum&idAddressBook=2432&phone=380638962555&variables=test
Ответ:
1
2
3
4
5
|
{
"result":{
"phone_id":24552302
}
}
|
В ответе будет возвращен phone_id — уникальный идентификатор телефонного номера.
Добавить телефоны в адресную книгу
Используется метод addPhoneToAddressBook().
Аргументы:
Название |
Значение |
idAddressBook* |
Идентификатор адресной книги |
data* |
Список телефонов с персонализацией в JSON формате. |
1
2
3
4
5
|
{
"result":{
"successful":true
}
}
|
Получить адресную книгу
Используется метод getPhoneFromAddressBook().
Аргументы:
Название |
Значение |
idAddressBook |
Идентификатор адресной книги |
idPhone |
Идентификатор телефона |
phone |
Телефон |
from |
Вернуть объекты от from |
offset |
Сколько вернуть объектов |
Все аргументы: являются необязательными.
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/getAddressbook?key=public_key&sum=control_sum&idAddressBook=2161
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
{
"result":{
"count":2,
"fields":[
"id",
"phone",
"normalPhone",
"variables",
"status",
"code"
],
"data":[
[
"24552301",
"380632587852",
"380632587852",
"test variables",
"0",
""
],
[
"24552302",
"380632587853",
"380632587853",
"test variables",
"0",
""
]
]
}
}
|
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/getPhoneFromAddressBook?key=public_key&sum=control_sum&idPhone=24552301
Ответ:
1
2
3
4
5
6
7
8
9
10
|
{
"result":{
"id":24552301,
"addressbook":18628,
"phone":"380632587852",
"normalphone":"380632587852",
"variables":"test variables",
"status":0
}
}
|
Удаление телефона из адресной книги.
Используется метод delPhoneFromAddressBook().
Аргументы:
Название |
Значение |
idAddressBook* |
Идентификатор адресной книги |
idPhone* |
Идентификатор телефона |
Для удаления всех телефонов с адресной книги необходимо указать идентификатор адресной книги, а для удаления
одного телефона необходимо указать идентификатор телефона.
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/delPhoneFromAddressBook?key=public_key&sum=control_sum&idPhone=24552301
Ответ:
1
2
3
4
5
|
{
"result":{
"successful":true
}
}
|
Удалить группу телефонов из адресной книги
Используется метод delphonefromaddressbookgroup().
Аргументы:
Название |
Значение |
idPhones* |
Идентификаторы телефонных номеров, разделенные запятыми. |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/delphonefromaddressbookgroup?key=public_key&sum=control_sum&idPhones=456,523,985,412
Ответ:
1
2
3
4
5
|
{
"result":{
"successful":true
}
}
|
Редактирование телефонов в адресной книги.
Используется метод editPhone().
Аргументы:
Название |
Значение |
idPhone* |
Идентификатор телефона |
phone* |
Номер телефона |
variables* |
Переменная для персонализации |
Необходимо указать новый телефон (в международном формате) и новую строку переменных.
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/editPhone?key=public_key&sum=control_sum&idPhone=24552301&phone=380657412569&variables=test
Ответ:
1
2
3
4
5
|
{
"result":{
"successful":true
}
}
|
Поиск телефонов в адресной книге
Используется метод searchPhones().
Аргументы:
Название |
Значение |
||
searchFields |
|
||
from |
Вернуть объекты от from |
||
offset |
Сколько вернуть объектов |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/searchPhones?key=public_key&sum=control_sum&searchFields={
“variables” : { “operation” : “like” , “value” : “иван%” } }
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
{
"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: http://api.myatompark.com/sms/3.0/addPhoneToExceptions?key=public_key&sum=control_sum&idPhone=24552291&reason=test_add
Ответ:
1
2
3
4
5
|
{
"result":{
"exseption_id":24552302
}
}
|
В ответе будет возвращен exseption_id — уникальный идентификатор исключения.
Удалить телефон с исключений
Используется метод delPhoneFromExceptions().
Аргументы:
Название |
Значение |
idPhone |
Идентификатор телефона |
phone |
Телефон |
idException |
Идентификатор исключения |
Для удаления телефона с исключения необходимо передать один из выше перечисленных параметров.
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/delPhoneFromExceptions?key=public_key&sum=control_sum&idPhone=24552291
Ответ:
1
2
3
4
5
|
{
"result":{
"successful":true
}
}
|
Редактировать телефон в исключениях
Используется метод editExceptions().
Аргументы:
Название |
Значение |
idException* |
Идентификатор исключения |
reason* |
Причина |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/delPhoneFromExceptions?key=public_key&sum=control_sum&idPhone=24552291
Ответ:
1
2
3
4
5
|
{
"result":{
"successful":true
}
}
|
Получить объект исключения
Используется метод getException().
Аргументы:
Название |
Значение |
idException |
Идентификатор исключения |
phone |
Телефон |
idAddresbook |
Идентификатор адресной книги |
from |
Вернуть объекты от from |
offset |
Сколько вернуть объектов |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/delPhoneFromExceptions?key=public_key&sum=control_sum&idPhone=24552291
Ответ:
1
2
3
4
5
6
7
8
|
{
"result":{
"id":181042,
"phone":"380692587852",
"added":"2012-04-04 10:55:08",
"comment":"testREASON_PHONE"
}
}
|
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/getException?key=public_key&sum=control_sum&from=1&offset=2
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
{
"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().
Аргументы:
Название |
Значение |
||
idException |
Идентификатор исключения |
||
searchFields |
Объект в формате json для поиска. Поиск возможен по следующим полям: id, phone, date, descr. В поиске
|
||
from |
Вернуть объекты от from |
||
offset |
Сколько вернуть объектов |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/searchPhones?key=public_key&sum=control_sum&searchFields={
“variables” : { “operation” : “like” , “value” : “иван%” } }
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
{
"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: http://api.myatompark.com/sms/3.0/getUserBalance?key=public_key&sum=control_sum¤cy=USD
Ответ:
1
2
3
4
5
6
|
{
"result":{
"currency":"USD",
"balance_currency":2.5
}
}
|
Используется метод registerSender().
Аргументы:
Название |
Значение |
name |
Отправитель. Не более 14 цифр для цифрового, не более 11 символов для текстового. |
country |
Страна, в которой необходимо зарегистрировать имя. Для регистрации доступны страны:MD,UA. |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/registerSender?key=public_key&sum=control_sum&name=qwerty&country=UA
Ответ:
1
2
3
4
|
{
"name_id":748,
"status":0
}
|
В ответе будет возвращён статус в поле «status»:
0 – на модерации
1 — одобрено
2 — отклонено
Используется метод getSenderStatus().
Аргументы:
Название |
Значение |
idName |
Идентификатор имени |
name |
Имя |
country |
Страна |
from |
Вернуть объекты, начиная с позиции from |
offset |
Сколько вернуть объектов |
Для получения объекта необходимо передать идентификатор имени или передать имя и страну. Для получения всех
объектов нужно указать только смещение.
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/getSenderStatus?key=public_key&sum=control_sum&idName=747
или
URL: http://api.myatompark.com/sms/3.0/getSenderStatus?key=public_key&sum=control_sum&name=qwerty&country=ua
Ответ:
1
2
3
4
5
6
7
8
|
{
"result":{
"id":747,
"name":"qwerty",
"status":"0",
"country":"UA"
}
}
|
URL: http://api.myatompark.com/sms/3.0/getSenderStatus?key=public_key&sum=control_sum&from=10&offset=2
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
{
"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.
|
||||||||
asender |
альтернативный отправитель смс |
Параметр datetime используется, если рассылку надо отправить не в текущее время, а запланировать. Для
моментальной отправки необходимо передать пустой параметр. Пример формата даты при передаче параметра –
2012-05-01 00:20:00
Параметры batch и batchinterval используются, если необходимо рассылку разослать не за один раз, а частями.
Если рассылку планируется разослать за одну итерацию, данные параметры следует передавать со значением 0.
Опциональный параметр control_phone задается в случае, если требуется контроль качества доставки на указанный
номер телефона. Задается в международном виде.
Дополнительный параметр userapp можно использовать для указания источника рассылки. Если вы хотите знать,
сколько сообщений было отправлено через ваше приложение/модуль/сервис – укажите его название в этом параметре,
статистика будет доступна по запросу.
ВНИМАНИЕ! Этот параметр не участвует в формировании контрольной суммы. Параметр имеет смысл
передавать для
функций создания рассылки, т.е. для:
createcampaign
sendsms
sendsmsgroup
Пример запроса:
URL:
http://api.myatompark.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=
Ответ:
1
2
3
4
5
6
|
{
"result":{
"id":1853173,
"price":403.44
}
}
|
Где id – это идентификатор созданной кампании, price – цена рассылки кампании в валюте, установленной в
настройках пользователя.
Послать сообщение на произвольный телефон
Используется метод sendSMS()
Аргументы:
Название |
Значение |
||||||||
sender |
Идентификатор отправителя |
||||||||
text |
Текст сообщения |
||||||||
phone |
Номер получателя |
||||||||
datetime |
Для планировки рассылки на заданное время |
||||||||
sms_lifetime |
Время жизни смс (0 = максимум, 1, 6, 12, 24 часа) |
||||||||
type |
Для России возможно задать тип рассылки параметром type.
|
||||||||
asender |
альтернативный отправитель смс |
Параметр datetime используется, если рассылку надо отправить не в текущее время, а запланировать. Для
моментальной отправки необходимо передать пустой параметр. Пример формата даты при передаче параметра –
2012-05-01 00:20:00
Пример запроса:
URL:
http://api.myatompark.com/sms/3.0/sendSMS?key=public_key&sum=control_sum&sender=Info&text=Testing%20SMS&phone=380972920383&datetime=&sms_lifetime=0
Ответ:
1
2
3
4
5
6
|
{
"result":{
"id":1853174,
"price":0.13
}
}
|
Где id – это идентификатор созданной кампании,price – цена рассылки кампании
в валюте, установленной в настройках пользователя.
Отправка сообщений группе получателей
Используется метод sendsmsgroup().
Аргументы
Название |
Значение |
||||||||
sender* |
Идентификатор отправителя |
||||||||
text* |
текст e-mail сообщения. |
||||||||
phones* |
телефоны. Передаются в виде JSON строки в виде [“Номер телефона”, “Переменная”]. |
||||||||
datetime* |
Дата и время отправки. |
||||||||
sms_lifetime * |
Время жизни смс сообщения. |
||||||||
type |
Для России возможно задать тип рассылки параметром type.
|
||||||||
asender |
альтернативный отправитель смс |
Пример запроса:
URL: http://api.myatompark.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”]]
Ответ:
1
2
3
4
5
6
7
|
{
"result":{
"id":9097982,
"price":0.5592,
"currency":"UAH"
}
}
|
Выбор маршрута отправки
Используется универсальный параметр sendOption, с помощь которого вы можете задать маршрут
для рассылки для каждой страны.
Параметры передаются в виде JSON строки.
Для Украины параметры передаются в виде:
1
2
3
4
5
|
{
"sendTypeCountry" : {
"211" : "national_ua"
}
}
|
Возможны варианты отправки:
Название |
Значение |
national_ua |
маршрут с регистрацией имени отправителя (требуется обязательная предварительная регистрация имени у |
international_ua |
маршрут без регистрации имени отправителя (сохраняется указанное имя отправителя, используется для |
ua_sim |
отправка от случайного номера (заданное вами имя отправителя подменяется на случайный местный цифровой |
Внимание! Для России параметры передаются в виде
1
2
3
4
|
{
"rule" : "route",
"type" : "direct"
}
|
, параметр “rule” – дополнительный параметр, который используется только для России и всегда равен
“route”, параметр “type” служит для выбора маршрута.
Возможны варианты отправки:
Название |
Значение |
direct |
маршрут, подключенный напрямую к операторам России (требуется обязательная предварительная регистрация |
direct_fix |
маршрут, подключенный напрямую к операторам России (заданное имя отправителя подменяется на |
not_direct |
маршрут через каналы сторонних операторов (в большинстве случаев, заданное имя отправителя подменяется |
Пример задания типа рассылки для России и Украины при отправке на несколько номеров на языке PHP.
1
2
3
4
5
6
7
8
|
// Выбор маршрута для России
$route ['rule'] = 'route';
$route ['type'] = 'direct';
// Выбор маршрута для Украины
$route ['sendTypeCountry']['211'] = "international_ua";
// Преобразовываем параметры для России и Украины в формат json
$params ['sendOption'] = json_encode($route);
|
Получить информацию о рассылке
Используется метод getCampaignInfo()
Аргументы:
Название |
Значение |
id* |
Идентификатор кампании, созданной при помощи sendSMS() или createCampaign () |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/getCampaignInfo?key=public_key&sum=control_sum&id=128891
Ответ:
1
2
3
4
5
6
7
8
9
|
{
"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* |
Необязательный параметр, в случае его указания будут взяты статусы, которые были обновлены после |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/getCampaignDeliveryStats?key=public_key&sum=control_sum&id=128891
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
{
"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: http://api.myatompark.com/sms/3.0/cancelCampaign?key=public_key&sum=control_sum&id=128891
Ответ:
1
2
3
4
5
|
{
"result":{
"successful":1
}
}
|
Удалить рассылку
Используется метод deleteCampaign()
Аргументы:
Название |
Значение |
id |
Идентификатор кампании, созданной при помощи sendSMS() или createCampaign () |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/deleteCampaign?key=public_key&sum=control_sum&id=128891
Ответ:
1
2
3
4
5
|
{
"result":{
"successful":1
}
}
|
Если рассылка уже была удалена, данный запрос вернет ошибку. Удаляет рассылку вне зависимости от текущего статуса.
Проверить стоимость рассылки по заданному сообщению и списку
Используется метод checkCampaignPrice()
Аргументы:
Название |
Значение |
||||||||
sender |
Идентификатор отправителя |
||||||||
text |
Текст сообщения |
||||||||
list_id |
Идентификатор адресной книги |
||||||||
type |
Для России возможно задать тип рассылки параметром type.
|
||||||||
asender |
альтернативный отправитель смс |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/checkCampaignPrice?key=public_key&sum=control_sum&sender=Info&text=Testing%20SMS&list_id=1234
Ответ:
1
2
3
4
5
|
{
"result":{
"price":1210.32
}
}
|
Получение стоимости отправки
Используется метод checkCampaignPriceGroup().
Аргументы:
Название |
Значение |
||||||||
sender* |
Идентификатор отправителя |
||||||||
text* |
текст e-mail сообщения. |
||||||||
phones* |
телефоны. Передаются в виде JSON строки в виде [“Номер телефона”, “Переменная”]. |
||||||||
type |
Для России возможно задать тип рассылки параметром type.
|
||||||||
asender |
альтернативный отправитель смс |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/checkCampaignPriceGroup?key=public_key&sum=control_sum&sender=senderid&text=text&phones=[[“3806316923xx”,”Sergey”],[“3806316923xx”,”test”],[“3806785214xx”],[“3806785214xx”]]
Ответ:
1
2
3
4
5
6
|
{
"result":{
"price":0.5592,
"currency":"UAH"
}
}
|
Получить список кампаний
Используется метод getCampaignList()
Аргументы отсутствуют.
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/getCampaignList?key=public_key&sum=control_sum
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
{
"result":{
"id": [
"10012",
"10013"
],
"from": [
"Sender1",
"Sender2"
],
"body": [
"Text of SMS1",
"Text of SMS2"
],
"status" : [
3,
3
]
}
}
|
Поле status имеет такое же значение, как и в таблице для функции getCampaignInfo()
Получение статусов состояния сообщений по кампаниям
Используется метод getcampaigndeliverystatsgroup().
Аргументы:
Название |
Значение |
id* |
Идентификаторы кампаний, разделенные запятыми. |
Пример запроса:
URL: http://api.myatompark.com/sms/3.0/getcampaigndeliverystatsgroup?key=public_key&sum=control_sum&id=754,751
Ответ:
1
2
3
4
5
6
7
8
|
{
"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: http://api.myatompark.com/sms/3.0/gettaskinfo?key=public_key&sum=control_sum&taskIds=97659003,97659005
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
{
"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"
}
]
}
|