Postproxy × Telegram

Publish to Telegram channels via your own bot. Postproxy handles the BotFather flow, channel discovery, and media groups for you.

Connect a bot once and broadcast to every channel it administers.

Free plan · No credit card · Live in under 5 minutes

Bring your own bot

Each profile is one bot you create via @BotFather. Postproxy never asks for your personal Telegram credentials.

Channel discovery

Channels appear in /placements automatically as the bot is added as administrator — no manual list to maintain.

HTML & MarkdownV2

Set parse_mode for rich formatting, or skip it and post plain text.

Media groups

Send up to 10 images or videos in a single message, posted as a Telegram album.

$ 

View full documentation for all platform-specific features for Telegram

INTEGRATION COST

Skip days of Telegram integration work

One curl to a test channel is the easy part. Production Telegram publishing means bot lifecycle, channel discovery, media groups, parse_mode escaping, and a permanent on-call rotation for "why didn't this one go through this time?"

5 min
Time to your first Telegram post via API
Days → Hours
Engineering time saved on integration work
$0
Free plan, no credit card required
Build it yourself
  • Register bot webhooks and store tokens for every connected bot
  • Track my_chat_member events to keep the channel list in sync
  • Assemble media groups (up to 10) and pick the right upload endpoint per type
  • Escape MarkdownV2 / validate HTML so messages aren't rejected mid-publish
  • Manage rate limits per chat and per bot, retry transient failures
  • Triage every silent failure: "Why didn't this one post go through?"
Ship with Postproxy
  • One REST endpoint. One payload schema. SDKs for popular languages
  • OAuth, tokens, and refresh handled for you — across all accounts
  • Media upload, chunking, and format detection — automatic
  • Retries, rate-limit windows, and per-platform receipts built in
  • Edge cases are our problem. Failures come back with an explicit reason
  • We track the API changes. You ship features
Start posting to Telegram via API See pricing

Free plan includes the Telegram API. No credit card.

Benefits

Why Postproxy for Telegram?

Skip the bot plumbing

Postproxy registers the webhook with Telegram, validates the token, and tracks channel membership for you.

Same payload as every network

Publish to Telegram alongside Instagram, LinkedIn, X, and Bluesky in one /api/posts call.

Reliable delivery

Failed sends are retried, and webhook events fire for every outcome — including delete-on-platform.

Multi-channel from one bot

Pick the destination per post via chat_id. One bot can publish to as many channels as it administers.

How Postproxy publishes to Telegram

Bring-your-own-bot, not a Postproxy bot

Telegram doesn't expose consumer OAuth for posting. Each Postproxy Telegram profile represents one bot that you create via @BotFather. You own the bot, you control its username, and you can revoke it any time. Postproxy stores the bot token and uses it to publish — your bot, your branding, your relationship with the channel admins.

Channels are discovered, not configured

Once the bot is registered, Telegram pushes a my_chat_member webhook every time the bot is added or removed from a channel. Postproxy records each one as a placement on the profile, so /api/profiles/:id/placements always reflects the live set of channels the bot can publish to. There's no manual channel list to maintain — admins just add the bot and the API catches up automatically.

Per-post channel routing with chat_id

Unlike Facebook or LinkedIn, Telegram has no concept of a default destination — every post must say which channel. Pass the channel's chat_id (from the placements endpoint) in platform_parameters.telegram and Postproxy routes the message there. One bot can fan out to dozens of channels by changing the chat_id per post.

Media groups and rich formatting

Telegram supports up to 10 photos/videos in a single album (media group), mixed freely. Send the URLs in the standard media array and Postproxy bundles them. For formatting, set parse_mode to HTML or MarkdownV2 in the platform params — Postproxy passes it through to Telegram and validates the body against the chosen mode's escape rules.

Frequently Asked Questions

Common questions about Telegram integration

How do I connect a Telegram bot?

Create a bot via @BotFather in Telegram, copy the token, and POST it to /api/profile_groups/:id/initialize_connection with platform: telegram. The full walkthrough is in the Telegram BYO bot guide.

How do I find a channel's chat_id?

Add the bot as administrator to the channel, then call /api/profiles/:id/placements — each discovered channel is returned with its chat_id and display name. Telegram pushes a my_chat_member event the moment the bot becomes admin.

Is chat_id required for every Telegram post?

Yes. Telegram has no concept of a default channel — every post must specify a chat_id in platform_parameters.telegram. Use the placements endpoint to list available channels.

Can I send multiple media items in one Telegram post?

Yes. Up to 10 images or videos are bundled into a single Telegram media group (album). Mixing images and videos in one media group is supported.

What permissions does the bot need on the channel?

Administrator with Post Messages enabled. For Postproxy to delete failed posts cleanly, also grant Edit Messages and Delete Messages.

Ready to get started?

Start with our free plan and scale as your needs grow. No credit card required.