IQ4

Описание

Программный интерфейс iQBot API позволяет отправлять сообщения клиентов из iQChannels в бот-платформу.

Взаимодействие с бот-платформой

Все запросы в бот-платформу отправляются в формате JSON. 

Для всех запросов необходимо указывать Content-Type: application/json

Авторизация в бот-платформе

ПараметрЗначениеКомментарий
МетодPOST
Путь/api/v1/auth/login/basic/default
Запрос
ПараметрТипОбязательныйКомментарий

email

StringДа

Данные учетной записи в бот-платформе,

использующейся для авторизации чат-платформы

password

StringДа

Данные учетной записи в бот-платформе,

использующейся для авторизации чат-платформы


Ответ
ПараметрТипОбязательныйКомментарий

status

StringНетСтатус запроса. Если все хорошо, то success

message

StringНет

Описание статуса запроса

Если все хорошо, то значение будет Login successful

payload



Блок

jwt

StringДаТокен доступа

exp

StringДаВремя жизни токена

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


{
"email": "superbot@bot.ru",
"password": "password"
}

Пример ответа:


{
    "status": "success",
    "message": "Login successful",
    "payload": {
        "jwt": "eyJhbGciOiJIUzI.......w3SfREY",
        "exp": 3600000
    }
}

Отправка сообщения в бот-платформу

ПараметрЗначениеКомментарий
МетодPOST
Путьapi/v1/bots/chat-bank/converse/sid/secured

botID - идентификатор чат-бота в бот-платформе

sid - уникальный идентификатор сессии для текущего диалога

АвторизацияBearerТокен берем из ответа на запрос авторизации
Запрос
ПараметрТипОбязательныйКомментарий
typestringдаПо умолчанию всегда "text"
text
stringдаТекст сообщения
payloadstringНетПри использовании кнопок или выпадающего списка заполняется значением из payload выбранного элемента

Ответ
ПараметрТипОбязательныйКомментарий
type
stringДаТип сообщения. Может быть text, card, carousel, single-choice, 
text
stringДаТекст сообщения
groupidstringНетПереадресация на группу операторов
operatoridstringНетПереадресация на оператора
closedialogbooleanНетЗакрытие диалога
isDropdownbooleanНетПризнак выпадающего списка (при type = singlechoice). Если TRUE - отображается выпадающий список, если FALSE - кнопки.
dropdownPlaceholderstringНетЗаглушка/значение по умолчанию для выпадающего списка
skillstringНетТип навыка
title
stringНетЗаголовок для картинки
image
stringНетСсылка на картинку
choicesБлокДа (при "type": "single-choice")

Список значений для кнопок или выпадающего списка

НаименованиеТипОбязательностьКомментарий
titlestringДаНазвание пункта
valuestringДаЗначение
actions
БлокДа, при "type": "card"

Список действий

НаименованиеТипОбязательностьКомментарий
title
stringДаНазвание кнопки
action
stringДа

Действие. Может быть:

Postback
URL
payload
stringДаЗначение - передается боту при нажатии на кнопку
items
БлокДа, при 
"type": "carousel"
Список объектов actions

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

{	
	"type": "text",     
	"text": "До которого часа работает банк?" 
}

Пример ответа:

{
    "responses": [
        {
            "type": "text",
            "text": "Переключаю вас на оператора",
            "markdown": true,
            "groupid": "100"
        }
    ]
}
Пример ответа с single-choice:


        {
            "type": "single-choice",
            "skill": "choice",
            "workflow": {},
            "text": "Добро пожаловать!\n\nЯ бот-банк IQBankBot, ваш личный помощник в управлении финансами и банк в мессенджере!\n\nЧтобы совершить любую операцию (пополнить, перевести, запросить выписку и прочее), достаточно написать команду мне в чат 😉\n\nНажми на кнопку \"Узнать об IQBankBot\", чтобы узнать больше обо мне. А если ты уже клиент банка, выбери «Я клиент IQBank».",
            "isDropdown": true,
            "dropdownPlaceholder": "Select...",
            "choices": [
                {
                    "title": "Я клиент IQBank",
                    "value": "auth_client"
                },
                {
                    "title": "Задать вопрос",
                    "value": "have_question"
                },
                {
                    "title": "Узнать об IQBankBot",
                    "value": "about_iqbank"
                }
            ],
            "markdown": true,
            "typing": true
      }
Пример ответа с "type""card"


{    
	"responses": [
        {            
			"type": "text",
            "workflow": {},
            "text": "Авторизация прошла успешно!",
            "markdown": true,
            "typing": true
        },        
		{            
			"type": "card",
            "title": "Visa Gold -7039\nОстаток: 8 973,00 RUR",
            "image": "https://iqbot.iqstore.ru/api/v1/bots/chat-bank/media/5lgn648ggh8pxnejfn0y-bank-mir-cutted.png",
            "actions": [
                {
                    "title": "Действия с картой",
                    "action": "Postback",
                    "payload": "locked-action"
                }
            ]
        },
        {
            "type": "card",
            "title": "Авангард - RUR -8775\nОстаток: 217,49 RUR",
            "image": "https://iqbot.iqstore.ru/api/v1/bots/chat-bank/media/5lgn648ggh8pxnejfn0y-bank-mir-cutted.png",
            "actions": [
                {
                    "title": "Действия с картой",
                    "action": "Postback",
                    "payload": "locked-action"
                }
            ]
        },
        {
            "type": "card",
            "title": "Авангард - RUR -8042\nОстаток: 2 186,46 RUR",
            "image": "https://iqbot.iqstore.ru/api/v1/bots/chat-bank/media/5lgn648ggh8pxnejfn0y-bank-mir-cutted.png",
            "actions": [
                {
                    "title": "Действия с картой",
                    "action": "Postback",
                    "payload": "locked-action"
                }
            ]
        }
    ]
}
Пример ответа с "type": "carousel"


{
    "responses": [
        {
            "type": "text",
            "workflow": {},
            "text": "Выбери вид карты",
            "markdown": true,
            "typing": true
        },
        {
            "type": "carousel",
            "workflow": {},
            "items": [
                {
                    "title": "Путешествия",
                    "subtitle": "",
                    "image": "https://iqbot.iqstore.ru/api/v1/bots/chat-bank/media/dwl4nqndn7nffggro1cm-bank-mir.png",
                    "actions": [
                        {
                            "action": "Postback",
                            "title": "Выпустить карту \"Путешествия\"",
                            "text": "",
                            "payload": "debet-card-mir-p"
                        }
                    ]
                },
                {
                    "title": "Возможности",
                    "image": "https://iqbot.iqstore.ru/api/v1/bots/chat-bank/media/2x1zhafe6q861oku85b0-mir-card.png",
                    "actions": [
                        {
                            "action": "Postback",
                            "title": "Выпустить карту \"Возможности\"",
                            "text": "",
                            "payload": "debet-card-mir-v"
                        }
                    ]
                }
            ]
        }
    ]
}
  • No labels