Developers

Ephemeral sharing,
in your product.

The ClipShot API lets your app or pipeline upload a file and get back a self-destructing share link. No user accounts, no SDKs to bundle — one REST call. Used by the ClipShot Mac app itself.

Quick start

# Upload a screenshot — get a self-destructing link
curl -X POST https://clipshot.io/api/v1/clips \
  -H "Authorization: Bearer cs_live_YOUR_KEY" \
  -F "file=@screenshot.png" \
  -F "expiry_mode=time_based" \
  -F "expiry_minutes=60"

# → 201
{
  "success": true,
  "token": "3bHiJyPrFpH1sNui...",
  "url": "https://clipshot.io/c/3bHiJyPrFpH1sNui...",
  "delete_token": "kE9mQ2...",
  "expires_at": "2026-07-04T21:00:00+00:00"
}

Authentication

All v1 endpoints require an API key sent as a bearer token: Authorization: Bearer cs_live_…

Keys are issued manually while the API is in early access — request one via the support form (choose “API access”) and tell us briefly what you're building. Keys can be revoked at any time and are never rate-limited below 120 requests/minute.

Endpoints

POST /api/v1/clips

Upload a file (max 50 MB). Returns the share URL and a delete_token for early deletion.

Fields: file (required) · expiry_mode first_view | time_based · expiry_minutes 1–43200 · max_views 1–100

GET /api/v1/clips/{token}

Clip status and metadata — views, expiry, size. Checking status never counts as a view.

DELETE /api/v1/clips/{token}

Destroy a clip before it expires. Authorize with the X-Delete-Token header, or automatically if your key uploaded it.

Limits & behaviour

  • Max file size 50 MB; images, video and arbitrary files.
  • Rate limit 120 requests/minute per key.
  • Clips self-destruct on first view by default; time-based expiry up to 30 days.
  • Expired and deleted clips are removed from disk within minutes — deletion is permanent.
  • We log endpoint + status per request for usage stats. Never IP addresses.

Ready to build?

Get an API key and ship ephemeral sharing today.

Request an API key