Get Telegram posts via /profile/posts
Read one page of Telegram channel posts with channel metadata, media inventory, text, media and reactions. Continue older history with cursor or search within the channel with q.
/v1/telegram/profile/postsx-api-keyHeaders
Get your API keyYour ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.
Public handle, @handle or HTTPS t.me/handle URL.
max 128 chars
exampleOptional numeric older-message cursor for the request; the response carries the next older cursor or null.
Optional channel text query, from 1 to 200 characters.
min 1 chars · max 200 chars
Operational request identifier.
Source attempts, decoded bytes, elapsed time and active-request sharing.
Always included.
≥ 0
Always included.
≥ 0
Always included.
≥ 0
Optional.
Whether usable data was returned.
success, partial, failed or challenged.
one of: success, partial
Retrieved channel page URL.
absolute HTTPS URL
UTC retrieval time.
Field coverage and extraction warnings.
Always included.
one of: public_preview, public_embed
Always included.
Always included.
Channel metadata, audience and photo/video/file/link inventory.
Canonical lowercase username.
Canonical t.me URL.
absolute HTTPS URL
channel, group, user_or_bot or unknown, based on the landing page.
one of: channel, group, user_or_bot, unknown
Public display name.
min 1 chars
Public description with visible inline text and rendered line breaks. Null when absent.
Public HTTPS avatar URL, or null when absent.
Whether the page displays a verified badge.
Numeric channel subscriber count derived from the displayed count.
Original displayed subscriber count, retaining abbreviations.
Public group member count; null for channels.
Original displayed member count, retaining abbreviations.
Group online count when shown, otherwise null.
Displayed inventory count; null when absent.
Displayed inventory count; null when absent.
Displayed inventory count; null when absent.
Displayed inventory count; null when absent.
Post records in source order, including rendered text, media and reactions.
up to 100 items
Source message ID as a decimal string.
Canonical channel handle.
Canonical post permalink.
absolute HTTPS URL
Displayed author name.
Public author URL.
Post text with normalized whitespace.
Post text with rendered line breaks and visible inline text.
Source publication datetime.
Numeric displayed view count.
Original displayed view count.
Emoji or custom emoji ID with numeric and displayed reaction counts.
up to 100 items
Always included.
Always included.
Always included.
Always included.
Sum of available reaction counts.
Forward attribution name and URL when shown.
Always included.
Always included.
Ordered photo, video, document or audio entries with source URLs, thumbnails and displayed duration.
up to 100 items
Always included.
one of: photo, video, document, audio
Always included.
Always included.
Always included.
Linked URL, site name, title, description and image URL.
Always included.
Always included.
Always included.
Always included.
Always included.
Optional numeric older-message cursor for the request; the response carries the next older cursor or null.
Whether another older-message cursor is available.
No fields match.
HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.
| HTTP | failure.code | Meaning |
|---|---|---|
| 400 | invalid_request | Missing, duplicate, unsupported or invalid parameters. |
| 401 | unauthorized | Missing or invalid service key. |
| 403 | restricted_page | Public page explicitly reports restricted access. |
| 404 | not_found | Missing profile or generic contact fallback. |
| 429 | upstream_rate_limited | No automatic retry. |
| 502 | upstream_challenged unsupported_page | Challenge, unrecognized page or identity mismatch. |
| 502 | upstream_error unsafe_redirect response_too_large payload_too_complex request_limit | Bounded retrieval failed. |
| 503 | busy | All worker slots occupied. |
| 504 | timeout | Deadline exceeded. |
| 200 | partial | Unknown entity type or unavailable displayed counts. |