According to Webogram (And TDesktop a bit)
- 400 -- Bad request (Almost all errors)
- 401 -- Unauthorized
- 403 -- Forbidden
- 404 -- Not found
- 406 -- Network
- 420 -- Flood
- 500 and greater -- "Temporary" errors
According to TDesktop, Webogram, Android and iOS apps, users' reports and my own testst
See PHONE_CODE_INVALID.
See PHONE_CODE_INVALID.
Wrong confirmation code.
Returned by API methods account.confirmPhone
or auth.signIn
.
Invalid phone number.
Returned by API methods auth.checkPhone
, account.sendChangePhoneCode
, account.sendConfirmPhoneCode
and others with phone_number
.
Should be automatically handled by app.
It should ask user to signUp, not signIn, because number isn't occupied.
Returned by API method auth.signIn
.
User tried to change his number to already occupied one.
Returned by API method account.sendChangePhoneCode
.
Should be automatically handled by app.
Means that account uses two step verification.
App should ask user to type his password.
Returned by API method auth.signIn
.
Wrong 2FA password.
Returned by API methods auth.signIn
, account.updatePasswordSettings
and auth.recoverPassword
.
Returned to old apps without 2FA support when trying to log into 2FA protected account.
Returned by API method auth.signIn
.
Incorrect 2FA restore Email.
Returned by API method account.updatePasswordSettings
.
User haven't confirmed 2FA restore Email yet.
Not an error exactly, just a warning. Usually means that user should be asked to confirm.
Returned by API method account.updatePasswordSettings
.
Your recent attempts to reset this account have been cancelled by its active user. Please try again in 7 days.";
Since the account {phone_number} is active and protected by a password, we will delete it in 1 week for security purposes. You can cancel this process at any time.\n\nYou’ll be able to reset your account in:\n{when}";
Bad 2FA password.
Usually means that user tried to set same hint and password.
Returned by API method account.updatePasswordSettings
.
Should be automatically handled by app.
Service message, usually means that app should retry with other salt.
Returned by API method account.updatePasswordSettings
.
Invalid recovery code from 2FA email
Returned by API method auth.recoverPassword
.
See CODE_INVALID
Means that app has made too much API calls and has to wait X
seconds before making more.
Can be Returned by any API method.
Usually is automatically handled by app.
Means that app tried to set new username to the old value.
Retuned by API method account.updateUsername
.
Means that username is invalid.
Retuned by API method account.updateUsername
.
Username is already taken.
Retuned by API method account.updateUsername
.
Usernames aren't available in current country (or on current DC ?_?)
TDesktop handles it like USERNAME_OCCUPIED
Retuned by API method account.updateUsername
.
App tried to send empty message text (or nonexistent/invalid media).
Returned by API methods messages.editMessage
, messages.sendMessage
and messages.sendMedia
.
Usually is automatically handled by app.
Means that app tried to set new message text to the old value.
Returned by API method messages.editMessage
.
Messages can't be edited after some amount of time (look at help.Config
).
Returned by API method messages.editMessage
.
User obviously can't edit messages not authored by him.
Returned by API method messages.editMessage
.
User can't edit/send messages in channel if he's not an admin.
Returned by API methods messages.sendMessage
or messages.editMessage
.
Returned when app tries to make any action with nonexistent (including deleted/revoked) message id.
Returned by API methods messages.editMessage
, messages.forwardMessage
and maybe other methods with message id
s.
Service message, usually means that app forgot to send random_id
.
Returned by any API method with random_id
.
Usually spam report related. Official apps show More info button, which opens chat with @SpamBot. Returned when trying to message non-mutal contacts while limited, or when adding too much users to channel/group.
Shouldn't it be CHAT TITLE EMPTY?
Empty or Too long is invalid too
There's no about not modified!
autohandle
Means that app tried to set new title to the old value.
Returned by channels.editTitle
.
See CHAT_TITLE_EMPTY.
Chat title can't be empty or too long.
Returned by channels.editTitle
and channels.createChannel
.
Disabled too
Following text should be rechecked and rewritten, because I should not use text from Trello. Can happen in different cases, inter alia, user was kicked from a channel, it can also be returned if a bot knows the user, but there is no messages sent from the user to bot. It may happen even when user send message to the bot, but after that bot has sent or received more than 1000000 messages and messages from the user was automatically deleted and even when a user deleted his account and another user tries to send him a message.
webogram specific
### # USER\_NOT\_USING\_TELEGRAM
importContact
### # USERS\_NOT\_USING\_TELEGRAM
See [USER\_NOT\_USING\_TELEGRAM](#user-not-using-telegram)
Maybe only if all of them are not using it?
Autohandle X is (FILE|PHONE|NETWORK|USER) Y is DC number
invokeAfterMsg related
Sending params to method/constructor with no params
Params missing, unknown constructors and other problems
Only for getFile, for sendMedia see message empty
upload.getFile: invalid limit, but not offset (even -1)
Tried to send inputMediaDocumentExternal with link to placehold.it/640x360
Deleted one of messages.getDialogs params