X (Twitter) Media Downloader avatar

X (Twitter) Media Downloader

Pricing

from $0.18 / 1,000 results

Go to Apify Store
X (Twitter) Media Downloader

X (Twitter) Media Downloader

Download high-quality images, videos, and GIFs from X/Twitter — including tweets, replies, quote tweets, threads, and public profiles in high to low quality

Pricing

from $0.18 / 1,000 results

Rating

5.0

(3)

Developer

Mikolabs

Mikolabs

Maintained by Community

Actor stats

3

Bookmarked

863

Total users

19

Monthly active users

5 days ago

Last modified

Share

🚀 X (Twitter) Video Downloader & Media Extractor - Fast, HD MP4, No Login

Apify Actor Twitter/X Downloader Speed Auth Video Quality

The ultimate X (Twitter) Video Downloader and Media Extractor API. Extract and download high-definition MP4 videos (up to 1080p / 4K), original-resolution images (JPG/PNG), animated GIFs, and tweet text from X.com / Twitter.com in milliseconds.

No browser overhead, no Twitter developer account required, and zero login or cookies needed.


🌟 Why Choose This X (Twitter) Video Downloader?

  • 🎥 Highest Quality MP4 Downloads: Automatically fetches the highest available bitrate and resolution (1080p, 720p, 480p) directly as direct MP4 download links.
  • Blazing Fast HTTP Engine: Uses lightweight, optimized HTTP requests instead of heavy headless browsers—extracts media in under 1–2 seconds.
  • 🔓 No Login & No API Keys Required: Extract public videos, images, and GIFs without needing an X account, cookies, or expensive official Twitter API access.
  • 📦 Bulk URL Extraction: Process single tweets or hundreds of tweet URLs in a single batch crawl.
  • 🔄 Smart Anti-Block Rotation: Automatic retry logic with fallback routing between proxy and endpoint sources for 99.9% uptime.
  • 🖼️ Full Media & Metadata Support: Extracts direct video URLs, image galleries, tweet text caption, and ISO timestamps.

💳 Free Tier vs. Paid Plan

PlanDaily QuotaFeatures
Free Tier2 Successful Runs / DayTry it completely free! Failed attempts or tweets without media do not consume your daily quota.
Paid PlanUnlimited Runs & URLsNo daily limits, no caps, full speed, bulk processing for production workflows.

🚀 How to Download X (Twitter) Videos in 3 Steps

  1. Copy the Tweet URL: Find the tweet on x.com or twitter.com containing a video, photo, or GIF (e.g. https://x.com/username/status/123456789).
  2. Paste into Actor Input: Paste the URL into the Tweet URLs input field. You can provide multiple URLs for bulk downloading.
  3. Run & Download: Click Save & Start. Download your results immediately as JSON, CSV, Excel, or direct MP4 files.

📥 Input Parameters

This Actor accepts structured JSON input with tweet URLs and optional proxy settings:

ParameterTypeRequiredDefaultDescription
tweetUrlsArray of ObjectsYes[]List of X/Twitter tweet URLs to extract media from (e.g., [{"url": "https://x.com/user/status/123"}]).
proxyConfigurationObjectNo{ "useApifyProxy": true }Proxy settings. Supports Apify Residential Proxies for maximum reliability at scale.

Minimal Input Example

{
"tweetUrls": [
{
"url": "https://x.com/NASA/status/1814674724872118742"
},
{
"url": "https://twitter.com/SpaceX/status/1802100806441406853"
}
]
}

📤 Output Dataset Format

Every scraped post delivers clean, structured JSON containing direct media links:

FieldTypeDescription
originalUrlStringThe original Twitter/X post URL submitted in the input.
typeStringExtracted media type: video or image.
videoUrlStringDirect, download-ready high-definition .mp4 video URL (when video is present).
imageUrlStringDirect .jpg/.png image link (when image is present).
allMediaArray<String>List of all direct media URLs in the tweet (e.g., multi-photo galleries).
textStringFull text and caption of the tweet.
statusStringExtraction status: success, success_image_only, no_media_found, or failed.
extractedAtStringUTC ISO-8601 timestamp of extraction.

Output JSON Example

[
{
"originalUrl": "https://x.com/NASA/status/1814674724872118742",
"type": "video",
"videoUrl": "https://video.twimg.com/amplify_video/181467400000000000/vid/avc1/1080x1080/example_video.mp4",
"allMedia": [
"https://video.twimg.com/amplify_video/181467400000000000/vid/avc1/1080x1080/example_video.mp4"
],
"text": "Check out this incredible view of Earth captured from orbit 🌍✨",
"status": "success",
"extractedAt": "2026-08-29T03:45:00.000Z"
}
]

💻 API & Code Integration Examples

You can seamlessly integrate this Twitter Video Downloader into your own applications, bots, or pipelines using Python, Node.js, or cURL.

Python Integration

from apify_client import ApifyClient
# Initialize the ApifyClient with your API token
client = ApifyClient("YOUR_APIFY_TOKEN")
# Prepare Actor input
run_input = {
"tweetUrls": [
{"url": "https://x.com/NASA/status/1814674724872118742"}
]
}
# Run the Actor and wait for it to finish
run = client.actor("0xrish/x-video-downloader-browser-auto").call(run_input=run_input)
# Fetch Actor results from the default dataset
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"Type: {item.get('type')}")
print(f"Download URL: {item.get('videoUrl') or item.get('imageUrl')}")
print(f"Caption: {item.get('text')}")

Node.js / JavaScript Integration

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({
token: 'YOUR_APIFY_TOKEN',
});
const input = {
tweetUrls: [
{ url: 'https://x.com/NASA/status/1814674724872118742' }
]
};
const run = await client.actor('0xrish/x-video-downloader-browser-auto').call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log('Extracted Media Items:', items);

cURL (REST API)

curl --request POST \
--url "https://api.apify.com/v2/acts/0xrish~x-video-downloader-browser-auto/runs?token=YOUR_APIFY_TOKEN" \
--header 'Content-Type: application/json' \
--data '{
"tweetUrls": [
{ "url": "https://x.com/NASA/status/1814674724872118742" }
]
}'

  • 📱 Social Media Automation & Repurposing: Automatically grab viral videos and memes from X/Twitter to repurpose for TikTok, YouTube Shorts, or Instagram Reels.
  • 🤖 AI & Machine Learning Datasets: Collect thousands of domain-specific videos, images, and paired captions for computer vision and multimodal training.
  • 🏛️ Digital Archival & Compliance: Backup corporate posts, PR announcements, journalism sources, and high-resolution media before tweets get deleted.
  • 📊 Trend & Sentiment Analysis: Analyze video engagement, hashtags, and tweet text for market research and competitive intelligence.

❓ Frequently Asked Questions (FAQ)

Can I download 1080p Full HD Twitter videos?

Yes! The extractor automatically identifies and returns the highest bitrate MP4 version published on Twitter/X (including 1080p, 720p, etc.).

Do I need a Twitter / X account or API keys?

No. You do not need an X account, session cookies, or Twitter Developer API tokens. The scraper accesses public posts directly.

Can I download multiple Twitter videos in bulk?

Yes. You can supply an array of multiple tweet URLs in the tweetUrls input. The Actor processes them concurrently at maximum speed.

How does the Free Tier quota work?

Free users receive 2 successful runs per day. If an extraction fails or the target tweet has no media, your daily attempt is not consumed. Upgraded users enjoy unlimited runs with no limits.

Does it support both x.com and twitter.com URLs?

Yes. The Actor accepts both https://x.com/... and legacy https://twitter.com/... URLs with or without tracking query parameters (e.g., ?s=20).


This Actor extracts only publicly accessible media. Users are responsible for complying with X/Twitter Terms of Service and respecting content creators' intellectual property rights and copyrights.


💬 Support & Custom Features

Need custom batch pipelines, webhook webhooks, cloud storage export (AWS S3, Google Cloud Storage), or profile scrapers? Reach out via Apify Console or open an issue on GitHub.