Page cover

OpenAPI

Open API Documentation for Chroom

The Chroom Open API provides developers with a flexible and powerful set of tools to integrate real-time communication features into their applications. Built on WebRTC and a decentralized infrastructure, the API is designed for seamless integration, scalability, and high performance. Below is a detailed guide on how to leverage the Chroom API for various use cases.

1. Introduction to Chroom API

The Chroom API is a RESTful interface designed for developers to access and control the decentralized RTC network. It enables applications to initiate meetings, manage media streams, and interact with the Chroom blockchain layer.

Key Benefits:

  • Decentralized architecture for robust and secure operations.

  • Real-time audio, video, and data streaming.

  • Blockchain-backed transparency for data and transactions.

2. Key Features

  • Meeting Management: Start, join, and manage meetings programmatically.

  • Resource Allocation: Control media nodes for optimized performance.

  • Analytics: Access real-time metrics on Quality of Service (QoS), bandwidth usage, and node health.

  • Token Economy: Interact with the token for rewards, payments, and governance.

  • Security: End-to-end encryption for data streams and secure API calls.

3. Authentication and Security

API Key Authentication

To access the API, developers must generate an API key via the Chroom dashboard. Each request must include this key in the headers:

Authorization: Bearer <API_KEY>

OAuth 2.0 Support

For advanced integrations, the Chroom API supports OAuth 2.0 for secure and scalable authentication.

Security Measures

  • Encrypted communication using HTTPS.

  • Rate limiting to prevent abuse.

  • Tokenized access control for granular permissions.

4. Core Endpoints

Meetings Management

Endpoint: /api/meetings

  • POST /create: Create a new meeting. Parameters:

    • title: String (Meeting title)

    • host: String (Host ID)

    • participants: Array (List of participant IDs)

    • duration: Integer (Duration in minutes)

    {
      "meeting_id": "abc123",
      "status": "created",
      "start_url": "https://chroom/start/abc123",
      "join_url": "https://chroom/join/abc123"
    }

5. Use Cases

  1. Educational Platforms: Embed Chroom API to enable live classes with low latency and interactive features like screen sharing.

  2. Gaming: Use real-time audio and video for multiplayer gaming communication.

  3. Telemedicine: Securely conduct remote consultations with HIPAA-compliant video streams.

  4. Corporate Tools: Integrate decentralized meetings into project management systems for enhanced collaboration.

6. Developer Guidelines

Rate Limits

  • Standard Tier: 100 requests per minute.

  • Premium Tier: 1,000 requests per minute.

Error Handling

The Chroom API uses standard HTTP status codes:

  • 200 OK: Request succeeded.

  • 400 Bad Request: Validation error.

  • 401 Unauthorized: Invalid API key or token.

  • 500 Internal Server Error: Unexpected error on the server.

Best Practices

  • Cache non-sensitive data to reduce API calls.

  • Use pagination for endpoints returning large datasets.

  • Secure API keys in environment variables.

Last updated