Telegram API มี POST method มากมายที่ช่วยให้ developers สร้าง bots และแอปพลิเคชันต่างๆ บน Telegram ได้ แต่ละ method มีหน้าที่เฉพาะเจาะจง ผมจะอธิบาย method ที่คุณให้มาทีละตัวนะครับ:
เกี่ยวกับ Bot Telegram
- getUpdates: ดึงข้อมูลอัพเดท (เช่น ข้อความใหม่, คำสั่งใหม่) ที่ส่งมาถึง bot
- setWebhook: ตั้งค่า webhook เพื่อให้ Telegram ส่งอัพเดทไปยัง server ของคุณโดยอัตโนมัติ
- deleteWebhook: ลบ webhook ที่ตั้งไว้
- getWebhookInfo: ดึงข้อมูล webhook ที่ตั้งไว้
- getMe: ดึงข้อมูล bot ของคุณ (เช่น username, id)
- logOut: ออกจากระบบ bot (ไม่ค่อยได้ใช้)
- close: ปิดการเชื่อมต่อ bot (ไม่ค่อยได้ใช้)
- sendMessage: ส่งข้อความ
- forwardMessage: ส่งต่อข้อความ
- forwardMessages: ส่งต่อหลายๆ ข้อความ
- copyMessage: คัดลอกข้อความ
- copyMessages: คัดลอกหลายๆ ข้อความ
- sendPhoto: ส่งรูปภาพ
- sendAudio: ส่งไฟล์เสียง
- sendDocument: ส่งไฟล์เอกสาร
- sendVideo: ส่งวิดีโอ
- sendAnimation: ส่ง GIF หรือ animation
- sendVoice: ส่งข้อความเสียง
- sendVideoNote: ส่งวิดีโอสั้นๆ
- sendMediaGroup: ส่งกลุ่มของ media (รูปภาพ, วิดีโอ) พร้อมกัน
- sendLocation: ส่งตำแหน่งที่ตั้ง
- sendVenue: ส่งข้อมูลสถานที่ (เช่น ร้านอาหาร)
- sendContact: ส่ง contact
- sendPoll: ส่งแบบสำรวจ
- sendDice: ส่งลูกเต๋า
- sendChatAction: ส่ง action เช่น “กำลังพิมพ์…”
- setMessageReaction: ตั้ง reaction ให้กับข้อความ
- getUserProfilePhotos: ดึงรูปโปรไฟล์ของผู้ใช้
- getFile: ดึงไฟล์จาก Telegram server
- banChatMember: แบนผู้ใช้จากกลุ่ม
- unbanChatMember: ยกเลิกการแบนผู้ใช้
- restrictChatMember: จำกัดสิทธิ์ผู้ใช้ในกลุ่ม
- promoteChatMember: ตั้งให้ผู้ใช้เป็น admin
- setChatAdministratorCustomTitle: ตั้งชื่อตำแหน่ง admin
- banChatSenderChat: แบน channel จากการส่งข้อความในกลุ่ม
- unbanChatSenderChat: ยกเลิกการแบน channel
- setChatPermissions: ตั้งค่าสิทธิ์ของกลุ่ม
- exportChatInviteLink: สร้างลิงค์เชิญเข้ากลุ่ม
- createChatInviteLink: สร้างลิงค์เชิญเข้ากลุ่ม (แบบกำหนดเองได้)
- editChatInviteLink: แก้ไขลิงค์เชิญ
- revokeChatInviteLink: ยกเลิกการใช้งานลิงค์เชิญ
- approveChatJoinRequest: อนุมัติคำขอเข้าร่วมกลุ่ม
- declineChatJoinRequest: ปฏิเสธคำขอเข้าร่วมกลุ่ม
- setChatPhoto: ตั้งรูปโปรไฟล์กลุ่ม
- deleteChatPhoto: ลบรูปโปรไฟล์กลุ่ม
- setChatTitle: ตั้งชื่อกลุ่ม
- setChatDescription: ตั้งคำอธิบายกลุ่ม
- pinChatMessage: ปักหมุดข้อความ
- unpinChatMessage: ยกเลิกการปักหมุดข้อความ
- unpinAllChatMessages: ยกเลิกการปักหมุดข้อความทั้งหมด
- leaveChat: ออกจากกลุ่ม
- getChat: ดึงข้อมูลกลุ่ม
- getChatAdministrators: ดึงรายชื่อ admin กลุ่ม
- getChatMemberCount: ดึงจำนวนสมาชิกในกลุ่ม
- getChatMember: ดึงข้อมูลสมาชิกในกลุ่ม
- setChatStickerSet: ตั้งค่าสติกเกอร์แพ็คของกลุ่ม
- deleteChatStickerSet: ลบสติกเกอร์แพ็คของกลุ่ม
- getForumTopicIconStickers: ดึงสติกเกอร์ icon ของหัวข้อในกลุ่ม forum
- createForumTopic: สร้างหัวข้อใหม่ในกลุ่ม forum
- editForumTopic: แก้ไขหัวข้อในกลุ่ม forum
- closeForumTopic: ปิดหัวข้อในกลุ่ม forum
- reopenForumTopic: เปิดหัวข้อในกลุ่ม forum อีกครั้ง
- deleteForumTopic: ลบหัวข้อในกลุ่ม forum
- unpinAllForumTopicMessages: ยกเลิกการปักหมุดข้อความทั้งหมดในหัวข้อ forum
- editGeneralForumTopic: แก้ไขหัวข้อหลักในกลุ่ม forum
- closeGeneralForumTopic: ปิดหัวข้อหลักในกลุ่ม forum
- reopenGeneralForumTopic: เปิดหัวข้อหลักในกลุ่ม forum อีกครั้ง
- hideGeneralForumTopic: ซ่อนหัวข้อหลักในกลุ่ม forum
- unhideGeneralForumTopic: แสดงหัวข้อหลักในกลุ่ม forum
- unpinAllGeneralForumTopicMessages: ยกเลิกการปักหมุดข้อความทั้งหมดในหัวข้อหลัก forum
- answerCallbackQuery: ตอบสนองต่อ callback query จาก inline keyboard
- getUserChatBoosts: ดึงข้อมูล boosts ของกลุ่ม
- setMyCommands: ตั้งค่า command สำหรับ bot
- deleteMyCommands: ลบ command ของ bot
- getMyCommands: ดึงรายการ command ของ bot
- setMyName: ตั้งชื่อ bot
- getMyName: ดึงชื่อ bot
- setMyDescription: ตั้งคำอธิบาย bot
- getMyDescription: ดึงคำอธิบาย bot
- setMyShortDescription: ตั้งคำอธิบายสั้นๆ ของ bot
- getMyShortDescription: ดึงคำอธิบายสั้นๆ ของ bot
- setChatMenuButton: ตั้งค่าปุ่มเมนูในแชท
- getChatMenuButton: ดึงข้อมูลปุ่มเมนูในแชท
- setMyDefaultAdministratorRights: ตั้งค่าสิทธิ์ admin เริ่มต้นของ bot
- getMyDefaultAdministratorRights: ดึงค่าสิทธิ์ admin เริ่มต้นของ bot
เกี่ยวกับข้อความ
- editMessageText: แก้ไขข้อความ
- editMessageCaption: แก้ไข caption ของรูปภาพ/วิดีโอ
- editMessageMedia: แก้ไข media ในข้อความ
- editMessageLiveLocation: แก้ไขตำแหน่งที่ตั้งแบบเรียลไทม์
- stopMessageLiveLocation: หยุดการแชร์ตำแหน่งที่ตั้งแบบเรียลไทม์
- editMessageReplyMarkup: แก้ไข inline keyboard
- stopPoll: หยุดแบบสำรวจ
- deleteMessage: ลบข้อความ
- deleteMessages: ลบหลายๆ ข้อความ
เกี่ยวกับสติกเกอร์
- sendSticker: ส่งสติกเกอร์
- getStickerSet: ดึงข้อมูลสติกเกอร์แพ็ค
- getCustomEmojiStickers: ดึงสติกเกอร์ emoji แบบกำหนดเอง
- uploadStickerFile: อัพโหลดไฟล์สติกเกอร์
- createNewStickerSet: สร้างสติกเกอร์แพ็คใหม่
- addStickerToSet: เพิ่มสติกเกอร์ลงในแพ็ค
- setStickerPositionInSet: จัดเรียงลำดับสติกเกอร์ในแพ็ค
- deleteStickerFromSet: ลบสติกเกอร์ออกจากแพ็ค
- setStickerEmojiList: ตั้งค่า emoji สำหรับสติกเกอร์
- setStickerKeywords: ตั้งค่า keyword สำหรับสติกเกอร์
- setStickerMaskPosition: ตั้งค่าตำแหน่ง mask ของสติกเกอร์
- setStickerSetTitle: ตั้งชื่อสติกเกอร์แพ็ค
- setStickerSetThumbnail: ตั้งรูป thumbnail ของสติกเกอร์แพ็ค
- setCustomEmojiStickerSetThumbnail: ตั้งรูป thumbnail ของสติกเกอร์ emoji แบบกำหนดเอง
- deleteStickerSet: ลบสติกเกอร์แพ็ค
อื่นๆ
- answerInlineQuery: ตอบสนองต่อ inline query
- answerWebAppQuery: ตอบสนองต่อ Web App query
- sendInvoice: ส่งใบแจ้งหนี้
- createInvoiceLink: สร้างลิงค์สำหรับใบแจ้งหนี้
- answerShippingQuery: ตอบสนองต่อ shipping query
- answerPreCheckoutQuery: ตอบสนองต่อ pre-checkout query
- setPassportDataErrors: ตั้งค่า error สำหรับ passport data
- sendGame: ส่งเกม
- setGameScore: ตั้งค่าคะแนนเกม
- getGameHighScores: ดึงคะแนนสูงสุดของเกม
นอกจาก API ที่คุณกล่าวมา Telegram ยังมี API อื่นๆ อีก ซึ่งส่วนใหญ่จะอยู่ในหมวดหมู่เหล่านี้ครับ
1. Passport
Telegram Passport ช่วยให้ผู้ใช้สามารถแชร์เอกสารยืนยันตัวตน (เช่น หนังสือเดินทาง, บัตรประชาชน) กับบริการต่างๆ ได้อย่างปลอดภัย API ที่เกี่ยวข้องเช่น:
- setPassportDataErrors: แจ้ง error เมื่อข้อมูล passport ไม่ถูกต้อง
- getPassportConfig: ดึงค่า config สำหรับ passport
2. Payments
Telegram รองรับการชำระเงินภายในแอป API ที่เกี่ยวข้องเช่น:
- sendInvoice: ส่งใบแจ้งหนี้
- createInvoiceLink: สร้างลิงค์สำหรับใบแจ้งหนี้
- answerShippingQuery: ตอบสนองต่อ shipping query
- answerPreCheckoutQuery: ตอบสนองต่อ pre-checkout query
3. Games
Telegram รองรับการเล่นเกมภายในแอป API ที่เกี่ยวข้องเช่น:
- sendGame: ส่งเกม
- setGameScore: ตั้งค่าคะแนนเกม
- getGameHighScores: ดึงคะแนนสูงสุดของเกม
4. Bot Administration
API สำหรับจัดการ bot เช่น:
- setMyCommands: ตั้งค่า command สำหรับ bot
- deleteMyCommands: ลบ command ของ bot
- getMyCommands: ดึงรายการ command ของ bot
- setWebhook: ตั้งค่า webhook
- deleteWebhook: ลบ webhook
- getWebhookInfo: ดึงข้อมูล webhook
5. Channel Administration
API สำหรับจัดการ channel เช่น:
- exportChatInviteLink: สร้างลิงค์เชิญเข้า channel
- createChatInviteLink: สร้างลิงค์เชิญเข้า channel (แบบกำหนดเองได้)
- editChatInviteLink: แก้ไขลิงค์เชิญ
- revokeChatInviteLink: ยกเลิกการใช้งานลิงค์เชิญ
6. Group Administration
API สำหรับจัดการกลุ่ม เช่น:
- banChatMember: แบนผู้ใช้จากกลุ่ม
- unbanChatMember: ยกเลิกการแบนผู้ใช้
- restrictChatMember: จำกัดสิทธิ์ผู้ใช้ในกลุ่ม
- promoteChatMember: ตั้งให้ผู้ใช้เป็น admin
7. Inline Mode
API สำหรับ inline mode (เช่น inline query, inline keyboard) เช่น:
- answerInlineQuery: ตอบสนองต่อ inline query
- answerCallbackQuery: ตอบสนองต่อ callback query
8. Other
- getUpdates: ดึงข้อมูลอัพเดท
- getMe: ดึงข้อมูล bot