# Apify Facebook Posts Scraper (via StableApify x402)

> Apify Facebook Posts Scraper (via StableApify x402) is a paid API for AI agents from stableapify.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Scrapes public Facebook page posts and video transcripts by URL, returning structured post data via x402 micropayment-enabled API.

## Facts

- Endpoint: POST https://stableapify.dev/api/actors/apify/facebook-posts-scraper/call
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/apify-facebook-posts-scraper-via-stableapify-x402-b6bed66d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_GG_QmEaickp2wiAQcWwIV

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability apify-facebook-posts-scraper-via-stableapify-x402-b6bed66d -d '<json body>'
```

Example prompt: Scrape the last 50 posts from the Humans of New York Facebook page (https://www.facebook.com/humansofnewyork/) posted in the past 3 months, and include video transcripts where available.

## When to prefer this

Choose this endpoint when you need structured post data from public Facebook pages at low per-call cost via x402 micropayments, without managing Apify credentials or infrastructure. Ideal for agents that need occasional Facebook data pulls rather than continuous monitoring subscriptions.

## Known failure modes

- Private or personal profiles cannot be scraped — only public Facebook pages are supported
- Page URL not found or page has been removed returns empty results or error
- Facebook anti-scraping measures may throttle or block requests leading to incomplete results
- resultsLimit not set defaults to only the first page of results
- Invalid date format in onlyPostsNewerThan or onlyPostsOlderThan causes validation error
- Payment failure via x402 protocol prevents actor execution

## How this service works

Search Apify Store actors, start actor runs, and fetch results over x402 and MPP.

## Output

Returns structured data for each scraped Facebook post, including post text, timestamp, media URLs, engagement metrics (likes, comments, shares), and video transcripts (if caption extraction is enabled). Results are paginated based on the resultsLimit parameter.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "startUrls",
    "captionText"
   ],
   "properties": {
    "startUrls": {
     "type": "array",
     "items": {
      "type": "object",
      "required": [
       "url"
      ],
      "properties": {
       "url": {
        "type": "string",
        "format": "uri"
       },
       "method": {
        "type": "string"
       },
       "headers": {
        "type": "object",
        "propertyNames": {
         "type": "string"
        },
        "additionalProperties": {
         "type": "string"
        }
       },
       "payload": {
        "type": "string"
       },
       "userData": {
        "type": "object",
        "propertyNames": {
         "type": "string"
        },
        "additionalProperties": {}
       }
      },
      "additionalProperties": false
     },
     "description": "Enter a valid Facebook page URL, e.g. https://www.facebook.com/humansofnewyork/ . Note that you can only scrape public pages with this Actor, not personal profiles."
    },
    "captionText": {
     "type": "boolean",
     "default": false,
     "description": "Extract video transcript (if available)."
    },
    "resultsLimit": {
     "type": "integer",
     "maximum": 9007199254740991,
     "minimum": 1,
     "description": "If this limit is not set, only the initial page of results will be extracted."
    },
    "onlyPostsNewerThan": {
     "type": "string",
     "pattern": "^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(T[0-2]\\d:[0-5]\\d(:[0-5]\\d)?(\\.\\d+)?Z?)?$|^(\\d+)\\s*(minute|hour|day|week|month|year)s?$",
     "description": "Scrape posts from the provided date to the present day (or date set in 'Older than'). The date should be in YYYY-MM-DD absolute format or in relative format, e.g., 1 day, 2 months, 3 years. The JSON input also supports adding time units (UTC timezone): Full or partial ISO timestamp (e.g., `2025-09-23T10:02:01`) as absolute time and relative time, e.g., `1 hour` or `2 minutes`."
    },
    "onlyPostsOlderThan": {
     "type": "string",
     "pattern": "^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(T[0-2]\\d:[0-5]\\d(:[0-5]\\d)?(\\.\\d+)?Z?)?$|^(\\d+)\\s*(minute|hour|day|week|month|year)s?$",
     "description": "Scrape posts from the provided date to the past (or date set in 'Newer than'). The date should be in YYYY-MM-DD or full ISO absolute format or in relative format e.g. 1 days, 2 months, 3 years. The JSON input also supports adding
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/apify-facebook-posts-scraper-via-stableapify-x402-b6bed66d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from stableapify.dev](https://www.zero.xyz/host/stableapify.dev/llms.txt)
