简体   繁体   中英

Telegram Bot API error when try to edit message: "Bad Request: message not found"

I've tried to edit bot's message which was sended about 2 hours ago and got this error and supposed that this message so old for editing that it is unable. Then I've tried to edit another message which was sended a little later and it was successful. But after this I've tried to edit one of recently sended messages an got this error one more time. Now it seems like request's results is random.

What does it mean?

Here an example of my POST query:

https://api.telegram.org/bot{token}/editMessageText?chat_id=12345&message_id=370&text=New text

And here result:

{
  "ok": false,
  "error_code": 400,
  "description": "Bad Request: message not found"
}

The time limit is 48 hours source

You will get this error code under either a deleted message, or one that has gone past the expiration time.

I haven't played with the Telegraph API in a while, but I did remember seeing some inconsistent behavior as you mentioned. I had to end up implementing retry logic on my API calls to get around it.

You could experiment manually first, to see if it's something that would help you. I don't know if they've addressed the issues I encountered in the past, but retrying did help me.

That's because the message you are trying to edit is not send by the bot.

I had this problem too. In my case I was trying to edit some posts on a channel which were sent by three admins; two human admins and a bot.

The bot can only edit its own messages.

The time limit for edit is only for human users.

bots can edit their own messages anytime.

The editMessageText method throws an error if reply_markup was defined in the message

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM