Telegram Upload Guide
Post text, photos (single or as an album) and videos to a Telegram channel or group using the IndReelForge API. Telegram connects with a bot token and the channel or chat to post to — the bot must be an admin of that channel or group with permission to post.
Supported Content Types
| Type | Endpoint | Notes |
|---|---|---|
| Text message | POST /api/upload_text | Up to 4,096 characters |
| Photo / album | POST /api/upload_photos | Several photos are sent as an album |
| Video | POST /api/upload | Max 50 MB |
Limits
| Limit | Value |
|---|---|
| Message length | 4,096 characters (Telegram limits captions on photos and videos to 1,024) |
| Max file size | 50 MB (Telegram Bot API upload limit) |
| Posting rate | Telegram allows roughly 20 messages per minute per group or channel |
Get the Credentials
1. Create a bot
- In Telegram, open a chat with @BotFather.
- Send
/newbotand follow the prompts to choose a name and a username. - BotFather replies with the bot token, which looks like
123456789:AA…. Copy it.
2. Make the bot an admin
- Open your channel or group → Manage / Edit → Administrators → Add Admin.
- Search for your bot's username and add it.
- Make sure it can post messages (for channels: Post Messages; for groups: Send Messages).
3. Find the channel or chat ID
- Public channel: use its username, e.g.
@mychannel. - Private channel or group: use the numeric chat ID, which starts with
-100(e.g.-1001234567890). One way to find it is to forward a message from the channel to a bot such as@userinfobot, or read it from the channel's web link in Telegram Web.
Connect Telegram
From the dashboard
- Dashboard → Profiles → select your profile
- Click Connect next to Telegram
- Enter the Bot token and the Channel or chat (
@usernameor numeric ID) - IndReelForge checks the bot and its access to the chat before saving — status shows Connected
With the API
curl -X POST https://api.indreelforge.com/api/profiles/my-brand/connect/telegram/credentials \
-H 'Authorization: Apikey YOUR_KEY' \
-H 'Content-Type: application/json' \
-d '{"bot_token": "123456789:AA...", "chat_id": "@mychannel"}'
| Field | Required | Description |
|---|---|---|
bot_token | Yes | Token from @BotFather |
chat_id | Yes | Public channel @username, or the numeric ID of a private channel or group |
See Connect with Credentials for the full request and response format.
Post a Text Message
curl -X POST https://api.indreelforge.com/api/upload_text \
-H 'Authorization: Apikey YOUR_KEY' \
-F 'user=my-brand' \
-F 'title=Today only: 20% off everything in the store.' \
-F 'platform[]=telegram'
Post a Photo Album
curl -X POST https://api.indreelforge.com/api/upload_photos \
-H 'Authorization: Apikey YOUR_KEY' \
-F 'user=my-brand' \
-F 'title=Behind the scenes from this week' \
-F 'photos[]=@/path/to/photo1.jpg' \
-F 'photos[]=@/path/to/photo2.jpg' \
-F 'photos[]=@/path/to/photo3.jpg' \
-F 'platform[]=telegram'
Post a Video
curl -X POST https://api.indreelforge.com/api/upload \
-H 'Authorization: Apikey YOUR_KEY' \
-F 'user=my-brand' \
-F 'title=Product walkthrough' \
-F 'video=@/path/to/video.mp4' \
-F 'platform[]=telegram'
Use telegram_title to send Telegram different text than the other platforms in the same request.
Troubleshooting
| Problem | Cause | Fix |
|---|---|---|
Connect fails with INVALID_CREDENTIALS | Wrong bot token, unknown chat, or the bot is not an admin that can post | Check the token with @BotFather, double-check the @username / chat ID, and give the bot posting rights |
| "chat not found" | The bot was never added to the chat, or the ID is wrong | Add the bot as an admin; private chats need the numeric -100… ID |
| File rejected as too large | File is over 50 MB | Compress or trim the video |
| Posts stop arriving | The bot was removed or lost admin rights, or the token was revoked in @BotFather | Restore its rights or reconnect with a new token |