Client Approvals

Built-in approval workflows.

Share a link. Client clicks. Client approves. No Figma, no Loom, no email chain. No account for the reviewer — ever.

The flow

Four steps. No friction.

From "here's the batch" to "approved and in the pipeline" — usually in under ten minutes.

1

Generate a link

Pick a batch, click "Create preview link". You get a secure, optionally-expiring URL — no setup wizard, no portal provisioning.

2

Send it

Paste into email, Slack, or a text message. Works on every device, every browser. No login screen greets your client.

3

Client decides

Approve, reject, or comment on each asset individually. Feedback is captured, timestamped, and attached to the asset record.

4

Pipeline reacts

A webhook fires the instant each decision lands. Your distribution pipeline picks up only what's approved — nothing else slips through.

The reviewer experience

Built for clients who hate portals

When your client opens a Clipsilo preview link, they see exactly what they need and nothing else:

  • Every asset in the batch, rendered inline — video, image, or document preview.
  • Per-asset Approve / Reject buttons, plus an optional note field.
  • Platform-specific metadata displayed next to each variant (caption, hook, aspect ratio).
  • Mobile-friendly layout. Optimized for a thumb and a coffee, not a dual-monitor setup.
  • No account creation, no password, no "please install our app".
clipsilo.io/preview/abc...xyz
Hero Video — 16:9 Approved
Hero Video — 9:16 Pending
Approve Reject

No account required for reviewers.

Your clients shouldn't have to create yet another login just to say "looks good." Preview links are cryptographically scoped to a single batch — no password, no portal, no lost invitation emails. Revoke a link any time from the admin dashboard.

Webhooks

Every decision fires an event

Subscribe once. Trigger anything — publishing, transcoding, notifications, analytics.

POST {your-webhook-url}
{
  "event": "asset.approved",
  "event_id": "evt_01j9x8k3pqrs",
  "data": {
    "asset_id": "ast_01j9x8k3pqrs",
    "batch_id": "btc_01j9x8k3pqrs",
    "approved_at": "2025-07-14T10:22:00Z",
    "reviewer_email": "client@example.com",
    "reviewer_note": "Love the hook. Ship it."
  }
}

# Also subscribe to:
#   asset.rejected       — fired when the client clicks Reject
#   batch.completed      — fired when every asset has a decision
#   preview.viewed       — fired on first open (engagement tracking)

Ready to organize your content pipeline?

Start your 7-day free trial. No credit card required. Cancel anytime.

7-day free trial · No credit card · Cancel anytime