TEASEDocs
ProductsStream

Who needs it

The roles Stream is built for, and what each one can actually do here.

What a team member can reach in Stream is governed by team-access grants — a separate, Account Platform-owned mechanism (app/core/team_access.py; see Boundaries). This page describes what each role does once they're in, not how the grant is configured.

RoleComes here for
Workspace ownerEverything — connecting platforms, keys, scenes, automation
Team memberWatching the live preview, closing their own preview session
TraffickerNothing — Stream has no surface for this role
Platform operatorProvisioning the motor box, outside the admin panel entirely

Workspace owner

Most of Stream's configuration surface is explicitly marked owner-only in its own source: stream_camera.py, stream_studio.py, stream_native.py, stream_login.py, stream_targets.py, stream_cockpit.py, and stream_overlay.py all say so directly in their module docstrings. In practice, that's everything an owner would do to set a stream up and run it:

  • Connect platforms and manage keys. Chaturbate's Events API token, or a captured browser session for the webcam sites — see Connect Chaturbate and Connect a webcam platform.
  • Choose fan-out targets and layouts. Which platforms actually receive the stream, and whether each gets the wide or vertical frame.
  • Build and edit scenes. Layers, captions, the viewer counter, landing-page objects on air, per-platform overrides.
  • Run the cockpit. Go live, start/stop recording, turn on auto-live, rotate the stream key.
  • Set native platform settings. Room title, category, and tags shown on the platform's own page, separate from what's drawn in the frame.

Team member

The endpoints that read live status and chat — stream_hub.py, stream_scene.py, stream_ingest.py, and stream_door_admin.py — don't carry the same owner-only marker, and two of them (the door's live-preview WHEP endpoints) are explicitly gated by team_fence rather than an owner check. In practice, a team member's day in Stream is narrow:

  • Watch the live preview. The same WebRTC preview the cockpit shows, proxied through /stream/door/whep and /stream/hub/preview/{path}.
  • Close their own viewing session when they're done, without needing owner rights.

Not the same as chat moderation elsewhere

Stream's merged chat composer (/stream/hub/chat/send) lets whoever can reach it reply as the creator across every connected platform — check the current team-access grant for the account before assuming a team member has this open by default.

Trafficker

Stream has no code surface for this role at all — a trafficker's work is smart links, domains, and traffic sources, all of which live in Link. See Boundaries.

Platform operator

Provisioning the motor — the browser-session box that captures webcam-platform logins and drives chat for platforms without an official API — is an operator action outside the admin panel: app/products/stream/scripts/stream_motor_provision.py, run by hand against the running box, not exposed as a panel screen for any role.

What's next

Concepts — the vocabulary Stream's own screens and this section assume you already know.

On this page