sendPaidMedia
Sends paid media (Bot API 8.0+).
Returns: On success, returns Message.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
business_connection_id | String | Optional | Business connection ID |
chat_id | Integer or String | Yes | Chat ID or @username |
message_thread_id | Integer | Optional | Forum topic ID |
direct_messages_topic_id | Integer | Optional | Direct messages topic ID (Bot API 10.0) |
star_count | Integer | Yes | Telegram Stars amount (1-2500) |
media | Array of InputPaidMedia | Yes | JSON InputPaidMedia array |
payload | String | Optional | Payment payload |
caption | String | Optional | Caption (0-1024) |
parse_mode | String | Optional | HTML, Markdown, MarkdownV2 |
caption_entities | Array of MessageEntity | Optional | JSON MessageEntity array |
show_caption_above_media | Boolean | Optional | Show caption above media |
disable_notification | Boolean | Optional | Send silently |
protect_content | Boolean | Optional | Protect content |
allow_paid_broadcast | Boolean | Optional | Allow paid broadcast |
suggested_post_parameters | SuggestedPostParameters | Optional | JSON SuggestedPostParameters object |
reply_parameters | ReplyParameters | Optional | JSON ReplyParameters object |
reply_markup | InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply | Optional | JSON: InlineKeyboardMarkup / ReplyKeyboardMarkup / ReplyKeyboardRemove / ForceReply |
Example request
curl
curl -s -X POST "https://api.telegram.org/bot$TOKEN/sendPaidMedia" \
-H "Content-Type: application/json" \
-d '{
"chat_id": 123456789,
"star_count": 100,
"media": [
{
"type": "photo",
"media": "https://telegram.org/img/t_logo.png"
}
]
}'
Python
import requests
TOKEN = "123456789:AAEexampleTokenReplaceWithYours"
resp = requests.post(
f"https://api.telegram.org/bot{TOKEN}/sendPaidMedia",
json={
"chat_id": 123456789,
"star_count": 100,
"media": [
{
"type": "photo",
"media": "https://telegram.org/img/t_logo.png"
}
]
},
timeout=30,
)
print(resp.json())
JavaScript
const TOKEN = "123456789:AAEexampleTokenReplaceWithYours";
const res = await fetch(`https://api.telegram.org/bot${TOKEN}/sendPaidMedia`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"chat_id": 123456789,
"star_count": 100,
"media": [
{
"type": "photo",
"media": "https://telegram.org/img/t_logo.png"
}
]
}),
});
console.log(await res.json());
Step-by-step guide: How to Create a Telegram Bot: Step by Step with BotFather and Python
Related methods
sendPhotoSends a photo.sendVideoSends a video.sendDocumentSends a document.sendAudioSends an audio.sendAnimationSends an animation (GIF).sendStickerSends a sticker.sendVoiceSends a voice message.sendVideoNoteSends a video note (round video).sendMediaGroupSends a group of media (album).sendDiceSends a dice.sendLivePhotoSends a live photo (photo + video, Bot API 10.0).