Telegram scraper API
Resolve public Telegram channels and posts over REST — entity cards, recent message pages, and single-post lookups — without running a userbot that can get banned.
Why teams use Social Fetch for Telegram
Telegram channels are where crypto alerts, niche newsrooms, and community digests ship first. Teams that need subscriber cards or message streams often reach for MTProto userbots: session files, flood waits, and account bans when a monitor job scales past a handful of usernames.
Social Fetch exposes public Telegram as ordinary GET routes. Pass a public `@username` (or a known post id) with `x-api-key` and get the shared `{ data, meta }` envelope — `data.lookupStatus`, `meta.requestId`, and `meta.creditsCharged` — the same shape you already use for TikTok or X. Failed resolves surface as typed statuses, not an empty 200 that looks like a deleted channel.
Coverage is deliberately narrow: public channel and group entity cards, broadcast-channel post lists with cursor pagination, and single-post lookups by numeric id. Private chats, DMs, and anything that requires joining as a user are out of scope. Bot API remains the right tool when you need to send messages or manage a bot inside Telegram.
What Telegram data can you get?
- Public channel and group metadata by username — title, description, avatar, verification, size fields.
- Channel post lists (broadcast channels) with text, views, media URLs, reactions, and cursor pagination.
- Single channel post by username and numeric post id for alerts and deep links.
- Shared Social Fetch envelope so Telegram rows land next to other networks in one schema.
Telegram API endpoints
Grouped by capability from the live API catalog. Open an endpoint page for parameters and examples — credit notes come from OpenAPI pricing extensions.
Profiles & channels
1Lists & graphs
1Content
1How to call the Telegram API
1. Create an API key
Sign up at Social Fetch and copy a key (`sfk_…`). New accounts get 100 free credits — enough to resolve one channel card and page a few posts against live data.
2. Call a Telegram route
Start with `GET /v1/telegram/channels/{handle}` for the entity card, then `.../posts` or `.../posts/{postId}` when you need messages. Send `x-api-key` on every request. Use the playground for one-off checks; use the TypeScript SDK or curl in production jobs.
3. Read the shared envelope
Branch on `data.lookupStatus` before writing rows. Log `meta.requestId` for support. Bill against `meta.creditsCharged` — that field is the source of truth for what the call cost.
How much does the Telegram API cost?
Telegram channel, posts list, and single-post routes charge 1 credit per successful completed lookup in the OpenAPI notes. Credits never expire on pay-as-you-go packs. Always trust `meta.creditsCharged` on the response.
Social Fetch vs the official Telegram API
Telegram Bot API and MTProto are first-party ways to build bots, clients, and user-authorized apps inside Telegram. They are the right choice when you need to send messages, manage bot commands, or act as a logged-in user. They are the wrong choice when you only need public channel enrichment without owning a bot or risking a user session. Social Fetch is not a Bot API replacement: it looks up public t.me pages the way a browser would, returns a normalized envelope you can store next to Instagram and X rows, and authenticates with a Social Fetch API key only — no Bot token, no userbot session file.
Telegram API FAQ
Is there a Telegram scraper API that works without a userbot?
Yes. Social Fetch Telegram routes read public channel and post data over REST. You authenticate to Social Fetch with an API key — you do not run an MTProto client session or pass Telegram user credentials.
What Telegram data does Social Fetch cover?
Public channel and group entity cards by username, recent posts for broadcast channels (with cursor pagination), and a single post by username plus numeric post id. Exact paths live under `/docs/api` and on this hub's endpoint list. Private chats and DMs are not covered.
Telegram Bot API vs Social Fetch — what is the difference?
Bot API is for building bots that send and receive messages inside Telegram (you need a bot token from BotFather). Social Fetch is a public-data lookup API: username or post id in, structured JSON out, no bot required. Choose Bot API when you need write access or bot interactions; choose Social Fetch for public channel enrichment and monitoring alongside other networks.
Do I need a Telegram Bot API token?
No. Social Fetch authenticates with your Social Fetch API key only. You do not pass a Bot API token for these public lookups.
Can I list posts from a public Telegram group?
No. Post list and single-post routes support public broadcast channels only. Groups are not supported on those operations. Use `GET /v1/telegram/channels/{handle}` when you need group metadata (title, member counts) from a public username.
How do I fetch a Telegram channel by handle?
Call `GET /v1/telegram/channels/{handle}` with `x-api-key`. The handle is the public `@username` (with or without `@`). Read `data.lookupStatus` before treating `data.entity` as found. Details are on the channel endpoint page linked below.
How do I list or fetch Telegram channel posts?
List recent messages with `GET /v1/telegram/channels/{handle}/posts` and page with the opaque `cursor` from `data.nextCursor` while `data.hasMore` is true. Fetch one message with `GET /v1/telegram/channels/{handle}/posts/{postId}` when you already know the numeric id from a t.me URL.
How much does the Telegram API cost?
You buy credit packs (or use the 100 free signup credits). The Telegram channel, posts list, and single-post operations document 1 credit per successful request. Check `meta.creditsCharged` on every response. There is no required monthly subscription for pay-as-you-go packs.
Can I read private Telegram chats or invite-only channels?
No. Only publicly visible channel and group pages. Restricted or private entities return typed `lookupStatus` outcomes (`not_found` / `restricted`) rather than inventing empty payloads.
Is scraping Telegram data legal?
Social Fetch returns publicly visible data. You are responsible for how you use it under Telegram's terms, applicable law, and your own compliance review. We do not give legal advice.
Start with Telegram data
Create an account, spend the 100 free credits on live Telegram routes, then buy a pack when the JSON fits your pipeline. Credits do not expire on pay-as-you-go packs.