| Рассылки. Ответ сервера и коды ошибок
Сервер отправляет ответ в виде строки:
  
Если произошла ошибка, то ответ будет одним из следующих:
  
При fmt = 0:
- ERROR = N (описание) – для ошибок 1,2,3,4,5,9.
  
При fmt = 1:
- 0,-N – для ошибок 1,2,3,4,5,9.
  
При fmt = 2:
- Для ошибок 1,2,3,4,5,9:
<result> 
<error>описание</error> 
<error_code>N</error_code> 
</result> |   
  
При fmt = 3:
- Для ошибок 1,2,3,4,5,9:
{ 
"error": "описание", 
"error_code": N 
} |   
  
N – номер ошибки, может принимать следующие значения:
  
| Значение | Описание
 | 
|---|
 | 1 | Ошибка в параметрах.
 | 
|---|
 | 2 | Неверный логин или пароль. Также возникает при попытке отправки сообщения с IP-адреса, не входящего в список разрешенных Клиентом (если такой список был настроен Клиентом ранее).
 | 
|---|
 | 3 | Ошибка сохранения записи.
 | 
|---|
 | 4 | IP-адрес временно заблокирован из-за частых ошибок в запросах. Подробнее
 | 
|---|
 | 5 | Неверный формат даты.
 | 
|---|
 | 9 | Отправка более одного одинакового запроса на действия с рассылками в течение минуты. 
Данная ошибка возникает также при попытке отправки пятнадцати и более запросов одновременно с разных подключений под одним логином (too many concurrent requests).
 | 
|---|
  
 
В случае успешной обработки запроса возвращается строка следующего вида:
  
При создании рассылки: 
- при cost = 0 и fmt = 0: OK, ID - <id>
  
 - при cost = 1 и fmt = 0: OK, ID - <id>, COST - <cost>
  
 - при cost = 0 и fmt = 1: <id>
  
 - при cost = 1 и fmt = 1: <id>,<cost>
  
 - при cost = 0 и fmt = 2:
<result> 
<id>id</id> 
</result> |  
  
 - при cost = 1 и fmt = 2:
<result> 
<id>id</id> 
<cost>cost</cost> 
</result> |  
  
 - при cost = 0 и fmt = 3:
 
 - при cost = 1 и fmt = 3:
{ 
"id": <id>, 
"cost": "<cost>" 
} |   
   
При отключении или удалении рассылки:
  
- при fmt = 0,1: OK
  
 - при fmt = 2:
| <result>OK</result> |  
  
 - при fmt = 3:
   
При получении информации о конкретной рассылке (при mail=1 параметр "phones" заменяется на "emails"):
  
- при fmt = 0: <id>|<name>|<subject>|<repeat_send>|<repeat_cnt>|<created>|<changed>|<need_date>|<last_sent>|<phones>|<message>|<format>|<validity>|<period>|<frequency>|<status>|<sender_id>
  
 - при fmt = 1: <id>;<name>;<subject>;<repeat_send>;<repeat_cnt>;<created>;<changed>;<need_date>;<last_sent>;<phones>;<message>;<format>;<validity>;<period>;<frequency>;<status>;<sender_id>
  
 - при fmt = 2:
<job> 
<id>id</id> 
<name>name</name> 
<subject>subject</subject> 
<repeat_send>repeat_send</repeat_send> 
<repeat_cnt>repeat_cnt</repeat_cnt> 
<created>created</created> 
<changed>changed</changed> 
<need_date>need_date</need_date> 
<last_sent>last_sent</last_sent> 
<phones>phones</phones> 
<message>message</message> 
<format>format</format> 
<validity>validity</validity> 
<period>period</period> 
<frequency>frequency</frequency> 
<status>status</status> 
<sender_id>sender_id</sender_id> 
</job> |  
  
 - при fmt = 3:
[ { 
"id": <id>, 
"name": "<name>", 
"subject": "<subject>", 
"repeat_send": <repeat_send>, 
"repeat_cnt": <repeat_cnt>, 
"created": "<created>", 
"changed": "<changed>", 
"need_date": "<need_date>", 
"last_sent": "<last_sent>", 
"phones": "<phones>", 
"message": "<message>", 
"format": <format>, 
"validity": <validity>, 
"period": "<period>", 
"frequency": <frequency>, 
"status": <status>, 
"cost": "<cost>", 
"sms_sent": <sms_sent>, 
"sms_ok": <sms_ok>, 
"sender_id": "<sender_id>" 
} ] |  
  
   
При получении списка рассылок (при mail=1 параметр "phones" заменяется на "emails"):
  
- при fmt = 0: <id>|<name>|<changed>|<need_date>|<last_sent>|<phones>|<message>|<phones_cnt>|<cost>|<status>|<sender_id>|<format>
  
 - при fmt = 1: <id>;<name>;<changed>;<need_date>;<last_sent>;<phones>;<message>;<phones_cnt>;<cost>;<status>;<sender_id>;<format>
  
 - при fmt = 2:
<sms_jobs> 
<job> 
<id>id</id> 
<name>name</name> 
<changed>changed</changed> 
<need_date>need_date</need_date> 
<last_sent>last_sent</last_sent> 
<phones>phones</phones> 
<message>message</message> 
<phones_cnt>phones_cnt</phones_cnt> 
<cost>cost</cost> 
<status>status</status> 
<sender_id>sender_id</sender_id> 
<format>format</format> 
</job> 
... 
</sms_jobs> 
 |  
  
 - при fmt = 3:
[ { 
"id": <id>, 
"name": "<name>", 
"changed": "<changed>", 
"need_date": "<need_date>", 
"last_sent": "<last_sent>", 
"phones": "<phones>", 
"message": "<message>", 
"phones_cnt": <phones_cnt>, 
"cost": "<cost>", 
"status": <status>, 
"sender_id": "<sender_id>", 
"format": <format>, 
"sms_sent": <sms_sent>, 
"sms_ok": <sms_ok> 
}, ... ] |  
  
  
Где: 
<id> – идентификатор рассылки, переданный Клиентом или назначенный Сервером автоматически. 
<name> – название рассылки. 
<subject> – тема (для e-mail рассылок). 
<repeat_send> – период повтора. 
<repeat_cnt> – количество повторов рассылки. 
<created> – дата создания рассылки. 
<changed> – дата изменения рассылки. 
<need_date> – назначенная дата отправки. 
<last_sent> – дата последней отправки. 
<phones> (<emails>) – список телефонов (e-mail адресов) получателей сообщений. 
<message> – текст сообщения. 
<format> – формат сообщения. 
<validity> – "время жизни" сообщения. 
<period> – интервал отправки сообщений. 
<frequency> – частота отправки сообщений. 
<status> – статус рассылки. 
<sender_id> – имя отправителя. 
<phones_cnt> – количество получателей. 
<cost> – стоимость рассылки. 
<sms_sent> – количество отправленных сообщений. 
<sms_ok> – количество доставленных сообщений. |