{
  "data": {
    "id": "xbKvkK6O7LcHz1a5F",
    "userId": "ngn8vRESTkseyWE6p",
    "name": "facebook-page-posts-scraper",
    "username": "memo23",
    "description": "Scrape Facebook posts without logging in: walk any public Page's feed, or paste individual post, reel or video URLs. Get text, date, permalink, photos, per-emoji reactions, comment and share counts. Your post limit is enforced before each request, so you are never charged past it.",
    "isPublic": true,
    "createdAt": "2026-09-07T06:27:05.308Z",
    "modifiedAt": "2026-10-21T20:59:36.039Z",
    "taggedBuilds": {
      "latest": {
        "buildId": "hiaafxlbOxBqQVCwL",
        "finishedAt": "2026-10-21T20:59:36.039Z",
        "buildNumberInt": 49,
        "buildNumber": "0.0.49"
      }
    },
    "stats": {
      "totalBuilds": 49,
      "totalRuns": 20797,
      "totalUsers": 191,
      "totalUsers7Days": 26,
      "totalUsers30Days": 67,
      "totalUsers90Days": 89,
      "lastRunStartedAt": "2026-10-25T02:00:10.312Z",
      "actorReviewCount": 0,
      "actorReviewRating": 0,
      "bookmarkCount": 0,
      "publicActorRunStats30Days": {
        "ABORTED": 9,
        "FAILED": 1,
        "SUCCEEDED": 20126,
        "TIMED-OUT": 6,
        "TOTAL": 20142
      }
    },
    "versions": [
      {
        "versionNumber": "0.0",
        "sourceType": "SOURCE_FILES",
        "buildTag": "latest"
      }
    ],
    "defaultRunOptions": {
      "build": "latest",
      "timeoutSecs": 3600,
      "memoryMbytes": 512
    },
    "exampleRunInput": {
      "body": "{ \"helloWorld\": 123 }",
      "contentType": "application/json; charset=utf-8"
    },
    "categories": [
      "SOCIAL_MEDIA",
      "AUTOMATION",
      "LEAD_GENERATION"
    ],
    "isDeprecated": false,
    "title": "Facebook Page Posts Scraper — Comments, Photos, No Login",
    "pictureUrl": "https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/ngn8vRESTkseyWE6p-actor-xbKvkK6O7LcHz1a5F-OPZYNYvQuZ-Facebook_logo_%28square%29.png",
    "seoTitle": "Facebook Page Posts Scraper - Comments, Photos, No Login",
    "seoDescription": "Scrape Facebook page posts without login — Page feeds or post URLs, comment bodies, photos, reactions, share counts. Exact limits.",
    "pricingInfos": [
      {
        "pricingModel": "PAY_PER_EVENT",
        "pricingPerEvent": {
          "actorChargeEvents": {
            "post": {
              "eventTitle": "Post scraped",
              "eventDescription": "One Facebook Page post delivered to the dataset. Posts beyond your maxPosts / maxItems limit are never delivered and never charged.",
              "eventPriceUsd": 0.0025,
              "isPrimaryEvent": true,
              "isOneTimeEvent": false
            }
          }
        },
        "createdAt": "2026-09-07T06:32:50.557Z",
        "startedAt": "2026-09-07T06:32:50.557Z",
        "apifyMarginPercentage": 0.2
      },
      {
        "pricingModel": "PAY_PER_EVENT",
        "apifyMarginPercentage": 0.2,
        "minimalMaxTotalChargeUsd": null,
        "startedAt": "2026-09-07T13:35:41.000Z",
        "isPriceChangeNotificationSuppressed": true,
        "pricingPerEvent": {
          "actorChargeEvents": {
            "apify-actor-start": {
              "eventTitle": "Actor Start",
              "eventDescription": "Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).",
              "isOneTimeEvent": true,
              "eventPriceUsd": 0.005
            },
            "post": {
              "eventTitle": "Post scraped",
              "eventDescription": "One Facebook post delivered to the dataset.",
              "isOneTimeEvent": false,
              "isPrimaryEvent": true,
              "eventPriceUsd": 0.00099
            }
          }
        },
        "createdAt": "2026-09-07T10:36:02.652Z"
      },
      {
        "minimalMaxTotalChargeUsd": null,
        "pricingModel": "PAY_PER_EVENT",
        "isPriceChangeNotificationSuppressed": true,
        "apifyMarginPercentage": 0.2,
        "pricingPerEvent": {
          "actorChargeEvents": {
            "post": {
              "eventTitle": "Post scraped",
              "eventDescription": "One Facebook post delivered to the dataset.",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.00099,
              "isPrimaryEvent": true
            },
            "apify-actor-start": {
              "eventTitle": "Actor Start",
              "eventDescription": "Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).",
              "isOneTimeEvent": true,
              "eventPriceUsd": 0.005
            },
            "photo": {
              "eventTitle": "Photo scraped",
              "eventDescription": "One Facebook photo from the photos tab or a photo permalink.",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.00099
            }
          }
        },
        "createdAt": "2026-09-16T08:14:34.236Z",
        "startedAt": "2026-09-16T08:14:34.236Z"
      },
      {
        "minimalMaxTotalChargeUsd": null,
        "pricingModel": "PAY_PER_EVENT",
        "isPriceChangeNotificationSuppressed": true,
        "apifyMarginPercentage": 0.2,
        "pricingPerEvent": {
          "actorChargeEvents": {
            "post": {
              "eventTitle": "Post scraped",
              "eventDescription": "One Facebook post delivered to the dataset.",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.00099,
              "isPrimaryEvent": true
            },
            "photo": {
              "eventTitle": "Photo scraped",
              "eventDescription": "One Facebook photo from the photos tab or a photo permalink.",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.00099
            },
            "comment": {
              "eventTitle": "Comment scraped",
              "eventDescription": "Description: One public comment body attached to a delivered post.",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.001
            },
            "apify-actor-start": {
              "eventTitle": "Actor Start",
              "eventDescription": "Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).",
              "isOneTimeEvent": true,
              "eventPriceUsd": 0.005
            }
          }
        },
        "createdAt": "2026-09-22T08:40:55.656Z",
        "startedAt": "2026-09-22T08:40:55.656Z"
      }
    ],
    "notice": "NONE",
    "isCritical": false,
    "isGeneric": false,
    "hasNoDataset": false,
    "isSourceCodeHidden": true,
    "standbyUrl": null,
    "actorPermissionLevel": "LIMITED_PERMISSIONS",
    "readmeSummary": "## Facebook Page Posts Scraper\n\nA scraper for extracting Facebook posts, photos, reels and videos from public Pages and public profiles without login or cookies. It walks a Page feed or fetches specific post/reel/video/photo permalinks and returns structured records containing post text and publish time, permalinks, full media sets (including album photos beyond the feed limit), per-emoji reaction breakdowns, reaction totals, comment and share counts, video duration and view counts, link preview metadata, event cards, original posts for reshares, collaborator information, an ads-library stub, OCR/accessibility captions for photos, and optional Facebook-provided video transcripts; it also exposes follower counts and a computed engagement metric for feed rows. The actor reads Facebook’s logged-out HTML and query ids per run, paginates with a known-good fallback, paces requests and rotates exit IPs from a residential proxy pool to handle rate limits, supports parallel Page walks, resolves share links to their targets, and can attach top-level public comments to records.\n\n## Use cases\n\n- Walk a Page feed to extract post text, timestamps, reaction breakdowns, comment/share counts, media, link previews and event cards.  \n- Fetch exact posts, reels or videos by permalink to get that post’s full record (text, reactions, comments, video metadata).  \n- Scrape the photos tab to export one record per photo with full-size URLs, thumbnails and photo accessibility/OCR captions.  \n- Collect every photo in an album by opening the post’s photo set to capture images beyond the feed’s first five.  \n- Monitor Pages on a schedule and return only newly published posts since the previous run.  \n- Capture Facebook-provided video/reel transcripts when available.  \n- Resolve and follow Facebook share links to the underlying post, page, photo, reel or video.  \n- Include top-level public comment bodies alongside post metadata (optional).  \n- Retrieve follower counts and compute per-post engagement (reactions + comments + shares relative to followers).  \n- Parallelize scraping across multiple Pages, each using separate exit IPs to mitigate rate limits.",
    "deploymentKey": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDMmms0oaRHo7DYw9ShHdXGhmZhB2sgEZWgmbtIJgyLd/WveyhFuJG8SVvSdfeIVHaphpRDomEId5saHNpGJXVfSFdapBPxY5eHHyyidYq0WymiJ2WYi7bd2SmpYzvoLWkVm5w66CGpqXcI87T8FfdxTaiPV6e5oA0j+jzSFo/5saN1lyRvu7fonJ6pRaVvsOdb/wGszTH5fMlTKncl9FBhjg8dqSHXTrKaUixofwO3gdetsR8YGGOtT1aPa2UKpLoCUkZ/uyV6Sx41DhFy/HYZ3JlxoQ9gwB7gXdBMjfaEbxdCMnHaZW+cEII2q3Es+7o4Uiq3e3ROn4bxk/aueKZR \n"
  }
}