> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scraperize.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Group posts

> Fetches a public Facebook group's discussion posts (only publicly visible posts). Pass `url` OR `groupId` (the numeric group id — faster). Each post includes text, author (the member who posted), media (photos/video), a shared-link preview, timestamp, and engagement stats (reactions with a per-type breakdown, comments, shares). Returns a `paging.cursor` / `paging.hasNextPage` for the next page. Use `sortBy` to change the ordering (default CHRONOLOGICAL).

<Info>
  **Cost: 1 credit** per successful request. Errors and cache hits (`cache_max_age`) are free.
</Info>

<Accordion title="Copy for AI assistant" icon="sparkles">
  Paste this into ChatGPT, Claude or your coding assistant to generate working code for this endpoint (use the copy button).

  ```text Prompt
  I want to make an API call to /v1/facebook/group/posts. Here are the details:

  Endpoint: GET https://api.scraperize.com/v1/facebook/group/posts
  Description: Fetches a public Facebook group's discussion posts (only publicly visible posts). Pass `url` OR `groupId` (the numeric group id — faster). Each post includes text, author (the member who posted), media (photos/video), a shared-link preview, timestamp, and engagement stats (reactions with a per-type breakdown, comments, shares). Returns a `paging.cursor` / `paging.hasNextPage` for the next page. Use `sortBy` to change the ordering (default CHRONOLOGICAL).

  Required Headers:
  - x-api-key: Your API key

  Parameters:
  - url (string): **Required — provide one of `url` or `groupId`.** Public Facebook group URL, e.g. https://www.facebook.com/groups/cristianoronaldo404.
  - groupId (string): **Required — provide one of `url` or `groupId`.** Numeric group id (faster than url).
  - cursor (string): The `paging.cursor` from a previous call, to fetch the next page.
  - sortBy (select): Feed ordering (default `CHRONOLOGICAL`). `CHRONOLOGICAL` = newest first; `TOP_POSTS` = Facebook's "Most relevant"; `RECENT_ACTIVITY` = most recent activity first; `CHRONOLOGICAL_LISTINGS` = newest buy/sell listings (only groups with marketplace listings return anything). Case-insensitive; spaces are accepted (e.g. "recent activity").
  - cache_max_age (select): Optional. Return a cached result if one this age or newer exists — served for **0 credits** with `meta.cached=true` and `meta.cachedAt`. Otherwise a fresh scrape runs (**1 credit**) and refreshes the cache. Omit to always scrape fresh.

  Example Response:
  {
    "data": {
      "posts": [
        {
          "postId": "3516531235176946",
          "storyId": "UzpfSTEwMDA5MDM0ODgxMjU5OTpWSzozNTE2NTMxMjM1MTc2OTQ2",
          "url": "https://www.facebook.com/groups/cristianoronaldo404/posts/3516531235176946/",
          "text": "Easy DIY Tool Hack 😮 #DIY #WorkshopHacks #DIYTools #ToolTips #USA",
          "author": {
            "name": "Alice Angel",
            "id": "100090348812599",
            "url": "https://www.facebook.com/people/Alice-Angel/100090348812599/",
            "avatarUrl": "https://scontent-los4-1.xx.fbcdn.net/v/t39.30808-1/503737997_680208598334095_3767475048790493201_n.jpg?stp=c0.270.1080.1080a_cp0_dst-jpg_tt6&cstp=mx1080x1080&ct…",
            "verified": null
          },
          "createdAt": "2026-08-31T17:54:52.000Z",
          "createdTimestamp": 1788198892,
          "media": {
            "type": "video",
            "videoId": "2332244467596542",
            "videoUrl": "https://video-los4-1.xx.fbcdn.net/o1/v/t2/f2/m366/AQMpowAj8kbVPvfLLnTGpi8v2K0Wtq-3EmilGrWtT0-hiWbOPXUvkz7-aA1DPf67VLlf9mBarzEYT__IGBWBVXzsmHU0gwr98HZ4qRQqp3KhMg…",
            "videoHdUrl": "https://video-los4-1.xx.fbcdn.net/o1/v/t2/f2/m366/AQMpowAj8kbVPvfLLnTGpi8v2K0Wtq-3EmilGrWtT0-hiWbOPXUvkz7-aA1DPf67VLlf9mBarzEYT__IGBWBVXzsmHU0gwr98HZ4qRQqp3KhMg…",
            "videoSdUrl": "https://video-los4-1.xx.fbcdn.net/o1/v/t2/f2/m412/AQNFTvOwg0PRi5yJoY6STCthra-mYmiHcbOYEsDhCd8lVOKTrvINyHP9oRq2G77HTzKRP0-pEVwvSA9nLaTiH5Pj8o-lY4ZA3-cEojlC9w.mp4…",
            "thumbnailUrl": "https://scontent-los4-1.xx.fbcdn.net/v/t15.5256-10/777800040_27464747536561006_509832802318622594_n.jpg?stp=dst-jpg_tt6&cstp=mx1080x1920&ctp=s960x960&_nc_cat=10…",
            "width": 1080,
            "height": 1920,
            "durationSeconds": 29,
            "images": [],
            "music": null
          },
          "link": null,
          "stats": {
            "reactions": 0,
            "reactionsByType": [],
            "comments": 0,
            "shares": 0,
            "views": null,
            "viewsLabel": null
          },
          "topComments": [],
          "isReshare": true,
          "sharedPost": {
            "text": null,
            "author": {
              "name": null,
              "id": null,
              "url": null,
              "avatarUrl": null,
              "verified": null
            },
            "url": "https://www.facebook.com/reel/2332244467596542/"
          }
        }
      ],
      "postCount": 3,
      "paging": {
        "cursor": "Cg8TZXhpc3RpbmdfdW5pdF9jb3VudAIEDwtyZWFsX2N1cnNvcg+zQVFIVGdMYVk3T3Z4VVVRTTV6YkFXLW5XS3dUWXh6cnhyeFFUMC1zYm9qc2RXZmpPUzN5QTdfeGhFVXAtZmo5YTExaW1mYUhEYU1TbFBaODBz…",
        "hasNextPage": true
      },
      "fetchedAt": "2026-10-05T14:43:24.389Z"
    },
    "meta": {
      "requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f",
      "creditsCharged": 1,
      "creditsRemaining": 4999,
      "cached": false
    }
  }

  Please help me write code in my preferred programming language to make this API call and handle the response appropriately. Include error handling and best practices.
  ```
</Accordion>


## OpenAPI

````yaml /api-reference/openapi.json get /v1/facebook/group/posts
openapi: 3.0.3
info:
  title: Scraperize API
  version: 1.0.0
  description: >-
    Extract public data from social media platforms as clean JSON. Endpoints are
    split by platform and by what they return, e.g. `GET /v1/twitter/tweet`.


    ## Authentication

    Send your API key in the `x-api-key` header (or `Authorization: Bearer
    <key>`). Create keys in your dashboard.


    ## Credits

    Each successful live scrape costs **1 credit**. Credits are prepaid and
    never expire.


    ## Caching

    Every endpoint accepts an optional `cache_max_age`
    (`1d`|`3d`|`7d`|`14d`|`30d`). A cache hit within that window is returned for
    **0 credits**.


    ## Responses

    Success returns `{ "data": …, "meta": { "requestId", … } }`. Errors return
    `{ "error": { "code", "message", "requestId" } }` with a matching HTTP
    status. `meta` on a scrape carries `creditsCharged`, `creditsRemaining`,
    `cached`, and (on a hit) `cachedAt`.


    ## Rate limits

    Requests are limited per team per minute; over the limit returns `429` with
    a `Retry-After` header.
servers:
  - url: https://api.scraperize.com
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: Twitter
    description: Twitter / X scraping endpoints
  - name: Facebook
    description: Facebook scraping endpoints
  - name: Linkme
    description: Linkme (link.me) scraping endpoints
  - name: Amazon
    description: Amazon (creator shop / storefront) scraping endpoints
  - name: Linkbio
    description: Linkbio (lnk.bio) scraping endpoints
  - name: Pillar
    description: Pillar (pillar.io) scraping endpoints
  - name: Komi
    description: Komi (komi.io) scraping endpoints
  - name: Linktree
    description: Linktree (linktr.ee) scraping endpoints
  - name: Kick
    description: Kick (kick.com) scraping endpoints
  - name: Snapchat
    description: Snapchat (snapchat.com) scraping endpoints
  - name: Telegram
    description: Telegram (t.me) scraping endpoints
  - name: LinkedIn
    description: LinkedIn scraping endpoints
  - name: Twitch
    description: Twitch scraping endpoints
  - name: TikTok
    description: TikTok (tiktok.com) scraping endpoints
paths:
  /v1/facebook/group/posts:
    get:
      tags:
        - Facebook
      summary: Group posts
      description: >-
        Fetches a public Facebook group's discussion posts (only publicly
        visible posts). Pass `url` OR `groupId` (the numeric group id — faster).
        Each post includes text, author (the member who posted), media
        (photos/video), a shared-link preview, timestamp, and engagement stats
        (reactions with a per-type breakdown, comments, shares). Returns a
        `paging.cursor` / `paging.hasNextPage` for the next page. Use `sortBy`
        to change the ordering (default CHRONOLOGICAL).
      parameters:
        - name: url
          in: query
          required: false
          description: >-
            **Required — provide one of `url` or `groupId`.** Public Facebook
            group URL, e.g. https://www.facebook.com/groups/cristianoronaldo404.
          schema:
            type: string
          example: https://www.facebook.com/groups/cristianoronaldo404
        - name: groupId
          in: query
          required: false
          description: >-
            **Required — provide one of `url` or `groupId`.** Numeric group id
            (faster than url).
          schema:
            type: string
          example: '367172990112802'
        - name: cursor
          in: query
          required: false
          description: The `paging.cursor` from a previous call, to fetch the next page.
          schema:
            type: string
        - name: sortBy
          in: query
          required: false
          description: >-
            Feed ordering (default `CHRONOLOGICAL`). `CHRONOLOGICAL` = newest
            first; `TOP_POSTS` = Facebook's "Most relevant"; `RECENT_ACTIVITY` =
            most recent activity first; `CHRONOLOGICAL_LISTINGS` = newest
            buy/sell listings (only groups with marketplace listings return
            anything). Case-insensitive; spaces are accepted (e.g. "recent
            activity").
          schema:
            type: string
            enum:
              - CHRONOLOGICAL
              - TOP_POSTS
              - RECENT_ACTIVITY
              - CHRONOLOGICAL_LISTINGS
            default: CHRONOLOGICAL
        - name: cache_max_age
          in: query
          required: false
          description: >-
            Optional. Return a cached result if one this age or newer exists —
            served for **0 credits** with `meta.cached=true` and
            `meta.cachedAt`. Otherwise a fresh scrape runs (**1 credit**) and
            refreshes the cache. Omit to always scrape fresh.
          schema:
            type: string
            enum:
              - 1d
              - 3d
              - 7d
              - 14d
              - 30d
          example: 7d
      responses:
        '200':
          description: The group posts.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      posts:
                        type: array
                        items:
                          type: object
                      postCount:
                        type: integer
                      paging:
                        type: object
                        properties:
                          cursor:
                            type: string
                            nullable: true
                          hasNextPage:
                            type: boolean
                      fetchedAt:
                        type: string
                        format: date-time
                  meta:
                    type: object
                    description: >-
                      requestId + credit/caching metadata (creditsCharged,
                      creditsRemaining, cached, cachedAt).
                required:
                  - data
                  - meta
              example:
                data:
                  posts:
                    - postId: '3516531235176946'
                      storyId: UzpfSTEwMDA5MDM0ODgxMjU5OTpWSzozNTE2NTMxMjM1MTc2OTQ2
                      url: >-
                        https://www.facebook.com/groups/cristianoronaldo404/posts/3516531235176946/
                      text: >-
                        Easy DIY Tool Hack 😮 #DIY #WorkshopHacks #DIYTools
                        #ToolTips #USA
                      author:
                        name: Alice Angel
                        id: '100090348812599'
                        url: >-
                          https://www.facebook.com/people/Alice-Angel/100090348812599/
                        avatarUrl: >-
                          https://scontent-los4-1.xx.fbcdn.net/v/t39.30808-1/503737997_680208598334095_3767475048790493201_n.jpg?stp=c0.270.1080.1080a_cp0_dst-jpg_tt6&cstp=mx1080x1080&ctp=s40x40&_nc_cat=111&ccb=1-7&_nc_sid=1d2534&_nc_ohc=qbhyLtgUSwoQ7kNvwEA253M&_nc_oc=Ado5cDsL451DjYVm2bPLynTjzUX25xXXJM86N8LReEr7pVVR3cNiKimfmaJm5K5xZUk&_nc_zt=24&_nc_ht=scontent-los4-1.xx&_nc_gid=DPyAGqVmGK1pd3Fd_PX_JA&_nc_ss=7c289&oh=00_AQPjp8L2Iez7PtgGZeZwfKw5_nQRovZPBv4EyW3rnvR8Lg&oe=6AC994FA
                        verified: null
                      createdAt: '2026-08-31T17:54:52.000Z'
                      createdTimestamp: 1788198892
                      media:
                        type: video
                        videoId: '2332244467596542'
                        videoUrl: >-
                          https://video-los4-1.xx.fbcdn.net/o1/v/t2/f2/m366/AQMpowAj8kbVPvfLLnTGpi8v2K0Wtq-3EmilGrWtT0-hiWbOPXUvkz7-aA1DPf67VLlf9mBarzEYT__IGBWBVXzsmHU0gwr98HZ4qRQqp3KhMg.mp4?_nc_cat=109&_nc_sid=5e9851&_nc_ht=video-los4-1.xx.fbcdn.net&_nc_ohc=F2HaOe9jEFcQ7kNvwHKW39g&efg=eyJ2ZW5jb2RlX3RhZyI6Inhwdl9wcm9ncmVzc2l2ZS5GQUNFQk9PSy4uQzMuNzIwLmRhc2hfaDI2NC1iYXNpYy1nZW4yXzcyMHAiLCJ4cHZfYXNzZXRfaWQiOjEwNTIxMTI4OTA5NTIxMzMsImFzc2V0X2FnZV9kYXlzIjo0NywidmlfdXNlY2FzZV9pZCI6MTAxMjIsImR1cmF0aW9uX3MiOjI5LCJ1cmxnZW5fc291cmNlIjoid3d3In0%3D&ccb=17-1&vs=a5acb8e1ba8ba118&_nc_vs=HBksFQIYRWZiX2VwaGVtZXJhbC8xRjQ4OEI4OUIxQzMwRUY5NEZEMjFGNDYwQjg0NjQ4MF9tdF8xX3ZpZGVvX2Rhc2hpbml0Lm1wNBUAAsgBEgAVAhhAZmJfcGVybWFuZW50LzA5NDBENEM0MEY2NkJGQUI3QTJGQTM4MDFGRTVBNjg3X2F1ZGlvX2Rhc2hpbml0Lm1wNBUCAsgBEgAoABgAGwKIB3VzZV9vaWwBMRJwcm9ncmVzc2l2ZV9yZWNpcGUBMRUAACaK54fyg7neAxUCKAJDMywXQD1VP3ztkWgYGWRhc2hfaDI2NC1iYXNpYy1nZW4yXzcyMHARAHUCZZSeAQA&_nc_gid=DPyAGqVmGK1pd3Fd_PX_JA&_nc_ss=7c289&_nc_zt=28&oh=00_AQMQZwdm6wTFleqdRtkLaFSnFy0hPcckjS8SKkptryDH_g&oe=6AC983BF&bitrate=1634821&tag=dash_h264-basic-gen2_720p
                        videoHdUrl: >-
                          https://video-los4-1.xx.fbcdn.net/o1/v/t2/f2/m366/AQMpowAj8kbVPvfLLnTGpi8v2K0Wtq-3EmilGrWtT0-hiWbOPXUvkz7-aA1DPf67VLlf9mBarzEYT__IGBWBVXzsmHU0gwr98HZ4qRQqp3KhMg.mp4?_nc_cat=109&_nc_sid=5e9851&_nc_ht=video-los4-1.xx.fbcdn.net&_nc_ohc=F2HaOe9jEFcQ7kNvwHKW39g&efg=eyJ2ZW5jb2RlX3RhZyI6Inhwdl9wcm9ncmVzc2l2ZS5GQUNFQk9PSy4uQzMuNzIwLmRhc2hfaDI2NC1iYXNpYy1nZW4yXzcyMHAiLCJ4cHZfYXNzZXRfaWQiOjEwNTIxMTI4OTA5NTIxMzMsImFzc2V0X2FnZV9kYXlzIjo0NywidmlfdXNlY2FzZV9pZCI6MTAxMjIsImR1cmF0aW9uX3MiOjI5LCJ1cmxnZW5fc291cmNlIjoid3d3In0%3D&ccb=17-1&vs=a5acb8e1ba8ba118&_nc_vs=HBksFQIYRWZiX2VwaGVtZXJhbC8xRjQ4OEI4OUIxQzMwRUY5NEZEMjFGNDYwQjg0NjQ4MF9tdF8xX3ZpZGVvX2Rhc2hpbml0Lm1wNBUAAsgBEgAVAhhAZmJfcGVybWFuZW50LzA5NDBENEM0MEY2NkJGQUI3QTJGQTM4MDFGRTVBNjg3X2F1ZGlvX2Rhc2hpbml0Lm1wNBUCAsgBEgAoABgAGwKIB3VzZV9vaWwBMRJwcm9ncmVzc2l2ZV9yZWNpcGUBMRUAACaK54fyg7neAxUCKAJDMywXQD1VP3ztkWgYGWRhc2hfaDI2NC1iYXNpYy1nZW4yXzcyMHARAHUCZZSeAQA&_nc_gid=DPyAGqVmGK1pd3Fd_PX_JA&_nc_ss=7c289&_nc_zt=28&oh=00_AQMQZwdm6wTFleqdRtkLaFSnFy0hPcckjS8SKkptryDH_g&oe=6AC983BF&bitrate=1634821&tag=dash_h264-basic-gen2_720p
                        videoSdUrl: >-
                          https://video-los4-1.xx.fbcdn.net/o1/v/t2/f2/m412/AQNFTvOwg0PRi5yJoY6STCthra-mYmiHcbOYEsDhCd8lVOKTrvINyHP9oRq2G77HTzKRP0-pEVwvSA9nLaTiH5Pj8o-lY4ZA3-cEojlC9w.mp4?_nc_cat=109&_nc_sid=8bf8fe&_nc_ht=video-los4-1.xx.fbcdn.net&_nc_ohc=jBScYNatSawQ7kNvwFwMBVX&efg=eyJ2ZW5jb2RlX3RhZyI6Inhwdl9wcm9ncmVzc2l2ZS5GQUNFQk9PSy4uQzMuMzYwLnN2ZV9zZCIsInhwdl9hc3NldF9pZCI6MTA1MjExMjg5MDk1MjEzMywiYXNzZXRfYWdlX2RheXMiOjQ3LCJ2aV91c2VjYXNlX2lkIjoxMDEyMiwiZHVyYXRpb25fcyI6MjksInVybGdlbl9zb3VyY2UiOiJ3d3cifQ%3D%3D&ccb=17-1&_nc_gid=DPyAGqVmGK1pd3Fd_PX_JA&_nc_ss=7c289&_nc_zt=28&oh=00_AQMzreCdc2nbqUGyST6LzwcPiIYnwuFihC_w1Fo_LNxa_g&oe=6AC97C99&bitrate=397164&tag=sve_sd
                        thumbnailUrl: >-
                          https://scontent-los4-1.xx.fbcdn.net/v/t15.5256-10/777800040_27464747536561006_509832802318622594_n.jpg?stp=dst-jpg_tt6&cstp=mx1080x1920&ctp=s960x960&_nc_cat=104&ccb=1-7&_nc_sid=d2b52d&_nc_ohc=QuI-Bw_kfM0Q7kNvwHa4Asm&_nc_oc=AdrBchMhbYHCu58cebrenkgEqti_0Guf_-vuGBBsgOMDkR_gE_sRonI8JgUjV-CE9v0&_nc_zt=23&_nc_ht=scontent-los4-1.xx&_nc_gid=DPyAGqVmGK1pd3Fd_PX_JA&_nc_ss=7c289&oh=00_AQP3crMD1WGrWqmSXYVbBVNhBHtq_I1X8BdyJ16xf4I64g&oe=6AC97C11
                        width: 1080
                        height: 1920
                        durationSeconds: 29
                        images: []
                        music: null
                      link: null
                      stats:
                        reactions: 0
                        reactionsByType: []
                        comments: 0
                        shares: 0
                        views: null
                        viewsLabel: null
                      topComments: []
                      isReshare: true
                      sharedPost:
                        text: null
                        author:
                          name: null
                          id: null
                          url: null
                          avatarUrl: null
                          verified: null
                        url: https://www.facebook.com/reel/2332244467596542/
                    - postId: '3349239175239487'
                      storyId: UzpfSTEwMDA5MTgyNzAyNTA5MzpWSzozMzQ5MjM5MTc1MjM5NDg3
                      url: >-
                        https://www.facebook.com/groups/cristianoronaldo404/posts/3349239175239487/
                      text: null
                      author:
                        name: Raju Mondal
                        id: >-
                          pfbid02cq2KA2ZGxXVfQVgQwDEXyAKryz5ziCo84yj7e2Mh9pKX32TF4R9xPqGseyqaT4ZRl
                        url: >-
                          https://www.facebook.com/people/Raju-Mondal/pfbid02cq2KA2ZGxXVfQVgQwDEXyAKryz5ziCo84yj7e2Mh9pKX32TF4R9xPqGseyqaT4ZRl/
                        avatarUrl: >-
                          https://scontent-los4-1.xx.fbcdn.net/v/t39.30808-1/343453846_194757432910266_3101380573593260046_n.jpg?stp=cp0_dst-jpg_tt6&cstp=mx505x505&ctp=s40x40&_nc_cat=109&ccb=1-7&_nc_sid=e99d92&_nc_ohc=JzRBX1BFHeAQ7kNvwGxKg3b&_nc_oc=Adp7IYOo8JGiEcIC-OkwQlVN84FsnOFt9HSgn5S2LnO7hZG_922bEi47QtOf5Ji2y2k&_nc_zt=24&_nc_ht=scontent-los4-1.xx&_nc_gid=DPyAGqVmGK1pd3Fd_PX_JA&_nc_ss=7c289&oh=00_AQNk2A60x0ppxrEYSi1DpVue1pFKAa2m1Fa5T8lmt-D_mQ&oe=6AC97644
                        verified: null
                      createdAt: '2026-03-31T17:19:16.000Z'
                      createdTimestamp: 1774977556
                      media:
                        type: null
                        videoId: null
                        videoUrl: null
                        videoHdUrl: null
                        videoSdUrl: null
                        thumbnailUrl: null
                        width: null
                        height: null
                        durationSeconds: null
                        images: []
                        music: null
                      link: null
                      stats:
                        reactions: 6
                        reactionsByType:
                          - type: Like
                            count: 6
                          - type: Love
                            count: 0
                          - type: Care
                            count: 0
                        comments: 0
                        shares: 0
                        views: null
                        viewsLabel: null
                      topComments: []
                      isReshare: false
                      sharedPost: null
                    - postId: '3202741759889230'
                      storyId: UzpfSTEwMDA0MjQyNzY0MDc0NDpWSzozMjAyNzQxNzU5ODg5MjMw
                      url: >-
                        https://www.facebook.com/groups/cristianoronaldo404/posts/3202741759889230/
                      text: >-
                        Goals scored since Cristiano's 2nd United debut (so
                        far):


                        Rashford: 50 goals in 154 games

                        Bruno Fernandes: 48 goals in 189 games

                        Cristiano: 27 goals in 54 games

                        Garnacho: 23 goals in 126 games

                        Hojlund: 23 goals in 78 games


                        Cristiano joined Al Nassr in January 2023. 🤯
                      author:
                        name: Mam Kania Tudiroh
                        id: '100042427640744'
                        url: https://www.facebook.com/Tudiroh
                        avatarUrl: >-
                          https://scontent-los4-1.xx.fbcdn.net/v/t39.30808-1/669297920_1684128233011415_7889713644786062292_n.jpg?stp=cp0_dst-jpg_tt6&cstp=mx1280x1280&ctp=s40x40&_nc_cat=100&ccb=1-7&_nc_sid=1d2534&_nc_ohc=MtpFTLZpXfwQ7kNvwF6tZ0X&_nc_oc=AdoZvu3MgJOYj0EviYulwZIKx59DP-gwoYgZew4Py5N8svmUx2BAIoP6TETvpV8kNI0&_nc_zt=24&_nc_ht=scontent-los4-1.xx&_nc_gid=DPyAGqVmGK1pd3Fd_PX_JA&_nc_ss=7c289&oh=00_AQMC63kPjvZrLKvRtxnBvTVAMt298q1lHgEbpaYI9cXwXg&oe=6AC976A6
                        verified: null
                      createdAt: '2025-11-10T10:45:52.000Z'
                      createdTimestamp: 1762771552
                      media:
                        type: photo
                        videoId: null
                        videoUrl: null
                        videoHdUrl: null
                        videoSdUrl: null
                        thumbnailUrl: >-
                          https://scontent-los4-1.xx.fbcdn.net/v/t39.30808-6/580499657_1559955022095404_3958095944604037543_n.jpg?stp=dst-jpg_tt6&cstp=mx720x878&ctp=s640x640&_nc_cat=111&ccb=1-7&_nc_sid=aa7b47&_nc_ohc=UPQ6pGikmjIQ7kNvwG1EfOb&_nc_oc=AdqzA3YqD_cDE9_wBUUVFCyK1ajUMYxZU74p9uCV1pJ2rSHrJVP784UzjXFUzoPg6cQ&_nc_zt=23&_nc_ht=scontent-los4-1.xx&_nc_gid=DPyAGqVmGK1pd3Fd_PX_JA&_nc_ss=7c289&oh=00_AQMXz8x4ut-HqqpLBvNw12Hap2KxQdi4Kh4f0cvnAC1enw&oe=6AC98959
                        width: null
                        height: null
                        durationSeconds: null
                        images:
                          - >-
                            https://scontent-los4-1.xx.fbcdn.net/v/t39.30808-6/580499657_1559955022095404_3958095944604037543_n.jpg?stp=dst-jpg_tt6&cstp=mx720x878&ctp=s640x640&_nc_cat=111&ccb=1-7&_nc_sid=aa7b47&_nc_ohc=UPQ6pGikmjIQ7kNvwG1EfOb&_nc_oc=AdqzA3YqD_cDE9_wBUUVFCyK1ajUMYxZU74p9uCV1pJ2rSHrJVP784UzjXFUzoPg6cQ&_nc_zt=23&_nc_ht=scontent-los4-1.xx&_nc_gid=DPyAGqVmGK1pd3Fd_PX_JA&_nc_ss=7c289&oh=00_AQMXz8x4ut-HqqpLBvNw12Hap2KxQdi4Kh4f0cvnAC1enw&oe=6AC98959
                        music: null
                      link: null
                      stats:
                        reactions: 144
                        reactionsByType:
                          - type: Like
                            count: 120
                          - type: Love
                            count: 20
                          - type: Care
                            count: 4
                        comments: 0
                        shares: 0
                        views: null
                        viewsLabel: null
                      topComments: []
                      isReshare: false
                      sharedPost: null
                  postCount: 3
                  paging:
                    cursor: >-
                      Cg8TZXhpc3RpbmdfdW5pdF9jb3VudAIEDwtyZWFsX2N1cnNvcg+zQVFIVGdMYVk3T3Z4VVVRTTV6YkFXLW5XS3dUWXh6cnhyeFFUMC1zYm9qc2RXZmpPUzN5QTdfeGhFVXAtZmo5YTExaW1mYUhEYU1TbFBaODBzcnNsLTAyNk1ROmV5SXdJam94TnpreE1qRXhOREF5TENJeElqbzNOamd5TENJeklqb3dMQ0kwSWpveExDSTFJam8wTENJMklqb3RNU3dpTnlJNkxURXNJamdpT2kweGZRPT0PE2hlYWRlcl9nbG9iYWxfY291bnQCAQ8SbWFpbl9mZWVkX3Bvc2l0aW9uAgQPDWZlZWRfb3JkZXJpbmcPDWF0dGFjaGVkX3RpbWUPE2lzX2V2ZXJncmVlbl9jdXJzb3IRAA8iaXNfb2ZmbGluZV9hZ2dyZWdhdGVkX3Bvc3RzX2N1cnNvchEADxJncm91cF9mZWVkX3ZlcnNpb24PAlYyDxBkZW1vdGVkX3Bvc3RfaWRzCgEB
                    hasNextPage: true
                  fetchedAt: '2026-10-05T14:43:24.389Z'
                meta:
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
                  creditsCharged: 1
                  creditsRemaining: 4999
                  cached: false
        '400':
          description: Invalid or expired cursor.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: BAD_REQUEST
                  message: The request was invalid.
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
        '401':
          description: Missing, invalid, or revoked API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: UNAUTHORIZED
                  message: API key required — pass it in the `x-api-key` header.
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
        '402':
          description: Not enough credits for this request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: INSUFFICIENT_CREDITS
                  message: >-
                    This request costs 1 credit, but your balance is 0. Top up
                    to continue.
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
        '404':
          description: Group not found / no public posts.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: NOT_FOUND
                  message: >-
                    The requested content was not found (it may not exist, be
                    deleted, or be private).
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
        '422':
          description: Invalid query parameters (missing url and groupId).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: VALIDATION_ERROR
                  message: Request validation failed
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
                  details:
                    - path: url
                      message: Required
        '429':
          description: Over the per-minute rate limit — honour `Retry-After`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: RATE_LIMITED
                  message: >-
                    Rate limit exceeded — max 100 requests per 60s. Retry in
                    ~30s.
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
        '503':
          description: >-
            Temporarily unavailable — retry after `Retry-After`. `error.code`
            tells you why: `UPSTREAM_BLOCKED` (the source blocked this request),
            `EXTRACTION_FAILED` (the source returned unexpected data),
            `PLATFORM_UNAVAILABLE` (the source is down), or
            `SERVICE_UNAVAILABLE` (we are at capacity).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: UPSTREAM_BLOCKED
                  message: >-
                    The source is temporarily unavailable. Please try again
                    shortly.
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              example: NOT_FOUND
            message:
              type: string
              example: The requested content was not found.
            requestId:
              type: string
              example: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
            details:
              type: array
              items:
                type: object
              description: Present on validation errors.
          required:
            - code
            - message
            - requestId
      required:
        - error
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Your API key. Send it in the `x-api-key` header (or `Authorization:
        Bearer <key>`). Create and manage keys from your dashboard.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.