Scrnify CLI

Screenshot CLI for terminal and CI

Install `scrnify`, send Captures to the Scrnify API, and receive the generated screenshot or video URL on stdout. Your machine and CI runners do not need Chrome, Playwright browsers, sandbox flags, or cleanup scripts.

Install and capture

brew install scrnify/tap/scrnify
scrnify --version
export SCRNIFY_API_KEY=...
scrnify capture https://example.com --type image --format png --full-page
scrnify capture https://example.com --type video --format mp4 --duration 5

Deploy preview screenshots

Capture a preview URL after deploy and upload the image as a CI artifact.

Docs screenshots

Refresh product docs screenshots from terminal scripts without opening Chrome locally.

Bug report videos

Capture a short MP4 or WebM of a URL for issue reports and release notes.

Shell contract

Predictable output for scripts and agents

Output

Success prints only the captured asset URL to stdout, ready for shell variables and follow-up downloads.

Exit codes

0 for success, 1 for usage or validation errors, and 2 for API, HTTP, or network errors.

Platforms

Release archives support macOS and Linux on amd64 and arm64. Homebrew installs the same CLI.

Signed requests

Pass an API secret with a non-zero cache TTL. The CLI adds the HMAC-SHA256 request signature.

Signed Capture

export SCRNIFY_API_KEY=...
export SCRNIFY_API_SECRET=...

scrnify capture https://example.com \
  --type image --format webp \
  --cache-ttl 86400

CI shell step

CAPTURE_URL="$(scrnify capture "$PREVIEW_URL" \
  --type image --format png --full-page)"

curl -fsSL "$CAPTURE_URL" -o preview.png

Install with Homebrew above or download a macOS or Linux archive from GitHub Releases. Run `scrnify capture --help` for every CLI flag. See Capture parameters and response behavior in the API docs.

Capture API

Start with one Capture

Create screenshots or videos without local browser setup.

Start capturing