skip to Main Content

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"
}

3

Answers


  1. 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.

    Login or Signup to reply.
  2. 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.

    Login or Signup to reply.
  3. The editMessageText method throws an error if reply_markup was defined in the message

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search