SnapSharp + n8n
Self-hostable workflow automation with a first-party SnapSharp node.
n8n is the open-source, self-hostable answer to Zapier — fair-code licensed, runs on your own infra, and has none of the per-task billing that makes high-volume automation expensive elsewhere. SnapSharp ships an official community node (`@snapsharp/n8n-nodes-snapsharp`) that exposes every public endpoint of our API as a typed n8n action. If you are already running n8n for ETL, marketing ops, or internal tooling, generating screenshots, OG cards, PDFs, and visual diffs becomes a drag-and-drop step. This page covers installation (cloud and self-hosted), the available actions and triggers, the AGPL-licensing quirks that matter if you want to use n8n inside a SaaS, and a side-by-side with the other ways to automate SnapSharp.
How it works
A typical end-to-end flow takes 1–3 seconds.
- 1
Install the SnapSharp node
Add `@snapsharp/n8n-nodes-snapsharp` from the n8n community-node UI (cloud) or via npm (self-hosted).
- 2
Authenticate once
Create n8n credentials of type "SnapSharp API" and paste your API key — every workflow can reuse them.
- 3
Drop a SnapSharp node into a workflow
Pick the operation (Screenshot, OG Image, PDF, Site Audit, Extract, Diff) and map fields from upstream nodes.
- 4
Run on your schedule
Trigger via cron, webhook, manual, or any other n8n trigger — no per-task fees, no platform timeout cap.
Setup guide
Follow these steps in order. Each one stands alone, so you can copy code blocks directly without re-reading earlier ones.
1Spin up n8n (skip if you already have it)
Easiest path is `npx n8n`, or use the official Docker image `docker run -p 5678:5678 n8nio/n8n`. n8n cloud also works — pricing starts free for two active workflows.
docker run -it --rm \ -p 5678:5678 \ -v ~/.n8n:/home/node/.n8n \ n8nio/n8n2Install the SnapSharp community node
In n8n, open Settings → Community Nodes → Install. Paste the package name and confirm. Self-hosted users can also install via npm at the command line.
# n8n UI: Settings → Community Nodes → Install # @snapsharp/n8n-nodes-snapsharp # Or self-hosted via npm: cd ~/.n8n/nodes && npm install @snapsharp/n8n-nodes-snapsharp3Create SnapSharp credentials
Click Credentials → New, search "SnapSharp API", paste your key from the SnapSharp dashboard. The node validates the key by hitting `/v1/usage` so you know immediately if it works.
4Build your first workflow
Drag a Cron node, then a SnapSharp node. Pick "Take Screenshot", reference the URL with an n8n expression, and execute. The downstream nodes receive the binary image plus headers (`X-Cache`, `X-Request-Id`, `X-Response-Time`).
// Workflow JSON (truncated for clarity) { "nodes": [ { "type": "n8n-nodes-base.cron", "parameters": { "triggerTimes": { "item": [{ "mode": "everyHour" }] } } }, { "type": "snapsharp-nodes-snapsharp.snapsharp", "parameters": { "operation": "screenshot", "url": "https://example.com", "width": 1200, "fullPage": true } } ] }5Hand off to downstream actions
Common follow-ups: upload the binary to S3, post the image URL into Slack/Discord, write a row to Airtable, attach to a Notion page, or run a visual diff against a baseline.
Trigger examples
Real-world patterns where n8n fires and SnapSharp produces the asset.
Cron-scheduled monitoring
Run a screenshot every N minutes/hours and pipe the result into a diff step — a self-hosted alternative to SnapSharp visual monitors with full control over storage and alerting.
Webhook from SnapSharp visual monitor
Receive a payload whenever one of your monitors detects a change above threshold, then fan out to email, Slack, or a custom endpoint.
GitHub release published
Trigger on a GitHub release webhook, render an OG image with the tag and changelog, and post it to Twitter/X via the n8n Twitter node.
Daily PDF archive
Cron-trigger nightly, generate PDFs of every URL in a Sheet, drop them into S3, and upsert a row into Postgres for the audit trail.
Action examples
Each card shows the operation and the inputs you'd typically map from upstream.
Screenshot operation
All the parameters of POST /v1/screenshot exposed as native n8n fields.
operation: screenshot
url: ={{$json.url}}
width: 1920
fullPage: true
blockAds: trueOG Image operation
Render an OG card from a saved template with variables substituted from upstream JSON.
operation: ogImage
templateId: blog-card
variables.title: ={{$json.title}}
variables.author: ={{$json.author}}PDF export operation
URL → PDF in one step. Pipes the binary buffer into the next node.
operation: pdf
url: ={{$json.invoice_url}}Site audit operation
Run a full design + accessibility audit and receive structured JSON for downstream branching.
operation: siteAudit
url: ={{$json.competitor_url}}Pricing notes
n8n cloud has a generous free tier (200 workflow executions/mo) and paid plans starting at $20/mo with unlimited workflows. Self-hosted n8n is fully free; you only pay your VM. SnapSharp consumption is independent — one node execution equals one SnapSharp request, billed against your SnapSharp plan.
Limitations to know
- •n8n's fair-code license (Sustainable Use License) restricts certain SaaS resale scenarios. Read the licence before embedding n8n in a paid product.
- •Community nodes run in the same Node.js process as n8n itself. If you self-host on a tiny VM, large screenshot binaries (10MB+ PDFs) can pressure memory.
- •The community node currently exposes the v1 API only. Newer beta endpoints arrive in the node a release behind the API.
How SnapSharp compares to other apps in n8n
Quick reference — every alternative listed below is also available in n8n.
Works, but you lose typing on every field, get no auth helper, and have to handle binary responses manually. The community node does all that.
Apify is great for crawling but slow and pricey for single-page screenshots. SnapSharp is purpose-built for image generation.
Browserless is BYOC infrastructure with no built-in OG templates, no metadata extract, and no audit endpoint.
FAQ
Is the SnapSharp node officially maintained?
Yes. The package `@snapsharp/n8n-nodes-snapsharp` lives in the SnapSharp monorepo (`packages/n8n-nodes-snapsharp`) and is published and tested with every API release.
Can I use this on n8n cloud or only self-hosted?
Both. n8n cloud supports community-node install since v1.0 — paste the package name in Settings → Community Nodes. Self-hosted users install via npm into `~/.n8n/nodes`.
Does the node support every SnapSharp endpoint?
It covers screenshot, og-image, html-to-image, pdf, site-audit, extract, diff, and async screenshot. Newer endpoints (video, scroll) ship one release behind the API; if you need them today, fall back to the HTTP Request node and our REST docs.
How do I trigger downstream actions on a screenshot success/failure?
Branch on the `success` field of the node's JSON output. Failed requests still emit the `request_id` and `error_code` so you can fan out to alerting (Slack, PagerDuty, email).
Can I run the node behind a corporate proxy?
Yes — set `HTTPS_PROXY` and `HTTP_PROXY` env vars for the n8n process. The community node uses the same global agent as the rest of n8n's HTTP machinery.
Wire SnapSharp into n8n in under five minutes
Free plan includes 100 requests/mo — enough to build, test, and demo your automation before deciding on a paid plan.