Создать отправителя

Чтобы добавить нового отправителя, отправьте POST запрос по ссылке:

https://api.sendpulse.com/vk-ok/senders

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

Параметр Тип Описание
name string Имя отправителя, видно только создателю  required
vk_url string Полная ссылка на сообщество ВКонтакте, включая https:// или http// протокол required*
ok_url string Полная ссылка на сообщество в Одноклассниках, включая https:// или http// протокол required*
cover_letter file Изображение разрешительного письма. Шаблон можно скачать в личном кабинете required

*Обязательно должен быть один из двух URL, также можно добавлять сразу две сети в одном запросе.

В случае успешного запроса вы получите ответ: 

{
  "id": 1,
  "user_id": 123,
  "name": "sendpulse",
  "vk_url": "https://vk.com/sendpulse",
  "ok_url": "https://ok.ru/group/sendpulse",
  "cover_letter": {
    "id": 3,
    "user_id": 123,
    "name": "документ",
    "path": "name.png",
    "url": "https://static-vk-ok.sendpulse.com/senders/name.jpeg",
    "created_at": "2020-04-21T13:32:07.000000Z",
    "update_at": "2020-04-21T13:32:07.000000Z"
  },
  "created_at": "2020-04-21T13:32:07.000000Z",
  "update_at": "2020-04-21T13:32:07.000000Z"
}

Создать шаблон

Чтобы добавить новый шаблон уведомления, отправьте POST запрос по ссылке:

https://api.sendpulse.com/vk-ok/templates

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

Параметр Тип Описание
name string Название шаблона, видно только создателю required
vk_message string Текст уведомления, который будут получать пользователи в ВКонтакте, максимальная длина 2048 символов required*
ok_message string Текст уведомления, который будут получать пользователи в Одноклассниках, максимальная длина 2048 символов required*
sender_id int ID отправителя, полученный в методе «Создать отправителя» required

*Если в вашем отправителе указан только vk_url то обязательно передавать только vk_message.

Если в вашем отправителе указан только ok_url то обязательно передавать только ok_message.

Если в отправителях указаны оба поля то обязательно передавать оба поля.

В случае успешного запроса вы получите ответ: 

{
    "total": 1,
    "data": {
        "id": 1,
        "user_id": 6615360,
        "sender_id": 1,
        "name": "Отправка накладной",
        "vk_message": "Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
        "ok_message": "Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
        "sender": {
            "id": 1,
            "user_id": 6615360,
            "name": "Healthy Lifestyle",
            "vk_url": "https://vk.com/healthy_lifestyle",
            "ok_url": "https://ok.ru/group/56949408137424",
            "created_at": "2020-05-06T12:09:04.000000Z",
            "update_at": "2020-05-06T12:09:04.000000Z"
        },
        "status": 3,
        "status_detail": {
            "id": 1,
            "name": "new"
        }
    }
}

Описание статусов созданного шаблона:

Код Название Описание
1 new Новый, только что добавленный
2 moderation_by_us Находится на модерации 
3 moderation_provider Находится на модерации 
4 active Активный
5 rejected Отклонен
6 draft Черновик
7 send_moderation_error Ошибка шаблона
8 not_active Не активен
 
 

Получить информацию по списку шаблонов

Чтобы получить информацию по списку созданных шаблонов, отправьте GET запрос по ссылке:

https://api.sendpulse.com/vk-ok/templates

В случае успешного запроса вы получите ответ: 

{
  "total": 2, //количество созданных шаблонов
  "data": [
    {
      "id": 1,
      "user_id": 6615360,
      "sender_id": 1,
      "name": "block campaign",
      "vk_message": "Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
      "ok_message": "Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
      "sender": {
        "id": 1,
        "user_id": 6615360,
        "name": "Healthy Lifestyle",
        "vk_url": "https://vk.com/healthy_lifestyle",
        "ok_url": "https://ok.ru/group/56949408137424",
        "created_at": "2020-05-06T12:09:04.000000Z",
        "update_at": "2020-05-06T12:09:04.000000Z"
      },
      "status": 3,
      "status_detail": {
        "id": 3,
        "name": "moderation_by_provider"
      }
    },

    {
      "id": 15,
      "user_id": 6615360,
      "sender_id": 2,
      "name": "test",
      "vk_message": "Привет! Через 15 минут мы начинаем вебинар по правильному питанию! 
Ждем вас в вебинарной комнате, старт встречи в 15:00", "ok_message": "Привет! Через 15 минут мы начинаем вебинар по правильному питанию!
Ждем вас в вебинарной комнате, старт встречи в 15:00", "sender": { "id": 2, "user_id": 6615360, "name": "Healthy Lifestyle", "vk_url": "https://vk.com/healthy_lifestyle", "ok_url": "https://vk.com/sendpulse", "created_at": "2020-05-20T12:59:01.000000Z", "update_at": "2020-05-20T12:59:01.000000Z" }, "status": 1, "status_detail": { "id": 1, "name": "new" } } ] }

Получить информацию по одному шаблону

Чтобы получить информацию по определенному шаблону, отправьте GET запрос по ссылке:

https://api.sendpulse.com/vk-ok/templates{id}

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

Параметр Тип Описание
id int ID созданного шаблона required

В случае успешного запроса вы получите ответ: 

{
    "total": 1,
    "data": {
        "id": 1,
        "user_id": 6615360,
        "sender_id": 1,
        "name": "block campaign",
        "vk_message": "Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
        "ok_message": "Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
        "sender": {
            "id": 1,
            "user_id": 6615360,
            "name": "Healthy Lifestyle",
            "vk_url": "https://vk.com/healthy_lifestyle",
            "ok_url": "https://ok.ru/group/56949408137424",
            "created_at": "2020-05-06T12:09:04.000000Z",
            "update_at": "2020-05-06T12:09:04.000000Z"
        },
        "status": 3,
        "status_detail": {
            "id": 3,
            "name": "moderation_by_provider"
        }
    }
}

Отправить рассылку 

Чтобы создать рассылку, отправьте POST запрос по ссылке:

https://api.sendpulse.com/vk-ok/campaings

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

Параметр Тип Описание
address_book* array of objects ID адресных книг; указывать можно только книгу у которой есть номера телефонов required
recipients* array of objects Номера телефонов в международном формате с переменными в формате {"имя переменной":"значение переменной"}  required
life_time int Время жизни сообщения, можно указать от 1 минуты до 24 часов  required
life_type string Единица времени жизни сообщения (минута - min, час - hour) required
name string Название рассылки, видно только создателю  required
routes object В какие социальные сети отправлять сообщение, например, {"ok": true, "vk": true}, если не выбрано будет отправлено на выбор алгоритмам системы required
send_date date Дата отправки для планирования рассылки на другое время. формат даты 2020-04-23 13:29:30, если не указано будет отправлена мгновенно optional
template_id int ID созданного шаблона. указывать можно только активные шаблоны, у которых статус 4 required

*Можно указать параметр адресной книги либо массив списка получателей.

Пример запроса отправки на адресную книгу: 

{
   "address_book":[
      {
         "id":"8889330"
      }
   ],
   "life_time":24,
   "life_type":"hour",
   "name":"Campaign",
   "routes":{
      "ok":true,
      "vk":true
   },
   "send_date":"2020-05-20 17:17",
   "template_id":2
}

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

{
   "recipients":[
      {
         "phone":"380663322555",
         "variables":{
            "Имя":"Виталий"
         }
      },
      {
         "phone":"380663322999",
         "variables":{
            "Имя":"Виктор"
         }
      }
   ],
   "life_time":24,
   "life_type":"hour",
   "name":"Campaign",
   "routes":{
      "ok":true,
      "vk":true
   },
   "send_date":"2020-05-20 17:17",
   "template_id":2
}

Cтатусы отправки рассылки: 

Код Описание
1 Новая
3 Идет копирование телефонов
4 Отложенная отправка
5 Недостаточно средств на счете
7 Идет отправка
8 Отправлено

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

Чтобы получить информацию по списку рассылок, отправьте GET запрос по ссылке:

https://api.sendpulse.com/vk-ok/campaigns

В случае успешного запроса вы получите ответ: 

{
  "total": 1,
  "data": [
    {
      "id": 1,
      "user_id": 6615360,
      "name": "test",
      "total_price": 0,
      "price_rate": 100000,
      "currency": {
        "id": 3,
        "currency_name": "Ukrainian hryvnias",
        "currency_abbr": "UAH",
        "currency_sign": "грн."
      },
      "life_time": 24,
      "life_type": "hour",
      "send_date": "2020-05-06T15:42:12.000000Z",
      "created_at": "2020-05-06T15:42:12.000000Z",
      "template": {
        "id": 1,
        "user_id": 6615360,
        "sender_id": 1,
        "name": "block campaign",
        "vk_message": "Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
        "ok_message": "Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
        "sender": {
          "id": 1,
          "user_id": 6615360,
          "name": "sendpulse",
          "vk_url": "https://vk.com/healthy_lifestyle",
          "ok_url": "https://ok.ru/group/56949408137424",
          "created_at": "2020-05-06T12:09:04.000000Z",
          "update_at": "2020-05-06T12:09:04.000000Z"
        },
        "status": 3
      },
      "status": 7,
      "status_detail": {
        "id": 7,
        "name": "in_progress"
      },
      "group_stat": []
    }
  ]
}

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

Чтобы получить информацию по определенной рассылке, отправьте GET запрос по ссылке:

https://api.sendpulse.com/vk-ok/campaigns{id}

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

Параметр Тип Описание
id int ID отправленной рассылки required

В случае успешного запроса вы получите ответ: 

{
   "id":1,
   "user_id":6615360,
   "name":"test",
   "address_books":[
      {
         "id":1,
         "user_id":6615360,
         "campaign_id":1,
         "address_book_id":88890330,
         "created_at":"2020-05-06 12:42:12",
         "updated_at":"2020-05-06 12:42:12"
      }
   ],
   "total_price":0,
   "price_rate":100000,
   "currency":{
      "id":3,
      "currency_name":"Ukrainian hryvnias",
      "currency_abbr":"UAH",
      "currency_sign":"грн."
   },
   "life_time":24,
   "life_type":"hour",
   "send_date":"2020-05-06T15:42:12.000000Z",
   "created_at":"2020-05-06T15:42:12.000000Z",
   "template":{
      "id":1,
      "user_id":6615360,
      "sender_id":1,
      "name":"block campaign",
      "vk_message":"Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
      "ok_message":"Ваш заказ отправлен. TTN {{ttn_number}}. Срок хранения 5 рабочих дней.",
      "sender":{
         "id":1,
         "user_id":6615360,
         "name":"sendpulse",
         "vk_url":"https://vk.com/healthy_lifestyle",
         "ok_url":"https://ok.ru/group/56949408137424",
         "created_at":"2020-05-06T12:09:04.000000Z",
         "update_at":"2020-05-06T12:09:04.000000Z"
      },
      "status":3
   },
   "status":7,
   "status_detail":{
      "id":7,
      "name":"in_progress"
   },
   "group_stat":[
      {
         "id":5,
         "user_id":6615360,
         "route":null,
         "sent":1,
         "delivered":0,
         "not_delivered":1,
         "opened":0
      }
   ]
}

Получить список телефонов по рассылке

Чтобы получить информацию по списку телефонов по отправленной рассылке, отправьте GET запрос по ссылке:

https://api.sendpulse.com/vk-ok/campaigns/{id}/phones

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

Параметр Тип Описание
id int ID отправленной рассылки required

В случае успешного запроса вы получите ответ: 

{
    "total": 2,
    "data": [
        {
            "id": 1,
            "user_id": 6615360,
            "campaign_id": 1,
            "template_id": null,
            "phone": 380931112233,
            "phone_cost": 41000,
            "currency_id": 3,
            "price_rate": 100000,
            "currency": {
                "id": 3,
                "currency_name": "Ukrainian hryvnias",
                "currency_abbr": "UAH",
                "currency_sign": "грн."
            },
            "created_at": "2020-05-06T15:45:58.000000Z",
            "status": 1,
            "status_detail": {
                "id": 1,
                "name": "to_send"
            }
        },
        {
            "id": 2,
            "user_id": 6615360,
            "campaign_id": 1,
            "template_id": null,
            "phone": 380931112234,
            "phone_cost": 41000,
            "currency_id": 3,
            "price_rate": 100000,
            "currency": {
                "id": 3,
                "currency_name": "Ukrainian hryvnias",
                "currency_abbr": "UAH",
                "currency_sign": "грн."
            },
            "created_at": "2020-05-06T15:45:58.000000Z",
            "status": 1,
            "status_detail": {
                "id": 1,
                "name": "to_send"
            }
        }
    ]
}

Описание статусов отправки на каждый номер:

Код Описание
1 Готово к отправке
2 Отправляется
3 Отправлено
4 Доставлено
5 Ошибка
6 Открыто
7 Данный получатель не существует в системе ВК или ОК
8 Срок жизни указанного ttl истек и сообщение не было доставлено
9 Пользователь отписался
10 Страна получателя на данный момент не поддерживается

Ошибки запроса

В случае неуспешного выполнения запроса с указанными параметрами, вы получите 400 код ответа HTTP с информацией об ошибке.

Пример структуры ошибок:

{
    "errors": {
        "message": [
            "The message field is required."
        ],
        "sender_id": [
            "The sender id field is required."
        ]
    }
}