SMSBAT Cascade RESTful API

Повний посібник розробника
Каскадний API для ефективного спілкування через Telegram Bot, Viber Bot, Viber Business Messages та SMS

Огляд

SMSBAT Cascade RESTful API дозволяє надсилати повідомлення через Viber та SMS, підтримуючи два типи повідомлень: транзакційне та промо.

Як Це Працює?

Використання SMSBAT Cascade RESTful API просте і зрозуміле:

  • Відправте Один Запит: Ініціюйте повідомлення, відправивши один API-запит.
  • Автоматичне Каскадування: Наш API автоматично каскадує повідомлення до Telegram Bot, Viber Bot, Viber Business Messages, RCS та SMS.
  • Ефективна Доставка: Повідомлення ефективно доставляється до призначених одержувачів на всіх обраних платформах.

Протокол

Як протокол використовується HTTPS. Тіло запиту – JSON‑масив об'єктів messages.

Методи запитів
POST
Створення об'єктів
Наприклад створення розсилки
GET
Отримання даних
Статус доставки повідомлення

Авторизація

Для Вашої зручності є кілька варіантів авторизації:

Заголовки авторизації
X-Authorization-Key
API-ключ SMSBAT
Основний ключ для авторизації
X-Viber-Auth-Token
API-ключ Viber боту
Для відправки через Viber
X-Tg-Bot-Key
API-ключ Telegram боту
Для відправки через Telegram
cURL
curl -H "X-Authorization-Key:<SMSBAT-API-Key>"
-H "X-Viber-Auth-Token:<Viber-Bot-API-Key>"
-H "X-Tg-Bot-Key:<Telegram-Bot-API-Key>"
-H "Content-Type:application/json"

Endpoints

Запити до SMSBAT Cascade RESTful API передаються в endpoint з локалізацією

Доступні endpoints
POST
/api/CascadeMessage/send_message/tg-viber/async
Відправка повідомлення до каскаду з Telegram відправкою
POST
/api/CascadeMessage/send_message/async
Відправка повідомлення до каскаду

Типи повідомлень

API підтримує різні типи повідомлень для різних сценаріїв використання

Транзакційні повідомлення

Використовуються для важливих сповіщень, таких як підтвердження операцій, сповіщення про безпеку тощо.

JSON
{
  "id": "12358",
  "fromName": "AlphaName",
  "toPhone": "380680000000",
  "messageType": "transaction",
  "ttl": 60,
  "sheduledSent": "2023-12-04T16:18:00.000+02:00",
  "wheterCheckSession": true,
  "viberMessage": {
    "receiver": "9SM4pcbqBp8bFgbZtgmqBA==",
    "minApiVersion": 1,
    "type": "text",
    "sender": {
      "name": "John McClane",
      "avatar": "http://avatar.example.com"
    },
    "text": "Hello World!!!",
    "fallbackText": "Test text"
  },
  "tgMessage": {
    "text": "Hello world!!!",
    "photoUrl": "https://example.com/image.jpg",
    "chatId": 544507441,
    "buttons": [
      {
        "action": "action",
        "text": "Press"
      }
    ]
  }
}

Промо повідомлення

Використовуються для маркетингових кампаній, реклами та інформаційних повідомлень.

JSON
{
  "id": "12358",
  "fromName": "AlphaName",
  "toPhone": "380680000000",
  "messageType": "promo",
  "sheduledSent": "2023-12-04T16:18:00.000+02:00",
  "buttonText": "test",
  "buttonAction": "https://www.google.com/",
  "wheterCheckSession": true,
  "viberMessage": {
    "receiver": "9SM4pcbqBp8bFgbZtgmqBA==",
    "minApiVersion": 1,
    "type": "picture",
    "sender": { 
      "name": "John McClane", 
      "avatar": "http://avatar.example.com" 
    },
    "text": "Моя промоція, моє ім'я %name=1% моя тестова URL-адреса %url=1%",
    "media": "http://www.images.com/promo.jpg",
    "keyboard": {
      "type": "keyboard",
      "defaultHeight": true,
      "buttons": [{ 
        "actionType": "reply", 
        "actionBody": "відповісти мені", 
        "text": "Детальніше", 
        "textSize": "regular" 
      }]
    },
    "fallbackText": "Промо: Нова Промоція!"
  }
}

Viber Опитування

Viber Опитування, SMSBAT RESTful API

Інтерактивні повідомлення з опитуваннями та варіантами вибору для збору відгуків від користувачів.

JSON
{
  "id": "21111112",
  "fromName": "AlphaName",
  "toPhone": "380936670003",
  "messageType": "viber_survey",
  "ttl": 80,
  "viberMessage": {
    "ttl": 60,
    "text": "Оцініть якість обслуговування в нашому магазині. Ваш відгук допоможе стати кращими 💛",
    "survey": {
      "options": [
        "😍Все було супер!",
        "🙂Добре, але є куди рости",
        "😕Нормально",
        "😞Погано",
        "😡Жахливо"
      ]
    }
  },
  "customerData": {
    "type": "data"
  }
}

Flash Call

Автоматичний дзвінок для підтвердження номера телефону.

JSON
{
  "id": "15",
  "toPhone": "380669227498",
  "flashcallText": "343",
  "fromName": "alphaname",
  "messageType": "flashcall"
}

Змінні в повідомленнях

Для відправлення повідомлень зі змінним вмістом слід використовувати наступний синтаксис

Синтаксис змінних

Щоб включити змінну в повідомлення, обраміть ідентифікатор змінної між '%' і вкажіть тип змінної.

Приклад
"text": "Моя змінна %name=id%"
Типи змінних
name
%name=id%
Назва змінної
url
%url=id%
URL-адреса змінної
short_url
%short_url=id%
Скорочена URL-адреса змінної

Важливо!

Перед відправленням повідомлення із змінним вмістом змінні мають бути завантажені на https://api.counterbat.com/api/items

Viber Survey Message Builder

Створіть та відправте Viber Survey повідомлення з інтерактивним опитуванням

85/85
17/50
25/50
11/50
8/50
9/50

Приклад відповіді

Після успішного відправлення повідомлення API повертає наступну відповідь

JSON
[
  {
    "messageId": "f5af2610-0e3e-42f5-888d-c65561deed14",
    "trackinId": "12358"
  }
]
Поля відповіді
messageId
Guid
Унікальний ідентифікатор повідомлення в системі
trackinId
String
Унікальний ідентифікатор повідомлення, за яким можна отримати статус