# Telegram Profile Posts API (https://www.socialcrawl.dev/platforms/telegram/profile-posts) > Returns one page of recent public posts from a Telegram channel or group, newest page first. Each post carries its text, publish time, view count, the per-emoji reaction breakdown, and direct media URLs for photos and videos. Pass the returned cursor to walk further back through the channel's history. Page size varies because photo albums count as one post and service messages are skipped, so a short page does not mean the end of the channel: keep paging until the cursor is absent. TL;DR: `GET /v1/telegram/profile/posts` costs 1 credit per call and returns SocialCrawl's unified JSON schema. Single x-api-key auth, 100 free credits on signup. ## Parameters | Parameter | Required | Description | | --- | --- | --- | | `handle` | yes | Public Telegram handle, with or without the leading @, or a t.me channel URL | | `cursor` | no | Cursor from the previous page's pagination block. Omit it for the most recent posts. | ## Code example ```bash curl "https://www.socialcrawl.dev/v1/telegram/profile/posts?handle=telegram" \ -H "x-api-key: sc_YOUR_API_KEY" ``` ## FAQ ### What is in each Telegram post row? The post id and permalink, its text, publish time, view count, total reactions, the per-emoji reaction breakdown, and direct URLs for every photo or video attached, including both images in a two-photo album. ### How does pagination work? Each response carries a cursor. Pass it back on the next call to move further into the past, and keep going until the cursor is absent. The cursor is the oldest message id on the page, so you can also resume a walk from a message you already stored. ### Why do pages come back with different numbers of posts? Photo albums count as a single post and service messages are skipped, so page sizes vary. A live 24-page walk ran 20, 19, 20, then 11, 15, 6, and finished on a page of 1. A short page is never a signal that the channel has ended. ### Will I get duplicate posts across pages? No. A full walk of a 546-message channel returned 426 posts across 24 pages with zero duplicate rows, so you can append each page to storage without deduplicating. ### Can I get media files, not just links? Every photo and video comes back as a direct URL you can fetch or embed, with a thumbnail for videos and the clip length in seconds. There is no second authenticated download step. See the full Telegram API: https://www.socialcrawl.dev/platforms/telegram ## Pricing - Standard endpoints: 1 credit per call - Advanced endpoints: 5 credits per call - Premium endpoints: 10 credits per call - 100 free credits on signup, no credit card required. Cached responses cost 0 credits. Credit packs never expire. - Full pricing: https://www.socialcrawl.dev/pricing ## Explore with AI Questions this API answers, phrased for an AI assistant: - How do I download all posts from a public Telegram channel? - Which API paginates Telegram channel message history without MTProto?