blitzreels-video-editing

Video editing workflows with BlitzReels API — upload, transcribe, timeline editing, captions, overlays, backgrounds, export, and source-view ROI-aware reframing for stronger clipping flows.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "blitzreels-video-editing" with this command: npx skills add blitzreels/agent-skills/blitzreels-agent-skills-blitzreels-video-editing

BlitzReels Video Editing

Edit videos via the BlitzReels API: upload media, transcribe, edit timeline, apply captions, add overlays and backgrounds, then export.

If the task is specifically long-form to shorts, podcast-to-shorts, suggestion-backed clipping, or public automatic-layout reframe planning, prefer the blitzreels-clipping skill first and come back here for lower-level timeline work.

Important: project preview and visual QA endpoints now exist. Use them when an agent needs to verify framing, caption placement, or layout visually before export.

Quick Start

# Upload a video from URL
bash scripts/editor.sh upload-url PROJECT_ID "https://example.com/video.mp4"

# Add to timeline and transcribe
bash scripts/editor.sh add-media PROJECT_ID MEDIA_ID
bash scripts/editor.sh transcribe PROJECT_ID MEDIA_ID

# Trim, caption, export
bash scripts/editor.sh trim PROJECT_ID ITEM_ID 1.0 -2.0
bash scripts/editor.sh captions PROJECT_ID viral-center
bash scripts/editor.sh export PROJECT_ID --resolution 1080p

Primary Workflow

  1. Create projectPOST /projects {"name":"...", "aspect_ratio":"9:16"}
  2. Upload mediaeditor.sh upload-url (URL import) or 2-step presigned upload
  3. Add to timelineeditor.sh add-media places media on the timeline
  4. Transcribeeditor.sh transcribe generates word-level captions
  5. Get contexteditor.sh context to see timeline state
  6. Edit timeline — trim, split, delete, reorder, auto-remove silences
  7. Apply captionseditor.sh captions <presetId> for styled subtitles
  8. Add overlays — text overlays, motion code, motion graphics
  9. Add background — fill layers (gradients, cinematic, patterns)
  10. Exporteditor.sh export renders final video with download URL

Scripts

scripts/editor.sh

Subcommand wrapper for common editing operations.

CommandUsageDescription
upload-url<projectId> <url> [name]Upload media from URL
transcribe<projectId> <mediaId>Transcribe + poll until done
context<projectId> [mode]Get project context (default: timeline)
timeline-at<projectId> <seconds>Get items at timestamp
trim<projectId> <itemId> <startDelta> <endDelta>Trim item edges
split<projectId> <itemId> <atSeconds>Split item at time
delete-item<projectId> <itemId>Delete timeline item
add-media<projectId> <mediaId> [startSec]Add media to timeline
add-broll<projectId> <JSON>Add B-roll clip
captions<projectId> <presetId>Apply caption preset
export<projectId> [--resolution R]Export + poll + download URL

Run bash scripts/editor.sh --help for full usage.

scripts/blitzreels.sh

Generic API helper for direct endpoint calls. Use for overlays, effects, and advanced operations where editor.sh doesn't have a shortcut.

bash scripts/blitzreels.sh METHOD /path [JSON_BODY]

Environment Variables

VariableRequiredDescription
BLITZREELS_API_KEYYesAPI key (br_live_...)
BLITZREELS_API_BASE_URLNoOverride base URL (default: https://www.blitzreels.com/api/v1)
BLITZREELS_ALLOW_EXPENSIVENoSet to 1 for export calls via blitzreels.sh

API Endpoint Index

Projects

MethodPathDescription
POST/projectsCreate project
GET/projects/{id}Get project details
PATCH/projects/{id}Update project settings
DELETE/projects/{id}Delete project
GET/projectsList projects

Media

MethodPathDescription
POST/projects/{id}/mediaImport media from URL
POST/projects/{id}/upload/presignedGet presigned upload URL
POST/projects/{id}/upload/finalizeFinalize presigned upload

Transcription

MethodPathDescription
POST/projects/{id}/transcribeStart transcription job
GET/jobs/{jobId}Poll job status
GET/projects/{id}/context?mode=transcriptGet transcript
POST/projects/{id}/captions/regenerateRe-transcribe media

Captions

MethodPathDescription
POST/projects/{id}/captionsApply caption preset
GET/projects/{id}/captions/styleGet current style
PATCH/projects/{id}/captions/styleUpdate style settings
GET/projects/{id}/captions/presetsList presets by category
PATCH/projects/{id}/captions/{captionId}Update caption words/timing
DELETE/projects/{id}/captions/{captionId}Delete caption
POST/projects/{id}/captions/words/emphasisEmphasize specific words

Timeline Editing

MethodPathDescription
POST/projects/{id}/timeline/mediaAdd media to timeline
POST/projects/{id}/timeline/trimTrim item by deltas
POST/projects/{id}/timeline/splitSplit item at timestamp
DELETE/projects/{id}/timeline/items/{itemId}Delete item
PATCH/projects/{id}/timeline/items/{itemId}Update item
POST/projects/{id}/timeline/items/batch-updateBatch update items
PATCH/projects/{id}/timeline/items/{itemId}/volumeSet volume
PATCH/projects/{id}/timeline/items/{itemId}/transformSet transform
POST/projects/{id}/timeline/pack-clipsRemove gaps
POST/projects/{id}/timeline/silence-detectionDetect silences
POST/projects/{id}/timeline/mistake-detectionAI mistake detection
POST/projects/{id}/timeline/caption-recutCaption-based recut plan

Overlays — Text, Motion Code, Motion Graphics

MethodPathDescription
POST/projects/{id}/text-overlaysAdd text overlay
PATCH/projects/{id}/text-overlays/{oid}Update text overlay
DELETE/projects/{id}/text-overlays/{oid}Remove text overlay
POST/projects/{id}/motion-codeAdd animated code block
PATCH/projects/{id}/motion-code/{cid}Update code block
POST/projects/{id}/motion-graphicsAdd motion graphic
PATCH/projects/{id}/motion-graphics/{gid}Update motion graphic

Backgrounds

MethodPathDescription
POST/projects/{id}/fill-layersAdd fill layer
PATCH/projects/{id}/fill-layers/{lid}Update fill layer

Context & State

MethodPathDescription
GET/projects/{id}/context?mode=...Get project context
GET/projects/{id}/timeline/at?time_seconds=XItems at timestamp
POST/projects/{id}/preview-frameRender one still preview
POST/projects/{id}/preview-framesRender multiple still previews
POST/projects/{id}/visual-analysisRun structured frame QA
GET/projects/{id}/visual-debugGet machine-readable layout geometry
POST/projects/{id}/timeline/undoUndo last action

Media View Repair

MethodPathDescription
POST/projects/{id}/timeline/media-views/{timelineItemId}Upsert source-view crop/canvas state for one item
POST/projects/{id}/timeline/media-views/duplicateDuplicate a linked source view to another item

Clipping / Reframe Preview

MethodPathDescription
POST/workspace/media/assets/{assetId}/reframe-plan/previewGenerate a reframe plan plus preview stills before apply

Export & Jobs

MethodPathDescription
POST/projects/{id}/exportStart export (expensive)
GET/exports/{exportId}Export status + download URL
GET/projects/{id}/exportsExport history
DELETE/projects/{id}/exportsDelete all exports
GET/jobs/{jobId}Generic job polling

Effects & Keyframes

MethodPathDescription
POST/projects/{id}/timeline/effects/zoomAdd zoom effect
POST/projects/{id}/timeline/effects/maskAdd mask effect
POST/projects/{id}/timeline/effects/color-gradeAdd color grade
POST/projects/{id}/timeline/items/{itemId}/keyframesCreate keyframe

Context Modes

Use ?mode= to control what data the context endpoint returns:

ModeReturns
summaryProject metadata, duration, media count
assetsAll media assets with metadata
timelineFull timeline with items, layers, timing
transcriptWord-level transcript from transcription
fullEverything combined

Default: timeline

bash scripts/editor.sh context PROJECT_ID timeline
bash scripts/editor.sh context PROJECT_ID full

Upload Modes

URL Import (Simpler)

bash scripts/editor.sh upload-url PROJECT_ID "https://example.com/video.mp4"

Presigned 2-Step (For Local Files)

# Step 1: Get presigned URL
PRESIGNED=$(bash scripts/blitzreels.sh POST /projects/PROJECT_ID/upload/presigned \
  '{"fileName":"video.mp4","contentType":"video/mp4"}')

# Step 2: Upload to presigned URL
curl -X PUT "$(echo $PRESIGNED | jq -r '.url')" \
  -H "Content-Type: video/mp4" \
  --data-binary @video.mp4

# Step 3: Finalize
bash scripts/blitzreels.sh POST /projects/PROJECT_ID/upload/finalize \
  "{\"storageKey\":\"$(echo $PRESIGNED | jq -r '.key')\"}"

Quick Reference

  • Caption presets: 30+ presets across 6 categories — see references/caption-styles.md
  • Active word animations: highlight, scale, glow, lift, bounce, punch, slam, elastic, shake, none
  • Motion code themes: github-dark, one-dark, dracula, nord, monokai, tokyo-night
  • Fill layer presets: 38+ across 7 categories — see references/fill-layers.md
  • Timeline layer order: caption(0) → effect(1) → image(2) → video(3) → audio(4) → background(5)

References

  • references/clipping.md — Long-form to short workflow, podcast QA loop, preview/repair endpoints
  • references/caption-styles.md — All 30+ presets, CaptionStyleSettings schema, animations
  • references/overlays.md — Text overlays, motion code, motion graphics schemas
  • references/fill-layers.md — 38+ background presets, FillLayerSettings schema
  • references/timeline-ops.md — Timeline endpoints, AI features, keyframes, effects
  • references/export-settings.md — Export params, codecs, polling pattern
  • examples/edit-uploaded-video.md — Full upload→edit→export walkthrough
  • examples/enhance-with-overlays.md — Adding graphics to existing project

Safety & Notes

  • Use https://www.blitzreels.com/api/v1 as base URL (avoid redirect from non-www)
  • Export and B-roll generation are expensive — require BLITZREELS_ALLOW_EXPENSIVE=1
  • editor.sh export sets this automatically; blitzreels.sh requires explicit opt-in
  • Download URLs are temporary (24h TTL)
  • Full OpenAPI spec: https://www.blitzreels.com/api/openapi.json

Rate Limits

PlanRequests/minRequests/day
Free10100
Lite301,000
Creator605,000
Agency12020,000

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

blitzreels-clipping

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

blitzreels-carousels-instagram

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

blitzreels-faceless

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

blitzreels-motion-graphics

No summary provided by upstream source.

Repository SourceNeeds Review