Social Fetch
Telegram

Get Telegram channel post

Get a single public post from a Telegram channel by handle and post ID. Groups are not supported.

GET/v1/telegram/channels/{handle}/posts/{postId}
1credit
x-api-key*stringheader

API key (`sfk_...`)

Parameters
2
handle*stringpath

Telegram public username (channel or group), with or without leading @.

min 1 chars

postId*stringpath

Numeric Telegram channel post ID from the public URL.

max 20 chars · pattern: ^\d+$

Response fields
25

Endpoint-specific response payload.

datalookupStatus
string

Domain outcome of the channel/post lookup. Always check this before reading `post`.

one of: found, not_found, restricted

The post when lookupStatus is `found`; null when `not_found` or `restricted`.

datapostpostId
string

Unique post ID within the channel.

dataposttext
stringnullable

Post text as simplified HTML (<br> line breaks, <a href> links, custom tg-emoji expanded to unicode, common HTML entities decoded so arrows and quotes read naturally in JSON). Null if the post contains only media.

datapostdate
stringnullable

ISO 8601 publication timestamp.

datapostviews
integernullable

View count from the public feed. Telegram may abbreviate large values (e.g. 1.13M → 1130000). Null for very recent posts.

datapostforwardedFrom
stringnullable

Original channel name if this post was forwarded.

Reply/quote preview when this post replies to another channel message; null otherwise.

datapostreplyTopostId
string

Numeric post ID of the message being replied to, from the public t.me link in the reply preview.

datapostreplyToauthorName
stringnullable

Channel or author name shown in the reply preview bar.

datapostreplyTotext
stringnullable

Preview snippet of the replied-to message as shown in the embed (often truncated). May be a short media label such as Photo when Telegram does not show body text.

Photo URLs from Telegram CDN. May expire over time; download promptly if needed.

datapostphotoUrls[]
stringoptional
datapostvideoUrl
stringnullable

Video URL if the post contains a video. May expire over time; download promptly if needed.

Reaction counts shown on the public preview page. Empty when Telegram omits them for a post.

datapostreactions[]emoji
stringnullable

Unicode reaction emoji when Telegram exposes it in the public HTML (including Stars as ⭐). Null for premium/custom animated reactions — use customEmojiId and emojiImageUrl.

datapostreactions[]customEmojiId
stringnullableoptional

Telegram custom emoji document id when the reaction uses a premium/custom emoji.

datapostreactions[]emojiImageUrl
stringnullableoptional

Preview image URL for custom emoji reactions (from Telegram's public emoji metadata). Null for standard unicode reactions.

datapostreactions[]isPaid
booleanoptional

True when the reaction is a Telegram Stars paid reaction.

datapostreactions[]count
integer

Number of users who added this reaction.

≥ 0

Metadata describing the request and billing outcome.

metarequestId
string

Unique request identifier for tracing this API call.

min 1 chars

metacreditsCharged
integer

Credits charged for this request.

≥ 0

metaversion
string

Public API version that served the response.

one of: v1

Code example

curl "https://api.socialfetch.dev/v1/telegram/channels/durov/posts/515" \
  -H "x-api-key: YOUR_API_KEY"

Responses

Lookup result. Check `data.lookupStatus` for `found`, `not_found`, or `restricted` before reading `data.post`.

On this page

No Headings