Nuclom Docs
API Reference

Nuclom API Documentation

Nuclom is a comprehensive video collaboration platform that enables teams to create, share, and manage video content with advanced AI-powered features.

Nuclom API Documentation

Nuclom is a comprehensive video collaboration platform that enables teams to create, share, and manage video content with advanced AI-powered features.

Overview

The Nuclom API provides RESTful endpoints for managing video content, organizations, user authentication, and AI-powered video analysis. All endpoints return JSON responses and follow consistent patterns for error handling and data formatting.

Interactive API Reference

For a complete, interactive API reference with all endpoints, parameters, and response schemas, visit the Interactive API Reference.

You can also download the OpenAPI specification:

The OpenAPI specification is automatically generated from the Effect Schema definitions used for request/response validation, ensuring the documentation always stays in sync with the actual API behavior.

Base URL

https://nuclom.com/api

Authentication

The API uses Better Auth for authentication with support for:

  • Email/password authentication
  • OAuth providers (GitHub, Google)
  • Session-based authentication

For detailed authentication documentation, see Authentication.

API Structure

The API is organized into the following modules:

Authentication

  • User registration and login
  • OAuth provider integration
  • Session management
  • Password reset

Videos

  • Video CRUD operations
  • Video metadata management
  • Comments and discussions
  • Progress tracking

Organizations

  • Organization management
  • Team collaboration
  • User roles and permissions
  • Channel and series organization

AI Services

  • Video transcript analysis
  • AI-powered summaries
  • Action item extraction
  • Content insights

Response Format

All API responses follow a consistent format:

{
  "success": true,
  "data": {
    // Response data
  }
}

Error responses:

{
  "success": false,
  "error": "Error message"
}

Pagination

List endpoints support pagination with the following parameters:

  • page: Page number (default: 1)
  • limit: Items per page (default: 20, max: 100)

Paginated responses include metadata:

{
  "success": true,
  "data": {
    "items": [...],
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 150,
      "totalPages": 8
    }
  }
}

Error Handling

The API uses standard HTTP status codes:

  • 200 OK: Success
  • 201 Created: Resource created successfully
  • 400 Bad Request: Invalid request parameters
  • 401 Unauthorized: Authentication required
  • 403 Forbidden: Access denied
  • 404 Not Found: Resource not found
  • 500 Internal Server Error: Server error

Rate Limiting

API requests are rate-limited to ensure fair usage:

  • 100 requests per minute per IP address
  • 1000 requests per hour per authenticated user

Data Models

User

interface User {
  id: string;
  email: string;
  name: string;
  avatarUrl?: string;
  createdAt: string;
  updatedAt: string;
}

Organization

interface Organization {
  id: string;
  name: string;
  slug: string;
  description?: string;
  createdAt: string;
  updatedAt: string;
}

Video

interface Video {
  id: string;
  title: string;
  description?: string;
  duration: string;
  thumbnailUrl?: string;
  videoUrl?: string;
  authorId: string;
  organizationId: string;
  channelId?: string;
  seriesId?: string;
  transcript?: string;
  aiSummary?: string;
  createdAt: string;
  updatedAt: string;
}

Comment

interface Comment {
  id: string;
  content: string;
  timestamp?: string;
  authorId: string;
  videoId: string;
  parentId?: string;
  createdAt: string;
  updatedAt: string;
}

SDKs and Libraries

Official SDKs are available for:

  • JavaScript/TypeScript
  • Python
  • React hooks for frontend integration

Support

For API support and questions:

Changelog

See CHANGELOG.md for version history and updates.