# Social Media Approval Workflow

Temporary product name: `Socialize`

## Project Intent

Build `Socialize`, an application that replaces the current approval process based on Google Drive, phone calls, emails, and spreadsheets.

The product is not a public social network. It is an internal/external workflow tool for content review, feedback, approval, and publication readiness.

## Shared Vocabulary

- Approval workflow: the end-to-end process from draft creation to final approval.
- Content item: the reviewable unit that bundles assets, publication message or copy, dates, and channel targets.
- Asset: a file attached to a content item, such as a video, image, or document.
- Revision: a new version of an asset or copy after feedback.
- External reviewer: a client or partner who reviews content without being part of the internal team.
- Provider: an external production partner, such as a film crew, photographer, editor, or designer, who may deliver drafts and receive change requests.
- Software as a Service (SaaS): a cloud-based product used through the web, such as Canva, MailChimp, HootSuite, or Metricool.
- Minimum Viable Product (MVP): the smallest product version that solves the main pain point well enough to validate the market.
- Service Level Agreement (SLA): an agreed service target, such as a review deadline or escalation threshold.

## Problem Statement

Social media managers and production teams currently manage content approvals manually:

- Assets are stored in Google Drive.
- The social media manager may have back-and-forth with both upstream providers and downstream clients.
- Feedback is exchanged by phone, email, messages, and spreadsheets.
- Version history is unclear.
- It is hard to know which file is the latest one.
- Comments are scattered across multiple channels.
- Internal approvals and client approvals follow similar patterns but are not centralized.
- Follow-ups are manual, so approvals get delayed.

Result: too much back-and-forth, poor traceability, avoidable delays, and risk of publishing the wrong asset or outdated copy.

## Existing Tools Observed

- Google Drive for videos, images, calendars, and documents
- Google Sheets or similar for tracking comments and status
- Phone and email for review/approval conversations
- HootSuite
- Metricool
- Canva
- MailChimp

## Primary Users

- Social media manager
- Account manager / customer success
- Client approver
- External provider / production partner
- Internal producer
- Internal employee / content contributor
- Administrator

## Core Use Cases

### 1. Client Approval Workflow

A social media manager prepares content for a client and sends it for approval.

The client should be able to:

- view the content package
- preview files
- read captions, descriptions, and project notes
- leave comments
- request changes
- approve or reject

The team should be able to:

- see approval status in real time
- answer comments in context
- upload revised versions
- keep a clear audit trail of who said what and when
- know exactly which version is approved

### 2. Internal Production Workflow

The same workflow should work internally for producers, employees, and external production partners before the content is shown to the client or scheduled for publishing.

Example:

- contributor uploads draft
- external provider can upload draft or revised media
- producer reviews and requests changes
- manager approves for client review
- client approves
- content is marked ready to publish

### 3. Content Package Review

Approval should not be limited to a single file. A review item may include:

- video
- image
- document
- publication message / caption / copy
- hashtags
- links
- publication dates
- target channels or social networks

## Current Workflow Summary

Typical current flow:

1. Team creates media assets.
2. Files are placed in Google Drive by the team or by external providers.
3. A manager sends links by email or message to providers, internal stakeholders, or clients.
4. Feedback comes back by phone, email, spreadsheet, or chat.
5. Team manually consolidates comments across provider feedback and client feedback.
6. A revised version is uploaded.
7. The cycle repeats until someone says it is approved.
8. Approval status is manually tracked elsewhere.

Main failure points:

- no single source of truth
- no structured approval states
- no centralized threaded comments
- no deadline reminders
- no reliable audit trail
- no approval gate before publishing

## Target Workflow

1. Create a project and associate it with a client.
2. Create a review item or approval request.
3. Attach assets or import them from Google Drive.
4. Add metadata:
   - title
   - publication message / caption / copy
   - target platform or social network
   - publication dates by network when relevant
   - due date
   - reviewer(s)
5. Send review request.
6. Reviewers comment directly on the item.
7. Team or provider uploads a revision or responds to comments.
8. System tracks versions, status changes, and workflow events.
9. Reviewer approves, rejects, or requests changes.
10. Once all required approvals are complete, item becomes ready for scheduling/publishing.

## Core Domain Objects

- Workspace: the top-level account boundary for one agency or one operating team.
- Client: the business, creator, or brand receiving the service and approving content.
- Team member: an internal user working on content, reviews, or coordination.
- Reviewer: any person asked to review and approve, whether internal or external.
- Provider: an external production contributor such as a photographer, videographer, editor, or designer.
- Project: the main work container for a client, grouping related content items, notes, participants, and timelines.
- Content item: the reviewable unit that contains assets, publication message, channel targets, due dates, and approval state.
- Asset: an attached file, such as a video, image, or document, referenced from Google Drive or stored directly.
- Asset version: a specific revision of an asset, with traceability to who uploaded it and when.
- Comment thread: a contextual discussion attached to a content item, asset, or revision.
- Approval request: the act of asking one or more reviewers to review a specific version.
- Approval decision: the outcome of a review request, such as approved, rejected, or changes requested.
- Status history: the audit trail of workflow states and transitions over time.
- Publication target: the intended destination for publication, such as Instagram, Facebook, LinkedIn, or a newsletter.
- Notification event: a workflow event that informs users something changed, such as a new comment, revision, request, or approval.

## Suggested Status Model

- Draft
- In internal review
- Changes requested internally
- Internal changes in progress
- Ready for client review
- In client review
- Changes requested by client
- Client changes in progress
- Approved
- Rejected
- Ready to publish
- Published
- Archived

## Minimum Viable Product (MVP) Scope

The first version should focus on approval workflow, not direct publishing.

### MVP Features

- authentication and user roles
- workspace/client/project structure
- create a content item with metadata
- upload assets or attach Google Drive links while keeping Google Drive as the source of truth when required by the client
- version tracking for files and copy
- centralized comments
- approval decisions: approve, reject, request changes
- activity timeline / audit trail
- status dashboard by client, project, and due date
- notifications and reminders when actions are completed or workflow events occur
- simple approval portal for external clients

### Strong MVP Candidate Features

- required approvers
- approval deadline
- due dates per publication target or social network
- compare current version vs previous version
- "latest approved version" indicator
- comment resolution
- filtering by status, client, assignee, due date

## Phase 2 Opportunities

- Google Drive integration with file sync/import
- HootSuite / Metricool export or handoff
- Canva asset linking
- MailChimp approval workflow for newsletters
- calendar integration for publication planning visibility
- annotated comments on images or video timestamps
- reusable approval templates by content type
- Service Level Agreement (SLA) reminders and escalations
- analytics on turnaround time and bottlenecks
- approval by email link
- multi-stage approval rules per client

## Key Automation Opportunities

- auto-request approval when a content item reaches a defined stage
- automatic notifications when a workflow action is completed or a workflow event occurs
- automatic reminders before approval deadlines
- automatic escalation when approval is overdue
- automatic version labeling
- automatic "ready to publish" state when all approvals are complete
- automatic audit trail for every upload, comment, and decision
- automatic client-facing review link generation
- automatic notification when a new revision addresses requested changes

## Important Product Decisions

### 1. System of record for assets

Options:

- keep Google Drive as file storage and build workflow around it
- upload files directly into this new application
- support both

Recommended first assumption:

Keep Google Drive as the source of truth when the client requires ownership there, and support direct uploads later as an option. The first version should work cleanly with Drive links and imported metadata before deeper synchronization is considered.

### 2. External reviewer experience

Options:

- reviewer account required
- magic-link access without full account
- both

Recommended first assumption:

Use magic-link review access for clients to reduce friction.

### 3. Approval granularity

Possible approval units:

- entire content item
- per asset
- per caption/copy
- per channel variation

Recommended first assumption:

Approve at the content item level in the Minimum Viable Product (MVP), with comments attached to assets and copy.

## Business Rules To Confirm

These do not block initial scoping, but we should capture them early so the product behavior matches the real approval process.

- Can a client approve with unresolved comments?
- Does approval require one reviewer or multiple reviewers?
- Can internal approval and client approval happen in parallel?
- Is approval valid only for the latest version?
- Can an approved item be edited without reopening review?
- Do different clients require different workflows?
- Are videos, images, and documents all equally important on day one?
- Is scheduling/publishing inside scope, or only "approval-ready" handoff?

## Open Questions For Next Interview

- Who is the buyer: agency, freelancer, or in-house marketing team?
- Is the first target market agency-to-client approval, internal team approval, or both?
- What content types are highest priority: video, image, documents, captions, newsletters?
- How often do clients request changes after verbal approval?
- What is the most painful step today?
- What tools must remain in place at launch?
- What approvals need legal or compliance traceability?
- How many reviewers usually participate per item?
- Is bilingual support required?
- Is mobile review important on day one?

## Minimum Viable Product (MVP) Success Criteria

- reduce approval turnaround time
- reduce back-and-forth across email/phone/spreadsheets
- give one clear source of truth for latest version and current status
- let a client approve without training
- let the team see blocked items instantly

## Product Positioning

This product should be positioned as:

"A review and approval workflow for social media content, not another content creation tool."

The value is coordination, traceability, and faster approval cycles.

## First Build Recommendation

Build the first release around this narrow flow:

1. team creates content item
2. team uploads files and copy
3. internal reviewer comments and requests changes
4. team submits to client
5. client comments and approves via simple link
6. item becomes ready for publishing handoff

If this flow works cleanly, integrations and scheduling can be added later.
