n8n-nodes-framefetch
v0.2.0
Published
n8n community node for the FrameFetch video data API — turn any social-video URL (YouTube, YouTube Shorts, TikTok, Instagram Reels, Pinterest, Reddit) into answers (ask), metadata, transcript, insights, frames, on-screen text (OCR), digests, comments and
Maintainers
Readme
n8n-nodes-framefetch
An n8n community node for the FrameFetch video data API.
Turn any social-video URL — YouTube, YouTube Shorts, TikTok, Instagram Reels, Pinterest, Reddit — into answers (ask a direct question, get a grounded reply with timestamped quotes), metadata, transcript, insights, sampled frames, on-screen text (OCR), LLM digests, spoken audio digests, comments + sentiment, and typed structured JSON from a single node. Built for AI agents; pay-per-call with prepaid credits, Stripe, or x402 (USDC).
Installation · Credentials · Operations · Example workflow · Compatibility · Resources
Installation
Install it like any other community node:
- In n8n, go to Settings → Community Nodes.
- Select Install and enter the npm package name
n8n-nodes-framefetch. - Agree to the risks and select Install. The FrameFetch node then appears in the node panel.
Self-hosted alternative: npm install n8n-nodes-framefetch in your n8n custom-nodes folder (~/.n8n/nodes), then restart n8n.
Credentials
Create a free API key at framefetch.net (self-serve, comes with free credit — the key starts with ff_).
In n8n, add a FrameFetch API credential and paste the key. Authentication is sent as an Authorization: Bearer <key> header on every request. The credential's Test button calls the read-only GET /v1/account endpoint, which never bills. A Base URL field (default https://framefetch.net) is available for self-hosted or test endpoints.
Operations
Extract Video Data — POST /v1/extract
- Video URL — the social-video URL to process.
- Fields (multi-select) — any of:
metadata,insights,transcript,frames,text_overlay,digest,audio_digest,structured,comments,comment_sentiment,delta. Some fields auto-include others (digest → transcript, audio_digest → digest, structured → transcript, comment_sentiment → comments; text_overlay requires frames). - Options (optional) — Ask a Question (a direct question about the video; returns a
<=500-token grounded answer with timestamped quotes inask, $0.0075/call, auto-includes transcript), Translate To (25 languages, addstranscript_translated), Voice (foraudio_digest), Comments Cap (1-200, default 100; forcomments/comment_sentiment), Subtitle / Output Format (md/srt/vtt), Publish Public SEO Page, Use Cache. - Frames (optional, shown when Frames/Text Overlay is selected) — sampling spec:
mode(all / every_n / fps / range),n,fps,from,to,format(jpg/png/webp),width.
Get Account — GET /v1/account
Read-only account snapshot: email, credit balance, spend today/this month, current limits, and auto-topup config. Never bills.
Get Usage — GET /v1/usage
Read-only usage history over a date range. Options: From, To (ISO-8601; default trailing 30 days) and Group By (day or endpoint). Never bills.
Example workflow
Extract a transcript plus one-frame-per-second thumbnails from a YouTube video:
- Manual Trigger
- FrameFetch node
- Credential: FrameFetch API
- Operation: Extract Video Data
- Video URL:
https://www.youtube.com/watch?v=jNQXAC9IVRw - Fields:
Transcript,Frames - Frames → Mode:
Frames Per Second, FPS:1, Width:480
The node outputs the JSON ExtractResult (metadata, transcript, frames[], cost, …). Because the node is usable as an AI tool, you can also attach it to an AI Agent node and let the agent call FrameFetch on demand.
Ask a question instead of parsing a transcript
- FrameFetch node
- Operation: Extract Video Data
- Video URL: the video to ask about
- Options → Ask a Question:
What does the presenter recommend?
The response's top-level ask object carries { answer, quotes: [{ t_sec, text }], confidence, based_on } — a short grounded answer with timestamped supporting quotes, instead of a full transcript dump.
Compatibility
- Requires n8n with community-node support and Node.js ≥ 18.10.
- Uses the declarative node style; no runtime dependencies beyond the
n8n-workflowpeer dependency.
Resources
- FrameFetch docs: https://framefetch.net/docs
- OpenAPI spec: https://framefetch.net/openapi.json
- n8n community nodes docs: https://docs.n8n.io/integrations/community-nodes/
Build from source
cd clients/n8n
npm install
npm run build # tsc → dist/, then copies the node iconMIT licensed.
