Skip to content

Channel Posts

GET/v1/telegram/channel/posts1 credit

Returns a page of a public channel's posts with text, publish time, views, reactions, media, link previews, forward source and polls (question, options, results), plus the channel's header details.

01Query parameters

NameTypeDescription
handlerequiredstringThe public channel's username or link: `durov`, `@durov` or `https://t.me/durov`.
cursoroptionalstringThe `cursor` value from the previous page (a post id), passed back to get older posts.
cache_max_ageoptionalstringAccepted for compatibility: how old a cached answer may be. Every call is fetched fresh, so it does not change the answer or the price.Accepted values:1d3d7d14d30d

02Request

curl "https://api.scrapesocial.ai/v1/telegram/channel/posts?handle=durov" \
  -H "x-api-key: $SCRAPESOCIAL_KEY"

03Responses

Real answers from the API. Lists are shortened to 2 items.

GET /v1/telegram/channel/posts?handle=durov

{
  "success": true,
  "credits_remaining": 4980,
  "credits_charged": 1,
  "channel": {
    "handle": "durov",
    "name": "Pavel Durov",
    "description": "Founder of Telegram.",
    "url": "https://t.me/durov",
    "avatar_url": "https://cdn4.telesco.pe/file/enJjZA2XzVbFAjeTOqFmqCmKVB5C_ZO1xVZAc4I4FHpcUdG6hDb5J51QzS22g6-tJRQGrlGmdtgU1eGT8p-i8JKeqcmCeGhl9vfVeW9yE4BGbeGSkiCZM8PKp_tk6ERV37lqm7F5woM7pH1Yr1ZfsNolrCfBiG16Ds2xrbM99J5Hr-5gsTz2I5f3Mom7BMCwHLFDseUGGHAonLz0SzXMeiX-mnheeroFMi0MZ2WS6E2RFng-3J1CBNV9iH9CUz2sLmQiNcTqepMdytRNF0cNDdMkibIS5_zANtiRy-CRf3bgXHspFVdqQX3lMPpf_rQgT1ABeQh4Cv79DhmnL_hYVw.jpg",
    "is_verified": true,
    "subscriber_count": 10300000,
    "subscriber_count_text": "10.3M",
    "member_count": null,
    "member_count_text": null,
    "photo_count": 102,
    "video_count": 47,
    "file_count": null,
    "link_count": 200
  },
  "posts": [
    {
      "id": "531",
      "channel_handle": "durov",
      "url": "https://t.me/durov/531",
      "author_name": "Pavel Durov",
      "author_url": "https://t.me/durov",
      "text": "🩵 Telegram now has a Rich Text Editor. It supports tables, headings, inline media, lists, AI content, formulas, and more. 😈 Messaging apps will never be the same!",
      "published_at": "2026-07-16T20:45:25+00:00",
      "view_count": 5840000,
      "view_count_text": "5.84M",
      "reactions": [
        {
          "emoji": "⭐",
          "emoji_id": null,
          "count": 6300,
          "count_text": "6.3K"
        },
        {
          "emoji": null,
          "emoji_id": "5265077361648368841",
          "count": 54600,
          "count_text": "54.6K"
        }
      ],
      "reaction_count": 95110,
      "forwarded_from": null,
      "media": [
        {
          "type": "video",
          "url": "https://cdn4.telesco.pe/file/b231b9b161.mp4?token=mg0DQG6NjrvUubauVWSFWjkR_WdX1AnXxIZXPdEMVuxXd72lxKw_kIMLanz6SGiuCz5l8mbIEze9wTqWNhHC8bILm1aUnpkvb_5M-royVgjY1hNDYasNtLKZmYNCj72U6woDbhxLqOGmCdfF5O5h7Z-NrBNtG1wGN7o5-vgp96q3P1hgNw3eJqK4HTkcxvqo3wKI_ZvOyea2svrb6uKd0ybBjRZF9-gtNUhO3gO_lh_RXyap86bgPxqCuAe5avXaoK0pkfHT4zBPLl-27hskOVX93COOb1QbzxqxPhyu_aPdL6dbMMKKqQ6ekV16mSputZMl8yTK5qy1RhVijS-_nIi-rc8JTn…",
          "thumbnail_url": "https://cdn4.telesco.pe/file/JcEMS9Bq90aZQ4T4hTjXv8GwjylP99JjolEOlrsaRUQUoTg-FkIiVr22US2gPq7F7KTpVfv3a0LheA34sLpn3yt56djZa24ahRgfrYjrR9Tht3S1qXOxDIqGaCEpDwxIAaXFxgsQPk2vxVM-4k-YrgxsPIhO0ojSDeOqZ5crBHjyNulwZ4VVYkYb03h6natXFjhUUxmiQgXSg_fzlL1-aiz3L4nkJv1RjF2Mvr5ZCS8-Y9L4G_vSBrGsxkeOLVpsnYzLy0ut75H8m3woet_EIqWuLRYS9l3zXRrdmaSwIFeATLcZJqs0Jj7ypHqzrDuyeuYKYaXVYbP93Vl2nV7orA",
          "duration": null
        }
      ],
      "link_preview": null,
      "poll": null
    },
    {
      "id": "532",
      "channel_handle": "durov",
      "url": "https://t.me/durov/532",
      "author_name": "Pavel Durov",
      "author_url": "https://t.me/durov",
      "text": "🎠 Telegram now supports carousels One small step for messaging, one giant leap toward turning cat photos into keynote presentations. 😺",
      "published_at": "2026-07-19T21:45:01+00:00",
      "view_count": 6550000,
      "view_count_text": "6.55M",
      "reactions": [
        {
          "emoji": "⭐",
          "emoji_id": null,
          "count": 5810,
          "count_text": "5.81K"
        },
        {
          "emoji": null,
          "emoji_id": "5373223594484587136",
          "count": 56000,
          "count_text": "56K"
        }
      ],
      "reaction_count": 84340,
      "forwarded_from": null,
      "media": [
        {
          "type": "video",
          "url": "https://cdn4.telesco.pe/file/181642ae31.mp4?token=nywY3wMCjnXLXXMiFJhv0sbQoLqxxSNKxSYovhlY7A3JUzZSXtSYahEfxgQrmhBaqfrM6prHQBiSwNb5dAwaRJonmM9QRom4BxMseDSfl-NDzOzs1y-YDfZ8zP8LJqyV7if1XQj5LYkJ8LE-oh1uBdyJkRutuPNX9UGyQq0wn8SlcFpj3nYHTzrQWgVMGfAxNPgiTn2Y-ou4LlcSkUjgJNLjByXSbXlxsfbijroRqq8lHAUEPpukvfNSdv6y3MnmLSKT-HGX0tqENF5VNQq6xMG5KchoVEIIZzlhqaUd25Eaz6BJSZQ090fUMqPDUa37RHH4KAF2cWOfYQcb9ZM9oQ",
          "thumbnail_url": "https://cdn4.telesco.pe/file/ZkMGYen6bnVsuBLEPnGvFu7hW4i2uC_OlHGJ-i7QBhxqoRm2_99vcbGkgLMAkw_msoy8PlviaPYQ3z1yfS3P9wvI1Vsqq842rUNl81TOjIJGc-Xr2OvmnUd3MeB_FquprJIHQpJ6rM85ufyouI-48-VIeNGaZbOb3u4V-M4gzRTNTAFq0zDlUFrwa_OSDlycjJztcK3mQsW2AFZpAMTCMmKUoEDYgcsWhTJ8nrV_ori1b5s3_-WS3TtkjCP5JQNofXo8c3ygy8XcsmRG2qrByPHuKAeJF8ll1z6bCYL6t_JoNmlmUHK_HxczE342GtLsFB_BLCYhbizLaTW2TNcnvQ",
          "duration": null
        }
      ],
      "link_preview": null,
      "poll": null
    }
  ],
  "cursor": "531",
  "has_more": true
}

Common to every endpoint

Any route can answer these: a missing or wrong key, no credits left, the platform not answering, or a failure on our side. None of them costs credits.

GET /v1/cosmos/profile?handle=design

{
  "success": false,
  "message": "Invalid API key"
}

04Notes

Posts come in `posts`, about 20 per page, oldest first within the page; the first page is the latest posts. Pass `cursor` back as `cursor` for older posts while `has_more` is true; it is null on the oldest page, and a page past it returns an empty list for 0 credits. View and reaction counts are read from Telegram's rounded figures (`5.81M` becomes 5810000). Each post has a `poll` key (our addition, not in ScrapeCreators' answer): null without a poll, else its question, type (`regular` or `quiz`), whether it is anonymous, multiple-choice or closed, the voter count (rounded here, `48.7K`) and each option's percent and votes; a value Telegram's page does not show is null (a closed poll no longer says quiz or anonymous; the correct quiz answer is never shown), and votes are filled only where they follow exactly from the page's result bars. A group or a channel without a public preview is a free 403; an unknown channel a free 404.

05Errors & credits

Every error has success: false, a real HTTP status and costs no credits.

  • 400missing_parameter

    A required parameter is missing or invalid.

  • 403private_account

    The account is private or age-restricted.

  • 404not_found

    No such account.

  • 503upstream_error

    The platform did not answer; retry shortly.