Roles & Permissions
Every Heliconflow user has one or more roles. Roles are not exclusive — a person can hold any combination. All access rules are enforced server-side; the UI adapts to show relevant controls, but the server is the authority.
Role reference
Writer
Creates and edits their own scripts. Can see their own qual status. Read-only on other users' scripts and all production records.
Qual Reviewer
Views all scripts in qual. Updates qual status, annotates, approves, rejects, or backburners. Cannot review their own scripts.
Editor
Views production grids. Updates status on assigned Video Cards. Adds Frame/file info. Creates Riff Video Cards. Can edit all Video Card fields. Upload, download, and delete video assets.
Shoot Lead
Manages the shoot calendar, assigns dates, creates Riff Video Cards. Can edit assigned scripts (no qual status change). Edits all Video Card fields. Manages talent and shoot segments.
Post Lead
Owns the posting schedule for both tracks across all clients. Can edit the Posting Scheduler and production records.
Manager
Read-only access to all grids, the Dashboard, and Reports. Cannot create or edit records.
Power User
Admin-level access minus client management and team member management (talent management only). Can do everything Admins can do except those two areas.
Admin
Full access — admin screens, audit log, notifications, reports, team management, client management.
Client User
Scoped to a single project (client). Sees only that client's content. Access enforced server-side.
Talent
Logs in to set availability, view assigned shoots, and download scripts. Has no access to production grids or scripts outside their assignments.
Role × feature matrix
| Feature area | Writer | Qual Reviewer | Editor | Shoot Lead | Post Lead | Manager | Power User | Admin | Client User | Talent |
|---|---|---|---|---|---|---|---|---|---|---|
| Create scripts | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | — | — |
| Edit own scripts | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | ✓ | — | — |
| Edit all scripts | — | ✓ | — | — | — | — | ✓ | ✓ | — | — |
| Approve scripts | — | ✓* | — | — | — | — | ✓ | ✓ | — | — |
| View all scripts | — | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | Scoped | — |
| Create/edit Video Cards | — | — | ✓ | ✓ | ✓ | — | ✓ | ✓ | — | — |
| Approve videos | — | ✓ | — | — | — | — | ✓ | ✓ | — | — |
| View production grids | — | — | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | Scoped | Scoped |
| Upload video assets | — | — | ✓ | ✓ | — | — | ✓ | ✓ | — | — |
| Upload to asset library | — | — | ✓ | ✓ | ✓ | — | ✓ | ✓ | — | — |
| Edit asset tags | — | — | — | — | — | — | — | ✓ | — | — |
| Manage posting schedule | — | — | — | — | ✓ | — | ✓ | ✓ | — | — |
| Manage shoot calendar | — | — | — | ✓ | — | — | ✓ | ✓ | — | — |
| Assign talent | — | — | — | ✓ | — | — | ✓ | ✓ | — | — |
| View reports | — | — | — | — | — | ✓ | ✓ | ✓ | — | — |
| Admin: clients | — | — | — | — | — | — | — | ✓ | — | — |
| Admin: team members | — | — | — | Talent only | — | — | Talent only | ✓ | — | — |
| Audit log | — | — | — | — | — | — | ✓ | ✓ | — | — |
| Talent portal | — | — | — | — | — | — | — | — | — | ✓ |
| Set own availability | — | — | — | — | — | — | — | — | — | ✓ |
\ Cannot approve own scripts*
Notification event reference
| Event | Who receives it |
|---|---|
| Script submitted for review | All active Qual Reviewers, Admins, Power Users (in-app) |
| Script approved | Writer: in-app + email. qualApproved group: email |
| Script sent back for revision | Writer: in-app + email |
| Script moved to backburner | Writer (if not self): in-app + email |
| Video sent to Qual | All active Qual Reviewers, Admins, Power Users (in-app + email for those with email enabled) |
| Video approved | Assigned editor: in-app + email. Jessie (default group): email |
| Video sent back to editing | Assigned editor: in-app + email |
| Video comment posted | Assigned editor: in-app only |
| Comment reply posted | Parent commenter (if different user): in-app only |
| Shoot scheduled (talent assigned + shoot date set) | Talent user: email |
| New talent account created | Talent: email (setup link) |
| Talent role added to existing staff account | Staff member: email |
| Password reset requested | Requesting user: email |
| Cooking Phase 1 approved | Phase 2 writer: in-app |
| Cristof video posted | Brennan: email |