send_photo
Sends a photo to a Telegram chat using a file ID, HTTP URL, or absolute file path. Use for image sharing with captions up to 1024 characters.
Instructions
Send a photo. Pass file_id, HTTP URL, or absolute file path. Caption is capped at 1024 characters — use send_rich_message for longer posts.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| photo | Yes | File ID, HTTP URL, or absolute file path | |
| caption | No | Caption (0-1024 visible chars; HTML tags/URLs excluded) | |
| chat_id | Yes | Chat ID or @username | |
| parse_mode | No | Formatting mode | |
| has_spoiler | No | ||
| reply_markup | No | InlineKeyboardMarkup, ReplyKeyboardMarkup, ReplyKeyboardRemove, or ForceReply | |
| protect_content | No | ||
| caption_entities | No | Array of MessageEntity objects | |
| receiver_user_id | No | User ID | |
| reply_parameters | No | ReplyParameters object | |
| callback_query_id | No | ||
| message_effect_id | No | ||
| message_thread_id | No | ||
| allow_paid_broadcast | No | ||
| disable_notification | No | ||
| business_connection_id | No | ||
| direct_messages_topic_id | No | ||
| show_caption_above_media | No | ||
| suggested_post_parameters | No | SuggestedPostParameters object (price, send_date) — direct messages chats only |