Skip to content

Platform Management Entities

MediaMagic CRM includes entities for managing publishing platforms, distribution partners, and tracking distribution records.

Overview

Platform

The Platform entity represents publishing platforms and channels where content is distributed.

Fields

FieldTypeDescription
namevarcharPlatform name (e.g., "YouTube", "Rumble")
typeenumPlatform type: Video, Audio, Social, Newsletter
channelUrlurlPrimary channel URL
apiKeyvarcharAPI key for integration (encrypted)
isActiveboolPlatform is currently active
autoPublishboolEnable automatic publishing
priorityintPublishing priority order
descriptiontextPlatform notes

Platform Types

TypeExamplesUse Case
VideoYouTube, Rumble, Brighteon, OdyseeVideo hosting platforms
AudioTransistor, Spotify, Apple PodcastsPodcast hosting
SocialX, Facebook, Instagram, LinkedInSocial media
NewsletterSubstack, EmailWritten content distribution
LiveBoxcast, StreamYardLive streaming

Example Platforms

javascript
// YouTube Main Channel
{
  name: "YouTube - Main",
  type: "Video",
  channelUrl: "https://youtube.com/@mainchannel",
  isActive: true,
  autoPublish: true,
  priority: 1
}

// Rumble Channel
{
  name: "Rumble - Freedom",
  type: "Video",
  channelUrl: "https://rumble.com/c/freedomchannel",
  isActive: true,
  autoPublish: true,
  priority: 2
}

Partner

The Partner entity tracks media partners, syndication relationships, and content sharing agreements.

Fields

FieldTypeDescription
namevarcharPartner name/organization
typeenumPartner type: Syndication, Affiliate, Media, Guest
contactNamevarcharPrimary contact person
contactEmailemailContact email
websiteurlPartner website
agreementTypeenumAgreement: Exclusive, Non-Exclusive, Trial
startDatedatePartnership start date
endDatedatePartnership end date (if applicable)
revenueShareintRevenue share percentage
isActiveboolPartnership is active
notestextPartnership notes

Partner Types

TypeDescriptionExample
SyndicationContent redistributorsNews networks, aggregators
AffiliatePromotional partnersInfluencers, affiliated channels
MediaMedia organizationsOther podcasts, news sites
GuestRegular guest contributorsRecurring experts
ProductionProduction partnersStudios, editors

Relationship Diagram

DistributionRecord

The DistributionRecord entity tracks individual distributions of content to platforms or partners.

Fields

FieldTypeDescription
namevarcharDistribution name (auto-generated)
episodelinkRelated episode/content
platformlinkTarget platform
partnerlinkDistribution partner (optional)
statusenumDistribution status (see below)
distributionTypeenumType: Platform, Partner, Syndication
publishDatedatetimeScheduled/actual publish date
platformUrlurlPublished content URL
viewCountintTotal views/plays
revenuecurrencyRevenue from distribution
notestextDistribution notes

Distribution Status

The distribution lifecycle:

StatusDescription
QueuedWaiting to be distributed
ProcessingCurrently uploading/publishing
PublishedSuccessfully published
FailedDistribution failed
RemovedContent was removed

Kanban Board

Distribution records work well in Kanban view:

┌──────────┬──────────────┬───────────┬──────────┬──────────┐
│  Queued  │  Processing  │ Published │  Failed  │ Removed  │
├──────────┼──────────────┼───────────┼──────────┼──────────┤
│ Ep42 → YT│ Ep41 → Rumble│ Ep40 → YT │ Ep39 → FB│ Ep38 → X │
│ Ep42 → FB│              │ Ep40 → RUM│          │          │
│ Ep43 → YT│              │ Ep40 → FB │          │          │
└──────────┴──────────────┴───────────┴──────────┴──────────┘

Example Distribution Records

javascript
// YouTube distribution
{
  name: "Ep42 → YouTube Main",
  episode: "Episode 42",
  platform: "YouTube - Main",
  distributionType: "Platform",
  status: "Published",
  publishDate: "2026-02-09 10:00:00",
  platformUrl: "https://youtube.com/watch?v=xyz123",
  viewCount: 15420
}

// Partner syndication
{
  name: "Ep42 → Acme Media",
  episode: "Episode 42",
  partner: "Acme Media Network",
  distributionType: "Partner",
  status: "Published",
  publishDate: "2026-02-10 14:00:00",
  platformUrl: "https://acmemedia.com/episodes/42",
  revenue: 250.00
}

Automation Workflows

Auto-Distribution on Publish

When an episode is published, automatically create distribution records:

Distribution Tracking

Track distribution progress through the pipeline:

  1. Queued: Record created, waiting in queue
  2. Processing: Upload started, progress tracked
  3. Published: Upload complete, URL saved
  4. Analytics: View counts synced periodically

Use Cases

1. Multi-Platform Publishing

Track content distribution across all platforms:

  • Create episode
  • Set status to "Published"
  • System creates distribution records for all active platforms
  • Monitor each platform's publish status
  • Track views and revenue per platform

2. Partner Syndication

Manage content sharing with partners:

  • Establish partner relationship
  • Define revenue share terms
  • Distribute selected episodes to partner
  • Track syndication performance
  • Calculate partner payouts

3. Distribution Analytics

Analyze content performance by platform:

  • View total views across all platforms
  • Compare platform performance
  • Calculate revenue by distribution channel
  • Identify top-performing platforms
  • Optimize distribution strategy

Views & Layouts

Platform List

  • Name, Type, Status columns
  • Active/Inactive toggle
  • Auto-publish indicator
  • Priority ordering

Partner List

  • Name, Type, Contact columns
  • Active status
  • Agreement type
  • Revenue share percentage

Distribution Kanban

  • Group by Status
  • Color-coded by platform type
  • Inline URL editing
  • Quick status updates

MediaMagic CRM Documentation