Сообщения Viber

Методы

POST Отправка сообщения(-ий) на множество списков, а также персональные сообщения в пакетном режиме Если вам нужно отправить 1 сообщение на список номеров, тогда используйте параметр 'message_type': 'bulk', как в примере ниже, передавая массив номеров: 'delivery_list': [ '375291111111', '37529222222…
POST Получение статусов сообщений из рассылок, созданных методом sendBulkViber Для получения информации о рассылках, созданных методом sendBulkViber, необходимо использовать поле uuid из ответа метода sendBulkViber (это UUID запроса). Метод statusBulkViber вернет расширенную инф…
POST Отправка одиночного Viber сообщения (не требует предварительного создания)
POST Получение данных о сообщении отправленном методом sendQuickViberMessage
POST Отправка Viber-сообщения выбранному списку рассылки
POST Подтвердить Viber-рассылку. С баланса будут списаны деньги.
POST Получить список своих Viber-рассылок
POST Получить данные о Viber-рассылке
POST Получение списка телефонов по идентификатору Viber-рассылки
POST Просмотр входящих сообщений для Viber-рассылки
POST Пометить перечисленные входящие сообщения как прочитанные
POST /api/v1/sendBulkViber Отправка сообщения(-ий) на множество списков, а также персональные сообщения в пакетном режиме
URL запроса
POST https://app.sms.by/api/v1/sendBulkViber
Если вам нужно отправить 1 сообщение на список номеров, тогда используйте параметр 'message_type': 'bulk', как в примере ниже, передавая массив номеров:
'delivery_list': [
    '375291111111',
    '375292222222',
 ]
Если вам требуется отправлять каждое сообщение на отдельный номер телефона, то используйте 'message_type': 'personal', передавая каждый раз текст сообщения и номер телефона. Например:
'delivery_list': [
    {
       'phone': '375291111111',
       'text': 'personal message 1'
    },
    {
       'phone': '375292222222',
       'text': 'personal message 2'
    } 
]
Для планирования рассылки вы можете указывать время рассылки через параметр schedule_time, в формате YYYY-MM-DDTHH:mm:ss

Особенностью отправки сообщения Viber является наличие трех вариантов: text, image или button.
Варианты заполнения приведены в образце api запроса.

Внимание!

Вариант image может быть использован только в рассылке с message_type = bulk.
В варианте button параметр button_link не должен превышать 150 символов.
Параметр image_url в вариантах button и image должен иметь ссылку на изображение, которое находится в открытом доступе.

Образец api запроса
{
  "token": "eyJpdiI6IjJzOFlFcXBmOUZEcGJlYzlzeFJValE9PSIsInZhbHV",
  "callback_url": "http://example-site.com/webhook.php",
  "messages": [
    {
      "alphaname_id": "444",
      "name": "mailing list 1",
      "message_type": "personal",
      "schedule_time": "2024-10-30T22:56:00",
      "content": {
        "type": "button",
        "image_url": "https://example-site.com/images/image.jpg",
        "caption": "Push me"
      },
      "delivery_list": [
        {
          "phone": "375291111111",
          "text": "personal message 1.1",
          "button_link": "https://example-site.com/some_action/1"
        },
        {
          "phone": "375292222222",
          "text": "personal message 1.2",
          "button_link": "https://example-site.com/some_action/2"
        }
      ]
    },
    {
      "alphaname_id": "444",
      "name": "mailing list 2",
      "message_type": "personal",
      "schedule_time": "2024-10-30T22:56:00",
      "content": {
        "type": "text"
      },
      "delivery_list": [
        {
          "phone": "375291111111",
          "text": "personal message 2.1"
        },
        {
          "phone": "375292222222",
          "text": "personal message 2.2"
        }
      ]
    },
    {
      "alphaname_id": "444",
      "name": "mailing list 3",
      "message_type": "bulk",
      "schedule_time": "2024-10-30T22:56:00",
      "content": {
        "type": "button",
        "image_url": "https://example-site.com/images/image.jpg",
        "button_link": "https://example-site.com/some_action",
        "caption": "Button",
        "text": "message text 3"
      },
      "delivery_list": [
        "375291111111",
        "375292222222"
      ]
    },
    {
      "alphaname_id": "444",
      "name": "mailing list 4",
      "message_type": "bulk",
      "schedule_time": "2024-10-30T22:56:00",
      "content": {
        "type": "text",
        "text": "message text 4"
      },
      "delivery_list": [
        "375291111111",
        "375292222222"
      ]
    },
    {
      "alphaname_id": "444",
      "name": "mailing list 5",
      "message_type": "bulk",
      "schedule_time": "2024-10-30T22:56:00",
      "content": {
        "type": "image",
        "image_url": "https://example-site.com/images/image.jpg"
      },
      "delivery_list": [
        "375291111111",
        "375292222222"
      ]
    }
  ]
}

Параметры

Параметр Расположение Тип Обязательный Описание
token query string Да Ваш API ключ
callback_url query string Нет URL, на который (если параметр задан) будет выслан ответ по работе метода в асинхронном режиме
messages query array Да Массив сообщения (Образец объекта в описании запроса)

Ответы

200 — Выполнено успешно

{
    "uuid": "cc9c8043-8caf-11ef-b035-9e8f47954dec",
    "success": "OK"
}

400 — Некорректный запрос

404 — Страница не найдена

429 — Превышен лимит запросов

500 — Сервер недоступен

POST /api/v1/statusBulkViber Получение статусов сообщений из рассылок, созданных методом sendBulkViber
URL запроса
POST https://app.sms.by/api/v1/statusBulkViber
Для получения информации о рассылках, созданных методом sendBulkViber, необходимо использовать поле uuid из ответа метода sendBulkViber (это UUID запроса). Метод statusBulkViber вернет расширенную информацию о статусах сообщений и ошибках, если таковые имеются

Параметры

Параметр Расположение Тип Обязательный Описание
token query string Да Ваш API ключ
uuid query string Да UUID, полученный в ответе метода sendBulkSms

Ответы

200 — Выполнено успешно

[
    {
        "message_id": 1,
        "name": "mailing list 1",
        "alphaname_id": 123,
        "success": [
            {
                "delivery_id": 1001,
                "phone": "375291111111",
                "status": "NEW",
                "status_time": "2024-10-16 22:52:42.497994"
            },
            {
                "delivery_id": 1002,
                "phone": "375292222222",
                "status": "NEW",
                "status_time": "2024-10-16 22:52:43.379779"
            }
        ]
    },
    {
        "message_id": 2,
        "name": "mailing list 2",
        "alphaname_id": 345,
        "success": [
            {
                "delivery_id": 1003,
                "phone": "375291111111",
                "status": "DELIVERED",
                "status_time": "2024-10-16 22:52:44.793377"
            },
            {
                "delivery_id": 1004,
                "phone": "375292222222",
                "status": "DELIVERED",
                "status_time": "2024-10-16 22:52:43.008560"
            }
        ]
    },
    {
        "errors": [
            "рассылка 3: Content url is not valid"
        ]
    },
    {
        "errors": [
            "рассылка 4: Optimal image size 800x800 px"
        ]
    }
]

400 — Некорректный запрос

404 — Страница не найдена

429 — Превышен лимит запросов

500 — Сервер недоступен

POST /api/v2/sendQuickViberMessage Отправка одиночного Viber сообщения (не требует предварительного создания)
URL запроса
POST https://app.sms.by/api/v2/sendQuickViberMessage

Параметры

Параметр Расположение Тип Обязательный Описание
token formData string Да Ваш API ключ
vibername_id formData integer Да ID Viber-имени из метода getVibernames
phone formData string Да Номер телефона для Viber-сообщения
type_message formData string Нет Тип сообщения: TEXT, IMAGE или BUTTON, по умолчанию = TEXT
message formData string Нет Текст Viber-сообщения (обязательный если type_message = TEXT)
image_url formData string Нет Передаваемая картинка (обязательный если type_message = IMAGE и image не передаётся). Передача картинки через image_url предпочтительней.
image formData file Нет Передаваемая картинка (обязательный если type_message = IMAGE и image_url не передаётся)
button formData string Нет Название кнопки (обязательный если type_message = BUTTON)
button_link formData string Нет Ссылка для перехода (обязательный если type_message = BUTTON)
forwarding_message formData integer Нет Включить переадресацию (1 - включить, 0 - не включать). Если в течение указанного времени отправленное сообщение не получит статус "Доставлено", оно будет отправлено как SMS
forwarding_time formData integer Нет Через сколько минут произойдёт переадресация, если она включена. По умолчанию 60 минут. Минимум 5 минут. Максимум 60 минут
alphaname_id formData integer Нет ID альфаимени, от которого придёт SMS при переадресации, если она включена

Ответы

200 —

{
    "status": "OK",
    "result": {
        "message_id": 8484
    }
}
POST /api/v2/getViberDeliveryData Получение данных о сообщении отправленном методом sendQuickViberMessage
URL запроса
POST https://app.sms.by/api/v2/getViberDeliveryData

Параметры

Параметр Расположение Тип Обязательный Описание
token formData string Да Ваш API ключ
message_id formData integer Да ID сообщения

Ответы

200 —

{
    "status": "OK",
    "result": {
        "phone": "375293332211",
        "status": "READ",
        "error_code": 0
    }
}
POST /api/v2/sendViberMessageList Отправка Viber-сообщения выбранному списку рассылки
URL запроса
POST https://app.sms.by/api/v2/sendViberMessageList

Параметры

Параметр Расположение Тип Обязательный Описание
token formData string Да Ваш API ключ
name formData string Нет Название рассылки, если параметр не передан, название сформируется автоматически
vibername_id formData integer Да ID Viber-имени из метода getVibernames
list_id formData integer Да ID списка рассылки из метода getSubscriberLists
type_message formData string Нет Тип сообщения: TEXT, IMAGE или BUTTON, по умолчанию = TEXT
message formData string Нет Текст Viber-сообщения (обязательный если type_message = TEXT)
image_url formData string Нет Передаваемая картинка (обязательный если type_message = IMAGE и image не передаётся). Передача картинки через image_url предпочтительней.
image formData file Нет Передаваемая картинка (обязательный если type_message = IMAGE и image_url не передаётся)
button formData string Нет Название кнопки (обязательный если type_message = BUTTON)
button_link formData string Нет Ссылка для перехода (обязательный если type_message = BUTTON)
d_schedule formData string Нет Время отправки сообщения, указывается в формате 'ГГГГ-ММ-ДД ЧЧ:ММ'

Ответы

200 —

{
    "status": "OK",
    "result": {
        "message_id": 4905,
        "count_subscribers": 4
    }
}
POST /api/v2/confirmViberMessage Подтвердить Viber-рассылку. С баланса будут списаны деньги.
URL запроса
POST https://app.sms.by/api/v2/confirmViberMessage

Параметры

Параметр Расположение Тип Обязательный Описание
token query string Да Ваш API ключ
message_id formData integer Да ID Viber-рассылки

Ответы

200 —

{
    "status": "OK"
}
POST /api/v2/getViberMessages Получить список своих Viber-рассылок
URL запроса
POST https://app.sms.by/api/v2/getViberMessages

Параметры

Параметр Расположение Тип Обязательный Описание
token query string Да Ваш API ключ
limit_offset formData integer Нет Смещение выборки, по умолчанию 0
limit_rows formData integer Нет Количество элементов в выборке, по умолчанию 100

Ответы

200 —

{
    "status": "OK",
    "result": [
        {
            "message_id": 8483,
            "message_type": "TEXT",
            "message": "Тестовое сообщение",
            "button_caption": "",
            "button_link": "",
            "image_file": "",
            "status": "SENT",
            "d_create": "2024-02-01 10:10:35",
            "d_schedule": "2024-02-01 10:10:35",
            "cost": "0.04900 EUR"
        },
        {
            "message_id": 8495,
            "message_type": "BUTTON",
            "message": "",
            "button_caption": "Перейти на сайт",
            "button_link": "https:\/\/site.by",
            "image_file": "",
            "status": "SENT",
            "d_create": "2024-02-02 09:30:00",
            "d_schedule": "2024-02-03 10:00:00",
            "cost": "0.04900 EUR"
        }
    ]
}
POST /api/v2/getViberMessageData Получить данные о Viber-рассылке
URL запроса
POST https://app.sms.by/api/v2/getViberMessageData

Параметры

Параметр Расположение Тип Обязательный Описание
token query string Да Ваш API ключ
message_id formData integer Да ID Viber-рассылки

Ответы

200 —

{
    "status": "OK",
    "result": {
        "message_id": 8483,
        "message_type": "TEXT",
        "message": "Тестовое сообщение",
        "button_caption": "",
        "button_link": "",
        "image_file": "",
        "status": "SENT",
        "d_create": "2024-02-01 10:10:35",
        "d_schedule": "2024-02-01 10:10:35",
        "cost": "0.04900 EUR"
    }
}
POST /api/v2/getViberDeliveryList Получение списка телефонов по идентификатору Viber-рассылки
URL запроса
POST https://app.sms.by/api/v2/getViberDeliveryList

Параметры

Параметр Расположение Тип Обязательный Описание
token formData string Да Ваш API ключ
message_id formData integer Да ID Viber-рассылки

Ответы

200 —

{
    "status": "OK",
    "result": [
        {
            "delivery_id": 100,
            "phone": "375293332211",
            "status": "DELIVERED",
            "error_code": 0
        },
        {
            "delivery_id": 101,
            "phone": "375293332212",
            "status": "READ",
            "error_code": 0
        }
    ]
}
POST /api/v2/getNewIncomingMessages Просмотр входящих сообщений для Viber-рассылки
URL запроса
POST https://app.sms.by/api/v2/getNewIncomingMessages

Параметры

Параметр Расположение Тип Обязательный Описание
token formData string Да Ваш API ключ
message_id formData integer Да ID Viber-рассылки

Ответы

200 —

{
    "status": "OK",
    "result": [
        {
            "id": "1234",
            "phone": "375293332211",
            "message": "Ответ на полученное сообщение",
            "d_receiver": "2022-09-01 10:39:45"
        },
        {
            "id": "1236",
            "phone": "375293332212",
            "message": "Да",
            "d_receiver": "2022-09-01 11:29:50"
        }
    ]
}
POST /api/v2/readResponseStatus Пометить перечисленные входящие сообщения как прочитанные
URL запроса
POST https://app.sms.by/api/v2/readResponseStatus

Параметры

Параметр Расположение Тип Обязательный Описание
token formData string Да Ваш API ключ
incoming_messages formData string Да ID входящих сообщений через запятую, которые нужно пометить как прочитанные

Ответы

200 —

{
    "status": "OK",
    "result": "Количество помеченных сообщений: 3"
}