Facebook Post API
A single Facebook post by URL: text and engagement counts (likes, comments, shares, views).
$1.20/1k req, pay per request, no subscription.
{"id": "25118307061088489","text": "Watch live as our crew returns home from the International Space Station.","likes": 2095,"comments": 48,"shares": 133,"views": 133000,"authorId": string,"authorImage": string,... 10 more fields}
Pricing and providers
Facebook Post API pricing: one API, 3 interchangeable providers
The cheapest provider serves first. If it fails, the next one takes over in the same call.
Try it
Get Facebook post in one request
This sample shows 8 of 28 fields. See every field
{
"found": true,
"data": {
"id": "25118307061088489",
"text": "Watch live as our crew returns home from the International Space Station.",
"likes": 2095,
"comments": 48,
"shares": 133,
"views": 133000
}
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
One request, one response shape.
Every field you send and every field you get back, each with a real example.
Last verified 2026-10-31 · uptime and latency measured over 30d
Request body
JSON, posted to this endpoint.
- urlstring
https://www.facebook.com/nasa/posts/1204545088344463
Full Facebook post URL.
- requireFieldsarray
Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `videoId` or `views`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a post that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge.
Response
JSON, one example value per field.
- authorIdstring
Numeric Facebook id of the page or profile that posted.
- authorImagestring
Profile picture URL of the page or profile that posted.
- authorNamestring
Display name of the page or profile that posted.
- authorVerifiedbooleancan require
Whether the posting page or profile carries a Facebook verification badge.
- commentsinteger
48
- createdUtcnumber
UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.
- durationSecondsnumber
Length of the post's video in seconds, 0 when the post carries no video.
- feedbackIdstringcan require
Facebook feedback id of the post; pass it to facebook.post_comments as feedbackId to fetch its comments. Null when this source cannot read it.
- idstring
25118307061088489
Facebook post id. For a reel or video post this is NOT the id in the /reel/ URL; that one is videoId. Populated whenever the provider has data for the entity.
- imagestring
Preview image or video thumbnail URL for the post.
- likesinteger
2095
- sharesinteger
133
- textstring
Watch live as our crew returns home from the International Space Station.
Populated whenever the provider has data for the entity.
- urlstring
Canonical Facebook URL of the post.
- videoIdstringcan require
Facebook video id of the post's reel or video, the id that appears in its /reel/<id> URL. Null when the post carries no video or this lane cannot read it.
- videoUrlstringcan require
Playable video file URL of the post's reel or video. Null when the post carries no video or this source cannot read it.
- viewsintegercan require
133000
Number of views on the post's video. Null when the source cannot report an exact count, for example when it gives only a rounded figure such as 14K.
Reaction counts on the post, broken down by reaction type. Null when this source reports only the total.
- angryinteger
Angry reactions.
- careinteger
Care reactions.
- hahainteger
Haha reactions.
- likeinteger
Like reactions.
- loveinteger
Love reactions.
- sadinteger
Sad reactions.
- wowinteger
Wow reactions.
- foundboolean
true
- reason"not_found"
Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.
Selling this API? See the full schema your endpoint must return.
FAQ
About the Facebook Post API
The AnyAPI Facebook Post API returns Facebook post data as normalized JSON from one POST call to /v1/run/facebook.post. A single Facebook post by URL: text and engagement counts (likes, comments, shares, views). AnyAPI routes each request across 3 sources and falls back automatically when one fails. It costs from $1.20 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of Facebook post calls through AnyAPI succeeded, with a median response time of 2.0 seconds across 568,896 measured calls.