Skip to main content

Creator Platform Overview

The Creator platform (Creators Revolution) provides content creation, multi-platform social publishing, podcast distribution, and AI-assisted content generation.

Core Capabilities

FeatureDescription
Content ManagementCreate, schedule, and publish posts across platforms
Social PublishingDistribute to Twitter, LinkedIn, Instagram, YouTube, TikTok, Mastodon
Podcast DistributionManage shows, episodes, seasons, and RSS feeds
Media ManagementUpload and manage images, video, audio, and documents via CDN
AI Content GenerationAI-assisted content creation and optimization
Campaign ManagementOrganize content into campaigns with scheduling

Architecture

The Creator platform runs as a Rust microservice (port 8004) behind the Go API Gateway:

Flutter Creator Shell → API Gateway → Creator Service (Rust)
→ Distribution Service (Go)
→ Cloudflare R2 (Media Storage)
  • Creator Service handles content CRUD, scheduling, media uploads, and podcast management
  • Distribution Service orchestrates multi-platform publishing
  • Cloudflare R2 stores media assets with CDN delivery

Content Lifecycle

Posts follow a state machine through their lifecycle:

Draft → Scheduled → Publishing → Published
→ Failed
Published → Archived
  • Draft — Content is being authored, not yet scheduled
  • Scheduled — Queued for future publishing at a specific time
  • Publishing — Actively being distributed to target platforms
  • Published — Successfully delivered to all target platforms
  • Failed — Publishing failed on one or more platforms
  • Archived — Removed from active display

Authentication

All Creator endpoints require a valid JWT Bearer token. Content creators need the content_creator role assigned through the Platform policy engine.

# Authenticate
TOKEN=$(curl -s -X POST https://dev.api.olympuscloud.ai/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"email": "creator@example.com", "password": "..."}' | jq -r '.status.access_token')

# List posts
curl -s https://dev.api.olympuscloud.ai/v1/creator/posts \
-H "Authorization: Bearer $TOKEN" | jq .

Key Endpoints

MethodPathDescription
POST/v1/creator/postsCreate a new post
GET/v1/creator/postsList posts with filtering
POST/v1/creator/posts/:id/publishPublish immediately
POST/v1/creator/posts/:id/scheduleSchedule for later
POST/v1/creator/media/uploadInitiate media upload
POST/v1/creator/episodesCreate podcast episode
POST/v1/creator/oauth/:platform/authorizeConnect social account

Flutter Shells

Two Flutter shells serve the Creator platform:

ShellPurposeEntrypoint
creator_adminContent creation, publishing, analyticsmain_creator.dart
creator_audienceConsumer-facing content consumptionmain_creator.dart (different APP_EXPERIENCE)