Updating messages

editMessageText()

Use this method to edit text, rich and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.

parameters

parametertyperequireddescription
business_connection_idstringoptionalUnique identifier of the business connection on behalf of which the message to be edited was sent
chat_idnumber | stringoptionalRequired if inline_message_id is not specified. Unique identifier for the target chat or username of the target bot, supergroup or channel in the format @username.
message_idnumberoptionalRequired if inline_message_id is not specified. Identifier of the message to edit.
inline_message_idstringoptionalRequired if chat_id and message_id are not specified. Identifier of the inline message.
textstringoptionalNew text of the message, 1-4096 characters after entity parsing; required if rich_message isn't specified
parse_modestringoptionalMode for parsing entities in the message text. See formatting options for more details.
entitiesMessageEntity[]optionalA JSON-serialized list of special entities that appear in message text, which can be specified instead of parse_mode
link_preview_optionsLinkPreviewOptionsoptionalLink preview generation options for the message
rich_messageInputRichMessageoptionalNew rich content of the message; required if text isn't specified
reply_markupInlineKeyboardMarkupoptionalA JSON-serialized object for an inline keyboard

returns

Message | boolean

usage in yaebal

not (yet) hard-typed on Api — call it through the generic .call<T>() escape hatch documented in @yaebal/types.

bot.ts
import type { EditMessageTextParams, Message } from "@yaebal/types";

await bot.api.call<Message | boolean>("editMessageText", {} satisfies EditMessageTextParams);

context shortcut

also available as ctx.editText() on 16 context types — see @yaebal/contexts.

context shortcut
/** Use this method to edit text, rich and [game](https://core.telegram.org/bots/api/#games) messages. On success, if the edited message is not an inline message, the edited [Message](https://core.telegram.org/bots/api/#message) is returned, otherwise *True* is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within **48 hours** from the time they were sent. */
ctx.editText(params: Omit<EditMessageTextParams, "chat_id" | "message_id">)