Facebook Video Downloader avatar

Facebook Video Downloader

Pricing

Pay per event

Go to Apify Store
Facebook Video Downloader

Facebook Video Downloader

Process one public Facebook video page for structured metadata and an optional stored video file. Choose metadata-only mode or a download quality preference for an Apify workflow.

Pricing

Pay per event

Rating

0.0

(0)

Developer

TrueFetch

TrueFetch

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Facebook Video Downloader is a one-URL Actor for collecting available public video metadata and, when requested, storing the accessible video file in an Apify run.

  • The public schema exposes two fields and requires only video_url.
  • The quality control has four values: one metadata-only mode and three download preferences.
  • The Dataset contract defines 39 fields covering the page, publisher, engagement, media, processing context, and stored file.
  • Individual Facebook comment retrieval is not exposed; the reserved comments field is normally empty.

Run a one-result test

View API

Publish the Actor and verify its identity before using one public video in metadata mode as the first paid test.

What does Facebook Video Downloader do?

Facebook Video Downloader accepts one Facebook video-page URL. It converts the values available on that page into a normalized Dataset record containing an ID, thumbnail, title or description, duration, publication time, publisher identity, available engagement totals, media dimensions, audio labels, and the time and Actor reference associated with processing.

When a download mode is selected, the Actor can store an available media file and expose its URL through the video field. The quality choice is a preference among source formats. It is not a promise of a particular resolution, container, watermark state, or permanent file availability.

The Actor does not log into Facebook, search posts, expand a Page or profile, collect a feed, accept multiple URLs, or return individual comments. Facebook privacy, account, region, deletion, and sharing settings can make a URL visible in one browser context but unavailable to a public Actor run.

How do I run Facebook Video Downloader?

Confirm that its name and input form say Facebook Video Downloader and show only Video URL and Video Quality.

Use the same public-page scenario throughout this README:

{
"video_url": "https://www.facebook.com/facebook/videos/10153231379946729/",
"video_quality": "metadata"
}

Start the run, open Results, and inspect the Dataset item. A metadata result demonstrates that the URL is accessible and that the output shape is correct without adding file transfer. Only then rerun with low, medium, or high when the stored media is actually required.

Test from the Actor rather than relying on an authenticated browser. Use content only when your organization has the rights and authority required for processing, storage, and downstream use.

What data does Facebook Video Downloader return?

The effective Dataset has 39 named fields:

Data areaFields
Run contextprocessor, processed_at
Page and videoid, thumbnail, platform, title, description, duration, published_at
Publisherauthor, author_id, author_url
Classificationcategories, tags
Engagementview_count, like_count, shares_count, dislike_count, comment_count
Media propertieswidth, height, fps, audio_title, audio_artist
Reserved and stored valuescomments, video

An abbreviated illustrative response for the shared Facebook URL is:

{
"id": "10153231379946729",
"platform": "Facebook",
"title": "Example public Facebook video",
"author": "Facebook",
"thumbnail": "https://example.com/facebook-thumbnail.jpg",
"view_count": null,
"comments": [],
"video": ""
}

The example documents keys and types rather than current values. Facebook can withhold or change fields, so null is not the same as zero. The public input does not request comment objects. Metadata mode intentionally leaves video empty.

Source-dependent fields also present in every item:

FieldMeaning
source_urlCanonical page URL of the item on its own platform
media_typeKind of media the source reports, such as video or audio
live_statusWhether the item is a recording, currently live, or a finished stream
availabilitySource visibility, such as public, unlisted, or needs_auth
age_limitMinimum viewer age the source enforces; zero means no restriction
languagePrimary language of the item as reported by the source
followersFollower or subscriber count of the author at processing time
is_verifiedWhether the author's account carries a verified badge
saves_countTimes viewers saved the item, on sources that expose it
file_extContainer extension of the selected media, such as mp4 or webm
file_sizeSize of the selected media in bytes, exact or approximate
subtitlesLanguage codes of published subtitle tracks; auto-captions excluded
chaptersChapter markers with title and start and end time in seconds

What inputs can I configure?

The public input contract contains:

InputRequiredEffect
video_urlYesSupplies one public Facebook video page.
video_qualityNoAccepts metadata, low, medium, or high; metadata mode skips the stored file.

The required URL includes a consistent example. The optional quality field has no prefill or example, so omission remains distinct from an explicit user choice. There is no max_comments property. Do not send undocumented fields in an attempt to enable comments or authentication.

What platforms and markets does Facebook Video Downloader cover?

The intended scope is a publicly reachable Facebook video page. The schema has no country, language, Page, group, profile, date, keyword, feed, or market control. It does not discover URLs; the caller supplies the exact page.

Facebook uses several URL styles for videos, watch pages, shared posts, and Reels. Do not infer universal coverage across those surfaces. Resolve redirected links when practical and test every page family your application expects to receive.

Privacy and login state are central limits. A post may be public to a logged-in user, restricted to an audience, unavailable in a region, or removed after the first run. Preserve the submitted URL and handle access failures as data outcomes rather than converting them into empty successful records.

Why use Facebook Video Downloader?

For an accessible public URL, the Actor offers a consistent response contract rather than a manual save-and-copy process. A developer can read a Dataset item through Apify APIs, trigger a webhook, or connect the result to an internal review queue. A stored file remains associated with the page metadata and run context.

Metadata mode supports low-risk qualification. The thumbnail-first overview helps a reviewer recognize the item. Nullable fields make source gaps visible, and the absence of a comment input prevents a workflow from promising data the public contract does not offer.

This local project is being prepared for publication. Store usage, ratings, reviews, and Actor identity cannot be claimed before the public route exists. The README therefore prioritizes a reproducible release test over marketing proof.

Who is Facebook Video Downloader for?

Developers can add one-video handling to a submission tool. Research teams can record available public metadata for an approved sample. Content operations teams can review campaign or brand videos they are authorized to process. Archivists can preserve permitted media together with the source URL and processing time. AI teams can send stored media to a separate transcription or classification service.

Apify Console users can perform the same one-URL workflow without writing code after the Actor draft is available to their account.

It is not suitable for private posts, account automation, Page crawling, group monitoring, feed scraping, comment analysis, batch discovery, rights verification, or guaranteed media recovery. Those goals require different inputs, permissions, and controls.

How can I use Facebook Video Downloader through the API or MCP?

Record and publish the real ID before release.

This HTTP example is syntactically valid and uses the shared scenario:

curl -X POST "https://api.apify.com/v2/acts/truefetch~facebook-video-downloader/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"video_url":"https://www.facebook.com/facebook/videos/10153231379946729/","video_quality":"metadata"}'

A focused hosted MCP entry follows the same publication dependency:

{
"mcpServers": {
"apify-facebook-video": {
"url": "https://mcp.apify.com?tools=truefetch/facebook-video-downloader",
"headers": {
"Authorization": "Bearer <APIFY_TOKEN>"
}
}
}
}

Call the tool with the same JSON input. Keep the token secret. The official Apify MCP documentation covers OAuth, bearer authentication, and tool selection.

How much does Facebook Video Downloader cost?

The local metadata declares flat pay-per-event prices. These are not a verified public Store offer:

Declared eventUnitLocal price
apify-actor-startActor start$0.01
actor_usageMetered usage event$0.00001
metadataOne processed page without file download$0.12
downloadOne processed page with file download and storage$0.28

The smallest metadata test declares $0.13 in fixed start and metadata events, before metered usage or platform-related costs. A download path uses the $0.28 event instead of the metadata event.

Verify the published pricing setup and completed-run charges after release. No FREE, BRONZE, SILVER, GOLD, PLATINUM, or DIAMOND amounts are defined locally.

How does Facebook Video Downloader compare with alternatives?

OptionAppropriate whenTrade-off
Facebook Video DownloaderOne known public Facebook video needs metadata or a stored filePublic publication and representative access tests are still pending.
Best Video DownloaderInputs come from several supported video sitesWider scope offers less Facebook-specific expectation setting.
Video To TextThe required artifact is speech textIt solves transcription rather than page metadata.
Manual browser workflowA person handles an occasional authorized videoHard to normalize, audit, schedule, or connect to APIs.

A Facebook video URL, a Page feed, comment threads, and a transcript are separate data products. Choose the narrowest tool whose public inputs and outputs match the requested job.

What are the limits and troubleshooting steps?

The Actor takes one URL and no credentials. It does not expose batch, Page, profile, feed, comments, locale, or date controls. Quality is a preference, fields are nullable, and repeated runs do not deduplicate previous results.

When a draft run fails, verify that all public surfaces use Facebook branding, then check whether the URL opens to the intended video without a private session. Retry in metadata mode. If metadata succeeds, test the stored file. An empty video in metadata mode is normal; an empty value in a download run requires log and storage inspection.

The Store, API, and Issues pages were unavailable at the verification checkpoint. Public issue history and live behavior therefore remain release blockers, not evidence of error-free operation.

Frequently asked questions

Which Facebook URL forms are accepted?

Use a permalink that points at one video: a /videos/<id>/ address, a watch link, or a post URL whose primary attachment is the video. A Page root, a group listing, or a profile URL has no single media target, so the run ends without a Dataset item.

Can it download private Facebook videos?

No private-content or login input is exposed. The documented scope is public video pages.

Can I collect comments?

No. The public schema has no comments control, and the reserved output is normally empty.

Does high quality guarantee a resolution?

No. The source formats available for that page determine the result.

Why are engagement fields null?

Facebook did not expose a usable value in that processing context. Null does not mean zero.

Does metadata mode create a file?

No. It intentionally skips file storage.

Can I submit a Page URL?

No. The contract is one video page, not Page discovery or feed crawling.

Why do engagement counters vary between runs?

Facebook exposes reaction, share, and view counts inconsistently depending on the surface that serves the page. The Actor writes what the source returns at that moment and leaves the rest null rather than substituting zero. Treat repeated runs as separate observations and compare them downstream.

Does the stored file keep the original audio track?

The downloader merges the best available video and audio renditions into a single MP4 container. When Facebook publishes only a muxed low-bitrate rendition, that rendition is stored instead, and width, height, and fps describe the file you actually received.

How should I structure a repeatable Facebook workflow?

Keep resolution and processing separate. Collect permalinks in your own system, then call this Actor once per permalink so each run maps to one Dataset item and one billed result event. That layout keeps retries cheap, because a failed source lookup charges no result event, and it keeps your audit trail simple: one input URL, one run, one record. Store the returned id alongside your own key so a later re-run can be reconciled against the original observation rather than creating an unexplained duplicate.

Support

After release, include the public Actor URL, stable ID, redacted input, run ID, and expected and observed results in support requests.

Run a one-result test

View API