Документация для разработчиков

Интегрируйте возможности iHAQ в ваши приложения

Обновлено: 15 июня 2026 г.

WebSocket API (v1)

iHAQ предоставляет API на базе WebSockets для получения уведомлений о донатах и других событиях в реальном времени. Сервер работает на базе библиотеки Socket.IO версии 4.x.

WSSПодключение к серверу

Для установки соединения используйте следующий URL, передав ваш api_token. Найти свой токен можно в панели управления: Настройки стрима (поле «API токен»), либо получить его программно через OAuth2 API данных пользователя.

wss://ihaqdonate.com/ws/integrations/socket.io/v1/{api_token}

Пример подключения на Python (библиотека python-socketio):

import asyncio
import socketio

iHAQ_API_TOKEN = "e1f2d3c4-b5a6-4978-80ca-9b8a7c6d5e4f"

sio_ihaq = socketio.AsyncClient()

@sio_ihaq.on('message')
async def on_message(data):
    print("Получено новое сообщение:", data)
    if data.get('type') == 'donation':
        print("Это донат от:", data.get('message', {}).get('donatorName'))

async def main():
    await sio_ihaq.connect(
        "https://ihaqdonate.com",
        transports=["websocket"],
        socketio_path=f"ws/integrations/socket.io/v1/{iHAQ_API_TOKEN}"
    )
    await sio_ihaq.wait()

if __name__ == '__main__':
    asyncio.run(main())

Формат событий

Все события приходят по WebSocket-каналу с именем message. Внутри передается JSON-объект, где корневое поле type указывает на тип уведомления (например, "donation"), а поле message содержит сами данные.

Получение донатов (type: "donation")

Событие отправляется при успешной оплате доната пользователем. Пример структуры данных:

{
  "type": "donation",
  "message": {
    "id": "d8c7b6a5-4f3e-4d2c-1b0a-9e8d7c6b5a4f",
    "typeId": 1,
    "amount": "100.00",
    "message": "Тестовый донат",
    "currency": "rub",
    "donatorName": "User",
    "videoLink": "https://youtu.be/BF3wM5Onh6..."
  }
}

Параметры объекта message:

СвойствоТипОбязательноОписание
idString (uuidv4)ДаУникальный идентификатор транзакции
typeIdNumberДаУникальный идентификатор типа доната (например, 1 — message). См. полный список кодов ниже.
amountStringДаСумма пожертвования в строковом формате (например, "100.00")
messageStringДаТекст сообщения, прикрепленного к донату
currencyStringДаБуквенный код валюты (например, "rub" для российских рублей)
donatorNameStringДаИмя отправителя (псевдоним)
videoLinkStringНетСсылка на прикрепленное медиа (видео/аудио), если имеется

Справочник кодов (typeId)

Ниже представлен полный список идентификаторов типов супер-донатов и событий, которые передаются в поле typeId:

IDВнутреннее название (тип виджета)
1Обычное сообщение
2Я должен
17Викторина
18Пульт
100Партнерский супер-донат

GETТестирование интеграции

Для генерации тестового сообщения и проверки работы вашего WebSocket-подключения выполните GET-запрос по следующему адресу:

https://ihaqdonate.com/api/v1/integration/test/{api_token}