API мессенджера должно разделять управление чатами, историю сообщений, отправку и загрузку файлов, проверяя участие пользователя в каждом чате.
Опишите API мессенджера: какие эндпоинты нужны для чатов, сообщений, контактов, отправки сообщений и загрузки вложений?
API мессенджера должно разделять управление чатами, историю сообщений, отправку и загрузку файлов, проверяя участие пользователя в каждом чате.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
API мессенджера должно разделять управление чатами, историю сообщений, отправку и загрузку файлов, проверяя участие пользователя в каждом чате.
Возможный контракт: GET/POST /chats, GET /chats/{id}/messages?cursor=..., POST /chats/{id}/messages, GET/POST /contacts, POST /uploads и подтверждение загрузки. Добавьте idempotency key отправки, стабильные message IDs, pagination и realtime events через WebSocket/SSE. Вложения валидируются, ссылки ограничиваются по доступу; конкретные поля согласуют отдельно.