Chat API

📋 Table of Contents

Overview

The Chat API provides comprehensive real-time communication services for the OASIS ecosystem. It handles conversation management, message sending, real-time updates, and advanced chat features with support for multiple conversation types and media sharing.

Conversation Management

Get All Conversations

GET /api/chat/conversations
Authorization: Bearer YOUR_TOKEN

Query Parameters:

  • limit (int, optional): Number of results (default: 50)

  • offset (int, optional): Number to skip (default: 0)

  • status (string, optional): Filter by status (Active, Archived, Deleted)

  • type (string, optional): Filter by type (Direct, Group, Channel)

  • sortBy (string, optional): Sort field (lastMessage, createdAt, name)

  • sortOrder (string, optional): Sort order (asc/desc, default: desc)

Response:

Get Conversation by ID

Parameters:

  • conversationId (string): Conversation UUID

Response:

Create Conversation

Request Body:

Response:

Update Conversation

Parameters:

  • conversationId (string): Conversation UUID

Request Body:

Delete Conversation

Parameters:

  • conversationId (string): Conversation UUID

Message Operations

Send Message

Parameters:

  • conversationId (string): Conversation UUID

Request Body:

Response:

Get Messages

Parameters:

  • conversationId (string): Conversation UUID

Query Parameters:

  • limit (int, optional): Number of results (default: 50)

  • offset (int, optional): Number to skip (default: 0)

  • type (string, optional): Filter by message type (text, image, file, voice, video)

  • startDate (string, optional): Start date (ISO 8601)

  • endDate (string, optional): End date (ISO 8601)

  • sortBy (string, optional): Sort field (timestamp, content)

  • sortOrder (string, optional): Sort order (asc/desc, default: desc)

Response:

Edit Message

Parameters:

  • conversationId (string): Conversation UUID

  • messageId (string): Message UUID

Request Body:

Response:

Delete Message

Parameters:

  • conversationId (string): Conversation UUID

  • messageId (string): Message UUID

Response:

Real-time Communication

Get Conversation Participants

Parameters:

  • conversationId (string): Conversation UUID

Response:

Add Participant

Parameters:

  • conversationId (string): Conversation UUID

Request Body:

Response:

Remove Participant

Parameters:

  • conversationId (string): Conversation UUID

  • userId (string): User UUID

Response:

Update Participant Role

Parameters:

  • conversationId (string): Conversation UUID

  • userId (string): User UUID

Request Body:

Chat Analytics

Get Chat Statistics

Query Parameters:

  • timeframe (string, optional): Timeframe (hour, day, week, month)

  • conversationId (string, optional): Filter by conversation ID

Response:

Get Conversation Analytics

Parameters:

  • conversationId (string): Conversation UUID

Response:

Get Chat Health

Response:

Error Responses

Conversation Not Found

Message Not Found

Permission Denied

Participant Not Found

Encryption Error


← Previous: Map API | Next: Messaging API

Last updated