sendPoll
Mengirim polling.
Nilai kembalian: Jika berhasil, mengembalikan Message.
Parameter
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
business_connection_id | String | Opsional | ID koneksi bisnis |
chat_id | Integer or String | Ya | ID chat atau @username |
message_thread_id | Integer | Opsional | ID topik forum |
question | String | Ya | Pertanyaan (1-300 karakter) |
question_parse_mode | String | Opsional | Mode parse pertanyaan: HTML, Markdown, MarkdownV2 |
question_entities | Array of MessageEntity | Opsional | Array JSON MessageEntity untuk pertanyaan |
options | Array of InputPollOption | Ya | Array JSON InputPollOption [{"text":"Option 1"},{"text":"Option 2"}] |
is_anonymous | Boolean | Opsional | Polling anonim (default true) |
type | String | Opsional | quiz atau regular |
allows_multiple_answers | Boolean | Opsional | Izinkan beberapa jawaban |
allows_revoting | Boolean | Opsional | Izinkan memilih ulang (Bot API 9.6) |
shuffle_options | Boolean | Opsional | Acak opsi (Bot API 9.6) |
allow_adding_options | Boolean | Opsional | Izinkan menambah opsi (Bot API 9.6) |
hide_results_until_closes | Boolean | Opsional | Sembunyikan hasil hingga polling ditutup (Bot API 9.6) |
members_only | Boolean | Opsional | Hanya anggota (Bot API 10.0) |
country_codes | Array of String | Opsional | Array JSON kode negara (Bot API 10.0) |
correct_option_ids | Array of Integer | Opsional | Array JSON ID opsi yang benar (untuk kuis), mis. [0] |
explanation | String | Opsional | Penjelasan jawaban yang benar (untuk kuis) |
explanation_parse_mode | String | Opsional | Mode parse penjelasan |
explanation_entities | Array of MessageEntity | Opsional | Array JSON MessageEntity untuk penjelasan |
explanation_media | InputPollMedia | Opsional | Objek JSON InputPollMedia (Bot API 10.0) |
open_period | Integer | Opsional | Durasi polling aktif dalam detik (5-2628000) |
close_date | Integer | Opsional | Timestamp Unix penutupan polling |
is_closed | Boolean | Opsional | Tutup polling segera |
description | String | Opsional | Deskripsi polling (0-1024 karakter, Bot API 9.6) |
description_parse_mode | String | Opsional | Mode parse deskripsi: HTML, Markdown, MarkdownV2 |
description_entities | Array of MessageEntity | Opsional | Array JSON MessageEntity untuk deskripsi |
media | InputPollMedia | Opsional | Objek JSON InputPollMedia — media polling (Bot API 10.0) |
disable_notification | Boolean | Opsional | Kirim tanpa suara |
protect_content | Boolean | Opsional | Lindungi konten |
allow_paid_broadcast | Boolean | Opsional | Izinkan siaran berbayar |
message_effect_id | String | Opsional | ID efek pesan |
reply_parameters | ReplyParameters | Opsional | Objek JSON ReplyParameters |
reply_markup | InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply | Opsional | Objek JSON: InlineKeyboardMarkup / ReplyKeyboardMarkup / ReplyKeyboardRemove / ForceReply |
Contoh permintaan
curl
curl -s -X POST "https://api.telegram.org/bot$TOKEN/sendPoll" \
-H "Content-Type: application/json" \
-d '{
"chat_id": 123456789,
"question": "Which language do you use?",
"options": [
{
"text": "Python"
},
{
"text": "JavaScript"
}
]
}'
Python
import requests
TOKEN = "123456789:AAEexampleTokenReplaceWithYours"
resp = requests.post(
f"https://api.telegram.org/bot{TOKEN}/sendPoll",
json={
"chat_id": 123456789,
"question": "Which language do you use?",
"options": [
{
"text": "Python"
},
{
"text": "JavaScript"
}
]
},
timeout=30,
)
print(resp.json())
JavaScript
const TOKEN = "123456789:AAEexampleTokenReplaceWithYours";
const res = await fetch(`https://api.telegram.org/bot${TOKEN}/sendPoll`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"chat_id": 123456789,
"question": "Which language do you use?",
"options": [
{
"text": "Python"
},
{
"text": "JavaScript"
}
]
}),
});
console.log(await res.json());
Panduan langkah demi langkah: Cara Membuat Bot Telegram: dari BotFather sampai Pesan Pertama
Metode terkait
stopPollMenghentikan polling.