XNXX Video Downloader
Pricing
from $2.25 / 1,000 saved videos
XNXX Video Downloader
Resolve known public XNXX video URLs or IDs into direct source media links and metadata. Get one Apify dataset row for each successfully resolved video, with titles, durations, thumbnails, source URLs, fetch times, and source-exposed MP4 or HLS formats.
Pricing
from $2.25 / 1,000 saved videos
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
75
Total users
1
Monthly active users
17 days ago
Last modified
Categories
Share
🎬 Known XNXX video links
XNXX Video Downloader gives researchers, media teams, and developers direct source media links and video metadata for known public XNXX watch-page URLs or raw video IDs. It saves one structured Apify dataset row for each successfully resolved video, so you can review, catalog, or pass the links into an API workflow without copying page details by hand.
- Resolve a direct MP4 or HLS link from a known XNXX page with XNXX MP4 Downloader.
- Turn several known XNXX URLs or IDs into dataset rows with Download XNXX Videos.
- Get source media links and metadata for one known video with Download XNXX Video.
- Export direct media links from known watch pages with XNXX Video Download.
- Convert known XNXX URLs or IDs into structured video data with XNXX Video Downloader.
📦 Direct XNXX media links and metadata
Each successful row represents one public XNXX video with usable source media. The row keeps the stable videoId, source-confirmed sourceUrl, title, duration, thumbnail, and fetchedAt time. availableFormats lists source-exposed MP4 or HLS choices with quality, dimensions, content type, direct media URL, and expiresAt when the source URL provides one. Missing source values stay null; direct links may be signed or time-limited.
▶️ Resolve known XNXX videos
- Add one or more known public XNXX watch-page URLs or raw video IDs in XNXX videos.
- Start the Actor.
- Open the default dataset and inspect the saved rows.
- Pick a
mediaUrlfromavailableFormatsfor the format your workflow needs.
The Actor saves the first eligible occurrence of a source video as soon as it is found. If another URL or ID points to the same videoId, it is ignored after that first saved occurrence. The saved row describes the first match, not later aliases. This Actor does not search XNXX or crawl categories, profiles, or albums, and it does not store video files in Apify storage.
It reads public, reachable pages without XNXX cookies, an XNXX account, a browser extension, or a source API key. It does not bypass source access controls, account gates, age gates, region restrictions, deleted pages, paywalled pages, or rights restrictions.
Use the prefilled target for a small first run, then add your own target list or schedule repeated runs after you inspect the output shape.
⚙️ Input
The input accepts known public XNXX watch-page URLs and raw video IDs. The form requires at least one non-empty target and accepts up to 100 targets. There is no separate result-limit field, so the Actor processes the submitted targets until they are exhausted.
Input fields
| Field | Type | What it does |
|---|---|---|
targets | array of strings | Required. Adds 1 to 100 non-empty public XNXX watch-page URLs or raw video IDs, with one target per row. |
Example input
This example is copied from the public input of a successful current-beta run.
{"targets": ["https://www.xnxx.com/video-t25dr83/nympho_teen_wanna_fuck_her_neighbour_creampie_","https://www.xnxx.com/video-1f4nl704/sneaky_teens_have_public_sex","https://www.xnxx.com/video-1bkzkdb2/beautiful_18_year_old_amateur_neighbor_yelling_at_me_to_stop"]}
🧾 Output
The output has one dataset link and one successful video row shape. Open results to view the default dataset overview.
Output fields
| Field | Type | What it does |
|---|---|---|
results | link string | Opens the successful video rows in the default dataset overview. |
videoId | string | Stable XNXX video identifier for recognizing the source video. |
sourceUrl | string | Source-confirmed XNXX watch URL for the video. |
title | string or null | Video title shown on XNXX, when available. |
durationSeconds | integer or null | Video duration in seconds, when available. |
thumbnailUrl | string or null | Thumbnail or poster URL shown by XNXX, when available. |
fetchedAt | date-time string | Time when the direct media URLs in the row were fetched. |
availableFormats | array of objects | Source-exposed MP4 and HLS media formats available for the video. |
availableFormats[].quality | string or null | Source quality label, such as low, high, or HLS, when known. |
availableFormats[].width | integer or null | Format width in pixels, when known. |
availableFormats[].height | integer or null | Format height in pixels, when known. |
availableFormats[].contentType | string or null | Media content type, when known. |
availableFormats[].mediaUrl | string | Direct media URL for the format. |
availableFormats[].expiresAt | date-time string or null | Expiry time found in the media URL, when available. |
Example video row
This complete row is copied from a successful current-beta run. Its source URLs are shown exactly as returned.
{"videoId": "t25dr83","sourceUrl": "https://www.xnxx.com/video-t25dr83/nympho_teen_wanna_fuck_her_neighbour_creampie_","title": "Nympho Teen wanna fuck her neighbour ( Creampie )","durationSeconds": 542,"thumbnailUrl": "https://thumb-cdn77.xnxx-cdn.com/6aeccb26-76c5-439a-a769-0513e53d026e/0/xv_29_t.jpg","fetchedAt": "2026-09-09T21:59:45.792Z","availableFormats": [{"quality": "low","width": null,"height": null,"contentType": "video/mp4","mediaUrl": "https://mp4-cdn77.xnxx-cdn.com/6aeccb26-76c5-439a-a769-0513e53d026e/0/video_240p.mp4?secure=2kHFxTYDwRV7hAdo1K2p4g==,1789001985","expiresAt": "2026-09-10T00:59:45.000Z"},{"quality": "high","width": null,"height": null,"contentType": "video/mp4","mediaUrl": "https://mp4-cdn77.xnxx-cdn.com/6aeccb26-76c5-439a-a769-0513e53d026e/0/video_360p.mp4?secure=EcSJJvVU2OKwvU4PblzdyA==,1789001985","expiresAt": "2026-09-10T00:59:45.000Z"},{"quality": "hls","width": 854,"height": 480,"contentType": "application/vnd.apple.mpegurl","mediaUrl": "https://hls-cdn77.xnxx-cdn.com/wNO_bwhXKWBJtM4wRjotVw==,1789001985/6aeccb26-76c5-439a-a769-0513e53d026e/0/hls.m3u8","expiresAt": "2026-09-10T00:59:45.000Z"}]}
💳 Pricing
This Actor uses pay-per-event pricing.
Charged event
The Saved video event is charged once for each successfully resolved public video saved to the dataset. The current base-tier price is $0.00265 per saved video; other account tiers use the prices shown in the pricing panel. A target that is invalid, unavailable, private, removed, blocked, duplicated, or has no usable media does not create a saved video event.
🔌 Integrations
Use the Apify API to read the dataset in code, or open it in Apify and export the rows as JSON, CSV, Excel, XML, RSS, or HTML. You can schedule repeated runs in Apify when you want to check the same known targets again.
❓ FAQ
Can I use a raw XNXX video ID?
Yes. Add the ID as one target in the targets list. The Actor resolves it as a known public XNXX video target.
Can I mix URLs and IDs in one run?
Yes. Add public watch-page URLs and raw XNXX video IDs in the same targets list.
What happens when two targets point to the same video?
The Actor saves the first eligible occurrence and ignores later URL or ID aliases for that source video. It does not merge later matches into the saved row.
What happens when a target has no usable media?
The Actor saves no video row for that target. Invalid, private, removed, blocked, unavailable, or no-media targets do not become failure rows.
Can I search XNXX by keyword?
No. Add a known public video URL or raw video ID. The Actor does not search XNXX or discover videos from categories, profiles, or albums.
Can I download files into Apify storage?
No. The Actor returns direct links held by the source and metadata. It does not copy video files or create ZIP archives in Apify storage.
Do direct media links expire?
Some source links are signed or time-limited. Check expiresAt when it is present and run the same target again when you need another source link.
Why are some fields null?
Some XNXX pages expose less metadata or fewer format details. The Actor keeps those values null instead of guessing.
📝 Changelog
v0.1
- Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- XVideos Downloader - Get direct MP4 or HLS links and metadata from known public XVideos watch pages.
- RedGifs Bulk Video Downloader - Process public RedGifs URLs or IDs in bulk and collect direct MP4 links with metadata.
- SpankBang Video Downloader - Resolve public SpankBang watch URLs into direct MP4 or HLS links with source details.
- Pornhub Video Data Downloader - Collect public Pornhub video metadata and source-visible media links from direct pages or searches.
- Reddit Media Downloader - Get source-hosted links for public Reddit videos, images, GIFs, and galleries without storing files.
Made with ❤️ by Maxime Dupré