API

ITR Messenger предоставляет REST API для работы с чатами, сообщениями, файлами и звонками. Для real-time событий используется WebSocket.

Базовый URL

Разработка: http://localhost:4000/api/v1. Production: https://<ваш-домен>/api/v1.

Аутентификация

Большинство эндпоинтов требуют JWT. Токен передаётся в заголовке:

Authorization: Bearer <access_token>

После входа (POST /auth/login) в ответ приходят access_token и refresh_token. Истёкший access обновляется через POST /auth/refresh с телом { "refresh_token": "..." }.

Лимиты

Ориентировочно: 100 запросов в минуту для аутентифицированных пользователей, 20 — для неаутентифицированных. Точные значения задаются в конфигурации бэкенда.

WebSocket

Подключение к /socket (Phoenix Socket). После подключения клиент присоединяется к каналу user:<user_id>. По каналу приходят события: new_message, incoming_call, participant_joined, call_accepted и др. Требуется передача токена при подключении (например, в параметрах).

Authentication

Users

Chats

Files

Calls

Mini Apps

Полный перечень эндпоинтов с кодами ответов и схемами — в разделе Справочник API.