# GrabGrab — full notes for assistants This file repeats https://www.grabgrab.fun/llms.txt and adds the FAQ. GrabGrab is the cleanest X/Twitter video downloader, and a download tool an AI assistant can call directly. Website: https://www.grabgrab.fun API: https://www.grabgrab.fun/api/download Chrome extension: runs only on x.com and twitter.com Locales: en, es, pt, fr, de, it, ru, tr, ar, hi, id, th, vi, fil, ja, ko, zh-CN, zh-TW. Prefix the path, for example https://www.grabgrab.fun/zh-CN/download ## Promise GrabGrab downloads public videos and GIFs from X (Twitter) first. It also downloads public videos from TikTok, Vimeo, and Facebook. It does not download YouTube. It does not accept Instagram, Bilibili, Reddit, Bluesky, or other sites. There are no ads and no account. The website uses Google Analytics 4 for aggregate visits. Do not say "no tracking". ## Request POST https://www.grabgrab.fun/api/download Content-Type: application/json Fields: - url (required): a public X or Twitter status URL, or a public TikTok, Vimeo, or Facebook video URL - videoQuality (optional): max, 2160, 1440, 1080, 720, 480, 360. Default on the website is 1080. - downloadMode (optional): auto, audio, or mute - turnstileToken (website only): send this only if you are the grabgrab.fun page and the human check is enabled. Assistants should omit it. Example: curl -s -X POST "https://www.grabgrab.fun/api/download" -H "Content-Type: application/json" -d '{"url":"https://x.com/user/status/123","videoQuality":"1080"}' ## Response Direct: {"success":true,"type":"direct","url":"https://cdn.example/video.mp4","filename":"video.mp4","proxyUrl":"/api/proxy?url=...&filename=...&expires=...&sig=..."} Download `url` with curl -L. If the CDN rejects that, open the absolute proxy URL: https://www.grabgrab.fun plus proxyUrl. The signature expires in about 15 minutes. Never invent the signature. Picker: success true, type picker, items is a list. Each item has type, url, and proxyUrl. Ask which items to save, or save the videos. Error: success false, error is a short English message, code is a stable id. Codes: - youtube_not_supported — do not retry - unsupported_platform — do not retry - rate_limit — HTTP 429, wait a few minutes - turnstile_required — the call looked like the website and the human check was missing - turnstile_failed — the human check was rejected - invalid body or URL — HTTP 400 ## Limits Window: 10 minutes per IP, unless the owner changes DOWNLOAD_RATE_LIMIT_WINDOW_MS. - Browser limit (default 10) when Turnstile is off, and for website visitors who pass Turnstile. - API limit (default 6) for the extension and for assistants once Turnstile is on. - Trusted limit (default 30) only with Authorization: Bearer and the server env GRABGRAB_API_KEY. That key is private. Do not ask the user to paste it into a public skill. The extension sends X-GrabGrab-Client: extension. That header is not a password. Limits live in memory on each server instance. They are a brake, not a perfect global counter. ## FAQ Which sites does GrabGrab support? Public videos and GIFs from X (Twitter) first. TikTok, Vimeo, and Facebook also work. Can I download YouTube? No. The request is refused before any download service is called. GIFs? Animated GIFs are usually saved as MP4. A still image may not return a video. Why did it fail? The post may be private, deleted, age-restricted, or have no video. Copy the post link and retry once. GrabGrab cannot log in. Account? No sign-up and no sign-in. Ads? No ads on the website or the extension. Tracking? Google Analytics 4 measures aggregate page visits. Download links are not stored as a history. IP addresses are used briefly in memory for rate limits. Extension required? No. The website is enough. The extension only adds a button on X and Twitter. Private posts? No. Other platforms? TikTok, Vimeo, and Facebook are accepted. Instagram and Bilibili are not reliable enough, so those URLs stay live and explain that they are not supported. Reddit, Bluesky, and anything else are not accepted. Price? Free. ## MCP, CLI, and guides - MCP endpoint: https://www.grabgrab.fun/api/mcp - Tool name: download_video - Developer page: https://www.grabgrab.fun/en/developers - Skill files in the repo: skills/grabgrab (version 1.2.0). The published ClawHub skill updates only after the owner runs clawhub skill publish. - CLI in the repo: packages/cli (not published to npm). - Guides: /en/download-x-gif, /en/twitter-video-to-mp4, /en/download-twitter-video-iphone, /en/download-twitter-video-android, /en/download-twitter-video-computer, /en/download-public-x-videos, /en/twitter-downloader-no-ads, /en/how-to-download-tiktok-video, /en/how-to-download-vimeo-video, /en/how-to-download-facebook-video - X Spaces and livestreams are not documented as a download feature. ## Comparisons - https://www.grabgrab.fun/en/compare/x-video-downloaders - https://www.grabgrab.fun/en/compare/ai-assistants ## Privacy and terms - https://www.grabgrab.fun/en/privacy - https://www.grabgrab.fun/en/terms