Flood wait error

How to handle API return errors correctly.

There will be errors when working with the API, and they must be correctly handled on the client.
An error is characterized by several parameters:

Error Code

Numerical value similar to HTTP status. Contains information on the type of error that occurred: for example, a data input error, privacy error, or server error. This is a required parameter.

Error Type

A string literal in the form of /[A-Z_0-9]+/, which summarizes the problem. For example, AUTH_KEY_UNREGISTERED. This is an optional parameter.

Error Database

A full machine-readable JSON list of RPC errors that can be returned by all methods in the API can be found here », what follows is a description of its fields:

  • errors — All error messages and codes for each method (object).
    • Keys: Error codes as strings (numeric strings)
    • Values: All error messages for each method (object)
      • Keys: Error messages (string)
      • Values: An array of methods which may emit this error (array of strings)
  • descriptions — Descriptions for every error mentioned in errors (and a few other errors not related to a specific method)
    • Keys: Error messages
    • Values: Error descriptions
  • user_only — A list of methods that can only be used by users, not bots.

Error messages and error descriptions may contain printf placeholders in key positions, for now only %d is used to map durations contained in error messages to error descriptions.

Example:

{
    "errors": {
        "420": {
            "2FA_CONFIRM_WAIT_%d": [
                "account.deleteAccount"
            ],
            "SLOWMODE_WAIT_%d": [
                "messages.forwardMessages",
                "messages.sendInlineBotResult",
                "messages.sendMedia",
                "messages.sendMessage",
                "messages.sendMultiMedia"
            ]
        }
    },
    "descriptions": {
        "2FA_CONFIRM_WAIT_%d": "Since this account is active and protected by a 2FA password, we will delete it in 1 week for security purposes. You can cancel this process at any time, you'll be able to reset your account in %d seconds.",
        "SLOWMODE_WAIT_%d": "Slowmode is enabled in this chat: wait %d seconds before sending another message to this chat.",
        "FLOOD_WAIT_%d": "Please wait %d seconds before repeating the action."
    },
    "user_only": {
        "account.deleteAccount"
    }
}

Error Constructors

There should be a way to handle errors that are returned in rpc_error constructors.

Below is a list of error codes and their meanings:

303 SEE_OTHER

The request must be repeated, but directed to a different data center.

Examples of Errors:

  • FILE_MIGRATE_X: the file to be accessed is currently stored in a different data center.
  • PHONE_MIGRATE_X: the phone number a user is trying to use for authorization is associated with a different data center.
  • NETWORK_MIGRATE_X: the source IP address is associated with a different data center (for registration)
  • USER_MIGRATE_X: the user whose identity is being used to execute queries is associated with a different data center (for registration)

In all these cases, the error description’s string literal contains the number of the data center (instead of the X) to which the repeated query must be sent.
More information about redirects between data centers »

400 BAD_REQUEST

The query contains errors. In the event that a request was created using a form and contains user generated data, the user should be notified that the data must be corrected before the query is repeated.

Examples of Errors:

  • FIRSTNAME_INVALID: The first name is invalid
  • LASTNAME_INVALID: The last name is invalid
  • PHONE_NUMBER_INVALID: The phone number is invalid
  • PHONE_CODE_HASH_EMPTY: phone_code_hash is missing
  • PHONE_CODE_EMPTY: phone_code is missing
  • PHONE_CODE_EXPIRED: The confirmation code has expired
  • API_ID_INVALID: The api_id/api_hash combination is invalid
  • PHONE_NUMBER_OCCUPIED: The phone number is already in use
  • PHONE_NUMBER_UNOCCUPIED: The phone number is not yet being used
  • USERS_TOO_FEW: Not enough users (to create a chat, for example)
  • USERS_TOO_MUCH: The maximum number of users has been exceeded (to create a chat, for example)
  • TYPE_CONSTRUCTOR_INVALID: The type constructor is invalid
  • FILE_PART_INVALID: The file part number is invalid
  • FILE_PARTS_INVALID: The number of file parts is invalid
  • FILE_PART_X_MISSING: Part X (where X is a number) of the file is missing from storage
  • MD5_CHECKSUM_INVALID: The MD5 checksums do not match
  • PHOTO_INVALID_DIMENSIONS: The photo dimensions are invalid
  • FIELD_NAME_INVALID: The field with the name FIELD_NAME is invalid
  • FIELD_NAME_EMPTY: The field with the name FIELD_NAME is missing
  • MSG_WAIT_FAILED: A request that must be completed before processing the current request returned an error
  • MSG_WAIT_TIMEOUT: A request that must be completed before processing the current request didn’t finish processing yet

401 UNAUTHORIZED

There was an unauthorized attempt to use functionality available only to authorized users.

Examples of Errors:

  • AUTH_KEY_UNREGISTERED: The key is not registered in the system
  • AUTH_KEY_INVALID: The key is invalid
  • USER_DEACTIVATED: The user has been deleted/deactivated
  • SESSION_REVOKED: The authorization has been invalidated, because of the user terminating all sessions
  • SESSION_EXPIRED: The authorization has expired
  • AUTH_KEY_PERM_EMPTY: The method is unavailable for temporary authorization key, not bound to permanent

403 FORBIDDEN

Privacy violation. For example, an attempt to write a message to someone who has blacklisted the current user.

404 NOT_FOUND

An attempt to invoke a non-existent object, such as a method.

406 NOT_ACCEPTABLE

Similar to 400 BAD_REQUEST, but the app must display the error to the user a bit differently.
Do not display any visible error to the user when receiving the rpc_error constructor: instead, wait for an updateServiceNotification update, and handle it as usual.
Basically, an updateServiceNotification popup update will be emitted independently (ie NOT as an Updates constructor inside rpc_result but as a normal update) immediately after emission of a 406 rpc_error: the update will contain the actual localized error message to show to the user with a UI popup.

An exception to this is the AUTH_KEY_DUPLICATED error, which is only emitted if any of the non-media DC detects that an authorized session is sending requests in parallel from two separate TCP connections, from the same or different IP addresses.
Note that parallel connections are still allowed and actually recommended for media DCs.
Also note that by session we mean a logged-in session identified by an authorization constructor, fetchable using account.getAuthorizations, not an MTProto session.

If the client receives an AUTH_KEY_DUPLICATED error, the session is already invalidated by the server and the user must generate a new auth key and login again.

420 FLOOD

The maximum allowed number of attempts to invoke the given method with the given input parameters has been exceeded. For example, in an attempt to request a large number of text messages (SMS) for the same phone number.

Error Example:

  • FLOOD_WAIT_X: A wait of X seconds is required (where X is a number)

500 INTERNAL

An internal server error occurred while a request was being processed; for example, there was a disruption while accessing a database or file storage.

If a client receives a 500 error, or you believe this error should not have occurred, please collect as much information as possible about the query and error and send it to the developers.

Other Error Codes

If a server returns an error with a code other than the ones listed above, it may be considered the same as a 500 error and treated as an internal server error.

Содержание

  1. Error handling
  2. Коды ошибок Telegram API
  3. 303 SEE_OTHER
  4. ОШИБКА 400, НЕВЕРНЫЙ ЗАПРОС
  5. 401 ОШИБКА ДОСТУПА
  6. 403 ЗАПРЕЩЕНО
  7. 404 НЕ НАЙДЕНО
  8. 406 NOT_ACCEPTABLE
  9. 420 FLOOD
  10. 500 ВНУТРЕННИЙ
  11. Другие коды ошибок
  12. Telegram пишет: “слишком много попыток повторите позже” – что делать?
  13. Много попыток входа в Телеграм: основные причины проблемы
  14. Ошибка Telegram: много попыток отправки сообщений
  15. Ошибка Telegram “много попыток” в случае глюка системы безопасности
  16. Ошибка Telegram: много попыток входа/выхода
  17. Много попыток входа в Телеграм: сколько ждать?

Error handling

There will be errors when working with the API, and they must be correctly handled on the client.
An error is characterized by several parameters:

Numerical value similar to HTTP status. Contains information on the type of error that occurred: for example, a data input error, privacy error, or server error. This is a required parameter.

A string literal in the form of /[A-Z_0-9]+/ , which summarizes the problem. For example, AUTH_KEY_UNREGISTERED . This is an optional parameter.

A full machine-readable JSON list of RPC errors that can be returned by all methods in the API can be found here », what follows is a description of its fields:

  • errors — All error messages and codes for each method (object).
    • Keys: Error codes as strings (numeric strings)
    • Values: All error messages for each method (object)
      • Keys: Error messages (string)
      • Values: An array of methods which may emit this error (array of strings)
  • descriptions — Descriptions for every error mentioned in errors (and a few other errors not related to a specific method)
    • Keys: Error messages
    • Values: Error descriptions
  • user_only — A list of methods that can only be used by users, not bots.

Error messages and error descriptions may contain printf placeholders in key positions, for now only %d is used to map durations contained in error messages to error descriptions.

There should be a way to handle errors that are returned in rpc_error constructors.

Below is a list of error codes and their meanings:

The request must be repeated, but directed to a different data center.

  • FILE_MIGRATE_X: the file to be accessed is currently stored in a different data center.
  • PHONE_MIGRATE_X: the phone number a user is trying to use for authorization is associated with a different data center.
  • NETWORK_MIGRATE_X: the source IP address is associated with a different data center (for registration)
  • USER_MIGRATE_X: the user whose identity is being used to execute queries is associated with a different data center (for registration)

In all these cases, the error description’s string literal contains the number of the data center (instead of the X) to which the repeated query must be sent. More information about redirects between data centers »

The query contains errors. In the event that a request was created using a form and contains user generated data, the user should be notified that the data must be corrected before the query is repeated.

  • FIRSTNAME_INVALID: The first name is invalid
  • LASTNAME_INVALID: The last name is invalid
  • PHONE_NUMBER_INVALID: The phone number is invalid
  • PHONE_CODE_HASH_EMPTY: phone_code_hash is missing
  • PHONE_CODE_EMPTY: phone_code is missing
  • PHONE_CODE_EXPIRED: The confirmation code has expired
  • API_ID_INVALID: The api_id/api_hash combination is invalid
  • PHONE_NUMBER_OCCUPIED: The phone number is already in use
  • PHONE_NUMBER_UNOCCUPIED: The phone number is not yet being used
  • USERS_TOO_FEW: Not enough users (to create a chat, for example)
  • USERS_TOO_MUCH: The maximum number of users has been exceeded (to create a chat, for example)
  • TYPE_CONSTRUCTOR_INVALID: The type constructor is invalid
  • FILE_PART_INVALID: The file part number is invalid
  • FILE_PARTS_INVALID: The number of file parts is invalid
  • FILE_PART_X_MISSING: Part X (where X is a number) of the file is missing from storage
  • MD5_CHECKSUM_INVALID: The MD5 checksums do not match
  • PHOTO_INVALID_DIMENSIONS: The photo dimensions are invalid
  • FIELD_NAME_INVALID: The field with the name FIELD_NAME is invalid
  • FIELD_NAME_EMPTY: The field with the name FIELD_NAME is missing
  • MSG_WAIT_FAILED: A request that must be completed before processing the current request returned an error
  • MSG_WAIT_TIMEOUT: A request that must be completed before processing the current request didn’t finish processing yet

There was an unauthorized attempt to use functionality available only to authorized users.

  • AUTH_KEY_UNREGISTERED: The key is not registered in the system
  • AUTH_KEY_INVALID: The key is invalid
  • USER_DEACTIVATED: The user has been deleted/deactivated
  • SESSION_REVOKED: The authorization has been invalidated, because of the user terminating all sessions
  • SESSION_EXPIRED: The authorization has expired
  • AUTH_KEY_PERM_EMPTY: The method is unavailable for temporary authorization key, not bound to permanent

Privacy violation. For example, an attempt to write a message to someone who has blacklisted the current user.

An attempt to invoke a non-existent object, such as a method.

Similar to 400 BAD_REQUEST, but the app must display the error to the user a bit differently.
Do not display any visible error to the user when receiving the rpc_error constructor: instead, wait for an updateServiceNotification update, and handle it as usual.
Basically, an updateServiceNotification popup update will be emitted independently (ie NOT as an Updates constructor inside rpc_result but as a normal update) immediately after emission of a 406 rpc_error : the update will contain the actual localized error message to show to the user with a UI popup.

An exception to this is the AUTH_KEY_DUPLICATED error, which is only emitted if any of the non-media DC detects that an authorized session is sending requests in parallel from two separate TCP connections, from the same or different IP addresses.
Note that parallel connections are still allowed and actually recommended for media DCs.
Also note that by session we mean a logged-in session identified by an authorization constructor, fetchable using account.getAuthorizations, not an MTProto session.

If the client receives an AUTH_KEY_DUPLICATED error, the session is already invalidated by the server and the user must generate a new auth key and login again.

The maximum allowed number of attempts to invoke the given method with the given input parameters has been exceeded. For example, in an attempt to request a large number of text messages (SMS) for the same phone number.

  • FLOOD_WAIT_X: A wait of X seconds is required (where X is a number)

An internal server error occurred while a request was being processed; for example, there was a disruption while accessing a database or file storage.

If a client receives a 500 error, or you believe this error should not have occurred, please collect as much information as possible about the query and error and send it to the developers.

If a server returns an error with a code other than the ones listed above, it may be considered the same as a 500 error and treated as an internal server error.

Источник

Коды ошибок Telegram API

В данной статье собраны ошибки, возвращаемые API Telegram. Числовое значение аналогично статусу HTTP. Содержит информацию о типе возникшей ошибки: например, ошибка ввода данных, ошибка конфиденциальности или ошибка сервера.

303 SEE_OTHER

Запрос необходимо повторить, но направить в другой центр обработки данных.

  • FILE_MIGRATE_X: файл, к которому нужно получить доступ, в настоящее время хранится в другом центре обработки данных.
  • PHONE_MIGRATE_X: номер телефона, который пользователь пытается использовать для авторизации, связан с другим центром обработки данных.
  • NETWORK_MIGRATE_X: исходный IP-адрес связан с другим центром обработки данных (для регистрации)
  • USER_MIGRATE_X: пользователь, личность которого используется для выполнения запросов, связан с другим центром обработки данных (для регистрации)

Во всех этих случаях строковый литерал описания ошибки содержит номер центра обработки данных (вместо X), в который должен быть отправлен повторный запрос.

ОШИБКА 400, НЕВЕРНЫЙ ЗАПРОС

Запрос содержит ошибки. В случае, если запрос был создан с использованием формы и содержит данные, созданные пользователем, пользователь должен быть уведомлен о том, что данные должны быть исправлены, прежде чем запрос будет повторен.

  • FIRSTNAME_INVALID: имя недействительно
  • LASTNAME_INVALID: фамилия недействительна
  • PHONE_NUMBER_INVALID: номер телефона недействителен
  • PHONE_CODE_HASH_EMPTY: phone_code_hash отсутствует
  • PHONE_CODE_EMPTY: phone_code отсутствует
  • PHONE_CODE_EXPIRED: срок действия кода подтверждения истек
  • API_ID_INVALID: комбинация api_id / api_hash недействительна
  • PHONE_NUMBER_OCCUPIED: номер телефона уже используется
  • PHONE_NUMBER_UNOCCUPIED: номер телефона еще не используется
  • USERS_TOO_FEW: недостаточно пользователей (например, для создания чата)
  • USERS_TOO_MUCH: превышено максимальное количество пользователей (например, для создания чата)
  • TYPE_CONSTRUCTOR_INVALID: конструктор типа недействителен
  • FILE_PART_INVALID: неверный номер части файла.
  • FILE_PARTS_INVALID: недопустимое количество частей файла.
  • FILE_PART_Х_MISSING: часть X (где X — номер) файла отсутствует в хранилище
  • MD5_CHECKSUM_INVALID: контрольные суммы MD5 не совпадают
  • PHOTO_INVALID_DIMENSIONS: размеры фотографии недействительны
  • FIELD_NAME_INVALID: поле с именем FIELD_NAME недействительно
  • FIELD_NAME_EMPTY: поле с названием FIELD_NAME отсутствует
  • MSG_WAIT_FAILED: запрос, который должен быть выполнен перед обработкой текущего запроса, возвратил ошибку
  • MSG_WAIT_TIMEOUT: запрос, который должен быть выполнен перед обработкой текущего запроса, еще не завершил обработку

401 ОШИБКА ДОСТУПА

Произошла попытка несанкционированного использования функций, доступных только авторизованным пользователям.

  • AUTH_KEY_UNRIGN: Ключ не зарегистрирован в системе
  • AUTH_KEY_INVALID: ключ недействителен
  • USER_DEACTIVATED: пользователь удален / деактивирован
  • SESSION_REVOKED: авторизация была аннулирована из-за того, что пользователь завершил все сеансы
  • SESSION_EXPIRED: срок авторизации истек
  • AUTH_KEY_PERM_EMPTY: метод недоступен для временного ключа авторизации, не привязан к постоянному

403 ЗАПРЕЩЕНО

Нарушение конфиденциальности. Например, попытка написать сообщение кому-то, кто занес текущего пользователя в черный список.

404 НЕ НАЙДЕНО

Попытка вызвать несуществующий объект, например метод.

406 NOT_ACCEPTABLE

Подобно 400 BAD_REQUEST , но приложение не должно отображать сообщения об ошибках для пользователя в пользовательском интерфейсе в результате этого ответа. Вместо этого сообщение об ошибке будет доставлено через updateServiceNotification.

420 FLOOD

Превышено максимально допустимое количество попыток вызвать данный метод с заданными входными параметрами. Например, при попытке запросить большое количество текстовых сообщений (SMS) на один и тот же номер телефона.

  • FLOOD_WAIT_X: требуется ожидание X секунд (где X — число)

500 ВНУТРЕННИЙ

Произошла внутренняя ошибка сервера во время обработки запроса; например, произошел сбой при доступе к базе данных или файловому хранилищу.

Если клиент получает ошибку 500 или вы считаете, что эта ошибка не должна была возникнуть, пожалуйста, соберите как можно больше информации о запросе и ошибке и отправьте ее разработчикам.

Другие коды ошибок

Если сервер возвращает ошибку с кодом, отличным от перечисленных выше, это может рассматриваться как ошибка 500 и рассматриваться как внутренняя ошибка сервера.

Источник

Telegram пишет: “слишком много попыток повторите позже” – что делать?

Интенсивная жизнь в мессенджерах и социальных сетях имеет обратную сторону медали: порой так увлекаешься какими-либо действиями в сервисе, что система невольно начинает видеть в тебе спамера. Либо же дело не в поступках пользователя, а в изъянах программного кода площадки и глюках Интернета. Как результат – многие уже сталкивались с сообщением “слишком много попыток входа” от Телеграм. Об этой проблеме сегодня и поговорим, о ее причинах и способах решений.

Ну а перед началом хотим порекомендовать вам наш сервис смс-активации «Grizzly Sms». С его помощью вы можете приобрести виртуальные номера для любых мессенджеров и соцсетей, и с их помощью выполнить регистрацию и успешный вход на выбранные площадки. Всего от двух рублей за прием смс с кодом верификации! Вы гарантированно избавитесь от проблем, вроде “слишком много попыток”. Телеграм, Вконтакте, Гугл, Фейсбук – все популярные сервисы откроют перед вами двери просто, быстро и совершенно анонимно!

Много попыток входа в Телеграм: основные причины проблемы

Если вы столкнулись с предупреждением “слишком много попыток, повторите позже” от Телеграм, значит мгновением ранее вы выполняли одно из действий:

  1. Отправляли сообщения в мессенджере сверх установленного лимита;
  2. Пытались выполнить регистрацию в сервисе, но столкнулись с глюком;
  3. Входили/выходили из вашего аккаунта большее число раз, чем установлено системой.

Рассмотрим подробнее каждую ситуацию.

Ошибка Telegram: много попыток отправки сообщений

Если вы мегаактивный пользователь мессенджера и увлекаетесь частой отправкой коротких сообщений, готовьтесь получить сообщение от Телеграм “сожалеем, слишком много попыток, повторите позже”. Оно будет означать, что за минуту вы попытались отправить сообщений больше, чем установлено системным лимитом (т.е. более 50 сообщений).

Кроме того, если вы делаете рассылки рекламных сообщений, то на вас может пожаловаться другой пользователь, что также приведет к временному ограничению вашей активности.

Совет: не разбивайте длинные сообщения на части. А если действительно делаете рекламные рассылки, делайте их внутри надежной группы.

Ошибка Telegram “много попыток” в случае глюка системы безопасности

Когда серверы мессенджера перегружены, а при этом кто-то пытается создать в нем аккаунт, то возникает данный подвид ошибки, когда слишком много попыток от Телеграм добиться сообщения с кодом верификации. Пользователь, не дожидаясь смс с кодом, жмет по кнопке “Повторить”, и делает так несколько раз.

Такая же ситуация возникает при попытке входа в уже существующий аккаунт (что также происходит путем верификации по номеру телефона). В результате срабатывает система безопасности, которая расценивает ваши действия, как попытку взлома аккаунта.

Совет: если долго не приходит смс, не стоит запрашивать его повторно несколько раз у Телеграм. Слишком много попыток, повторите позже вход в систему (где-то через 10-15 минут).

Ошибка Telegram: много попыток входа/выхода

Если превысить лимит входа и выхода в одну учетку, то пользователь также столкнется с ограничением активности. Слишком много попыток в Телеграм выполнения данных действий может привести к бану на 24 часа, что весьма неприятно. Но не надо расстраиваться. По окончанию периода ограничения система вернет вам полный контроль над аккаунтом.

Если вы получили подобное уведомление от Телеграм “слишком много попыток”, как исправить ситуацию? К сожалению, в данном случае только время решит проблему.

Много попыток входа в Телеграм: сколько ждать?

Очень часто время играет важную роль, и каждый час, каждая минута или даже секунда важны. Поэтому многие, кто получил уведомление от Телеграм “слишком много попыток” сколько ждать захотят узнать. Сделать это можно в веб-версии мессенджера.

Вам потребуется открыть страницу web.telegram.org и попытаться войти в свой аккаунт. Данное действие не будет иметь успеха, но появится кнопка “показать технические данные”. Кликнув по ней, вы увидите запись “Flood_wait_XXXX”, где ХХХХ будет количеством оставшихся секунд ожидания до возможности успешного повторения входа.

Ну а если вы столкнулись с ситуацией, когда Телеграм пишет “слишком много попыток”, а у вас совершенно нет времени ждать окончания ограничения активности, то вот вам отличный способ разблокировать доступ к мессенджеру: создайте новый аккаунт при помощи виртуального номера от «Grizzly Sms». Это займет буквально пару минут и кликов, а стоит всего 13,5 рубля. Согласитесь, небольшая плата за доступ ко всем возможностям сервиса здесь и сейчас. На этом все, спасибо за внимание.

Источник

RPC stands for Remote Procedure Call, and when the library raises
a RPCError, it’s because you have invoked some of the API
methods incorrectly (wrong parameters, wrong permissions, or even
something went wrong on Telegram’s server). All the errors are
available in API Errors, but some examples are:

  • FloodWaitError (420), the same request was repeated many times.
    Must wait .seconds (you can access this attribute). For example:

    ...
    from telethon import errors
    
    try:
        print(client.get_messages(chat)[0].text)
    except errors.FloodWaitError as e:
        print('Have to sleep', e.seconds, 'seconds')
        time.sleep(e.seconds)
    
  • SessionPasswordNeededError, if you have setup two-steps
    verification on Telegram.

  • CdnFileTamperedError, if the media you were trying to download
    from a CDN has been altered.

  • ChatAdminRequiredError, you don’t have permissions to perform
    said operation on a chat or channel. Try avoiding filters, i.e. when
    searching messages.

The generic classes for different error codes are:

  • InvalidDCError (303), the request must be repeated on another DC.
  • BadRequestError (400), the request contained errors.
  • UnauthorizedError (401), the user is not authorized yet.
  • ForbiddenError (403), privacy violation error.
  • NotFoundError (404), make sure you’re invoking Request’s!

If the error is not recognised, it will only be an RPCError.

You can refer to all errors from Python through the telethon.errors
module. If you don’t know what attributes they have, try printing their
dir (like print(dir(e))).

Avoiding Limits¶

Don’t spam. You won’t get FloodWaitError or your account banned or
deleted if you use the library for legit use cases. Make cool tools.
Don’t spam! Nobody knows the exact limits for all requests since they
depend on a lot of factors, so don’t bother asking.

Still, if you do have a legit use case and still get those errors, the
library will automatically sleep when they are smaller than 60 seconds
by default. You can set different “auto-sleep” thresholds:

client.flood_sleep_threshold = 0  # Don't auto-sleep
client.flood_sleep_threshold = 24 * 60 * 60  # Sleep always

You can also except it and act as you prefer:

from telethon.errors import FloodWaitError
try:
    ...
except FloodWaitError as e:
    print('Flood waited for', e.seconds)
    quit(1)

VoIP numbers are very limited, and some countries are more limited too.

Telegram is a messaging application that is known for being one of the most popular messaging applications in the world. It was developed by Telegram Messenger LLP and was launched in 2013. The app allows users to send messages, photos, videos, and other media files.

Besides these features, the app also allows users to share their location with their contacts. The app also supports stickers and bots.

Telegram is available on Android, iOS, Windows Phone, and Blackberry phones.

Tech Support 24/7

Ask a Tech Specialist Online

Connect with the Expert via email, text or phone. Include photos, documents, and more. Get step-by-step instructions from verified Tech Support Specialists.

Ask a Tech Specialist Online

On this page, you will find more information about the most common causes and most relevant solutions for the Telegram error ‘FLOOD_WAIT_X’. Do you need help straight away? Visit our support page.

Error information

What causes the FLOOD_WAIT_X error?

The Telegram documentation indicates that error code ‘FLOOD_WAIT_X’ is caused by the following problem: «A wait of X seconds is required (where X is a number)».

Do you think there is another cause for this error? Let others know in the comments.

Tech Support 24/7

Ask a Tech Specialist Online

Connect with the Expert via email, text or phone. Include photos, documents, and more. Get step-by-step instructions from verified Tech Support Specialists.

Ask a Tech Specialist Online

Verified solution

Many errors can occur when you try to use this app on your device or when you try to access your account information.

To fix this error, you need to try a few solutions.

Distribute your messages over time (7-8 messages per minute)

This is a very simple solution to fix the Telegram-flood-wait error. You can reduce the number of messages that you send to your contacts every minute.

Switch from wired to a wireless connection (or vice versa)

If your device’s settings or internet browser settings allow you to connect wirelessly, then try connecting via a wired internet connection instead.

In addition, if your device has been working fine with a wired internet connection, then there may be an issue with your device’s software or with your operating system software.

Sign out from Telegram before signing in back again

This is a very simple solution to fix the Telegram-flood-wait error. Try signing out from Telegram and sign back in again. In addition, it is also possible that there is an issue with your device’s software or with your operating system software.

Change your password

Changing the password for your Telegram account can help you solve this problem. This solution might work on some devices, but not on all devices.

The best way to make sure that changing the password for an account works on all devices is by using a long and secure password.

Create multiple Telegram accounts to send mass messages

If you are experiencing this error, then it is likely that there is an issue with your internet browser settings or with your internet connection. If you are not sure if this is the case, then try creating multiple Telegram accounts and sending different messages to different accounts.

Need more help?

Do you need more help?

Tech experts are ready to answer your questions.

Ask a question

from telethon import TelegramClient

all_participants = client.get_participants(target_group, aggressive=True)
Basically this line causes the whole problem.
I was running this code as usual , its a simple members scrap code from groups, and out of nowhere starter recieving this problem
I tried changing User, API id and API hash , turning on VPN, reinstalling PIP and Telethon and Python, Nothing seems to work.

Traceback (most recent call last):
File «c:UserstmaxiDesktopAddingNewAdderscraptpt.py», line 54, in
all_participants = client.get_participants(target_group, aggressive=True)
File «C:UserstmaxiAppDataLocalProgramsPythonPython39libsite-packagestelethonsync.py», line 39, in syncified
return loop.run_until_complete(coro)
File «C:UserstmaxiAppDataLocalProgramsPythonPython39libasynciobase_events.py», line 642, in run_until_complete
return future.result()
File «C:UserstmaxiAppDataLocalProgramsPythonPython39libsite-packagestelethonclientchats.py», line 507, in get_participants
return await self.iter_participants(*args, **kwargs).collect()
File «C:UserstmaxiAppDataLocalProgramsPythonPython39libsite-packagestelethonrequestiter.py», line 113, in collect
async for message in self:
File «C:UserstmaxiAppDataLocalProgramsPythonPython39libsite-packagestelethonrequestiter.py», line 74, in anext
if await self._load_next_chunk():
File «C:UserstmaxiAppDataLocalProgramsPythonPython39libsite-packagestelethonclientchats.py», line 222, in _load_next_chunk
results = await self.client(self.requests)
File «C:UserstmaxiAppDataLocalProgramsPythonPython39libsite-packagestelethonclientusers.py», line 30, in call
return await self._call(self._sender, request, ordered=ordered)
File «C:UserstmaxiAppDataLocalProgramsPythonPython39libsite-packagestelethonclientusers.py», line 80, in _call
raise MultiError(exceptions, results, requests)
telethon.errors.common.MultiError: ([FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), None, None, FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), None, FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’), FloodWaitError(‘A wait of 28 seconds is required (caused by GetParticipantsRequest)’)], [None, None, <telethon.tl.types.channels.ChannelParticipants object at 0x0000029944F63400>, <telethon.tl.types.channels.ChannelParticipants object at 0x0000029944F457C0>, None, None, <telethon.tl.types.channels.ChannelParticipants object at 0x0000029944F56430>, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None], [<telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944089310>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944089B50>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944089C10>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944089CD0>, <telethon.tl.functions.channels.GetParticipantsRequest
object at 0x0000029944089D90>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944089E50>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944089F10>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944089FD0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x00000299440920D0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092190>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092250>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092310>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x00000299440923D0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092490>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092550>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092610>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x00000299440926D0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092790>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092850>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092910>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x00000299440929D0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092A90>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092B50>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092C10>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092CD0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x0000029944092D90>])

Интенсивная жизнь в мессенджерах и социальных сетях имеет обратную сторону медали: порой так увлекаешься какими-либо действиями в сервисе, что система невольно начинает видеть в тебе спамера. Либо же дело не в поступках пользователя, а в изъянах программного кода площадки и глюках Интернета.  Как результат – многие уже сталкивались с сообщением “слишком много попыток входа” от Телеграм. Об этой проблеме сегодня и поговорим, о ее причинах и способах решений.

Ну а перед началом хотим порекомендовать вам наш сервис смс-активации «Grizzly Sms». С его помощью вы можете приобрести виртуальные номера для любых мессенджеров и соцсетей, и с их помощью выполнить регистрацию и успешный вход на выбранные площадки. Всего от двух рублей за прием смс с кодом верификации! Вы гарантированно избавитесь от проблем, вроде “слишком много попыток”. Телеграм, Вконтакте, Гугл, Фейсбук – все популярные сервисы откроют перед вами двери просто, быстро и совершенно анонимно!

Много попыток входа в Телеграм: основные причины проблемы

Если вы столкнулись с предупреждением “слишком много попыток, повторите позже” от Телеграм, значит мгновением ранее вы выполняли одно из действий:

  1. Отправляли сообщения в мессенджере сверх установленного лимита;
  2. Пытались выполнить регистрацию в сервисе, но столкнулись с глюком;
  3. Входили/выходили из вашего аккаунта большее число раз, чем установлено системой.

Рассмотрим подробнее каждую ситуацию.

Ошибка Telegram: много попыток отправки сообщений

Если вы мегаактивный пользователь мессенджера и увлекаетесь частой отправкой коротких сообщений, готовьтесь получить сообщение от Телеграм “сожалеем, слишком много попыток, повторите позже”. Оно будет означать, что за минуту вы попытались отправить сообщений больше, чем установлено системным лимитом (т.е. более 50 сообщений).

Кроме того, если вы делаете рассылки рекламных сообщений, то на вас может пожаловаться другой пользователь, что также приведет к временному ограничению вашей активности.

Совет: не разбивайте длинные сообщения на части. А если действительно делаете рекламные рассылки, делайте их внутри надежной группы.

Ошибка Telegram “много попыток” в случае глюка системы безопасности

Когда серверы мессенджера перегружены, а при этом кто-то пытается создать в нем аккаунт, то возникает данный подвид ошибки, когда слишком много попыток от Телеграм добиться сообщения с кодом верификации. Пользователь, не дожидаясь смс с кодом, жмет по кнопке “Повторить”, и делает так несколько раз.

Такая же ситуация возникает при попытке входа в уже существующий аккаунт (что также происходит путем верификации по номеру телефона). В результате срабатывает система безопасности, которая расценивает ваши действия, как попытку взлома аккаунта.

Совет: если долго не приходит смс, не стоит запрашивать его повторно несколько раз у Телеграм. Слишком много попыток, повторите позже вход в систему (где-то через 10-15 минут).

Ошибка Telegram: много попыток входа/выхода

Если превысить лимит входа и выхода в одну учетку, то пользователь также столкнется с ограничением активности. Слишком много попыток в Телеграм выполнения данных действий может привести к бану на 24 часа, что весьма неприятно. Но не надо расстраиваться. По окончанию периода ограничения система вернет вам полный контроль над аккаунтом.

Если вы получили подобное уведомление от Телеграм “слишком много попыток”, как исправить ситуацию? К сожалению, в данном случае только время решит проблему.

Много попыток входа в Телеграм: сколько ждать?

Очень часто время играет важную роль, и каждый час, каждая минута или даже секунда важны. Поэтому многие, кто получил уведомление от Телеграм “слишком много попыток” сколько ждать захотят узнать. Сделать это можно в веб-версии мессенджера.

Вам потребуется открыть страницу web.telegram.org и попытаться войти в свой аккаунт. Данное действие не будет иметь успеха, но появится кнопка “показать технические данные”. Кликнув по ней, вы увидите запись “Flood_wait_XXXX”, где ХХХХ будет количеством оставшихся секунд ожидания до возможности успешного повторения входа.

Ну а если вы столкнулись с ситуацией, когда Телеграм пишет “слишком много попыток”, а у вас совершенно нет времени ждать окончания ограничения активности, то вот вам отличный способ разблокировать доступ к мессенджеру: создайте новый аккаунт при помощи виртуального номера от «Grizzly Sms». Это займет буквально пару минут и кликов, а стоит всего 13,5 рубля. Согласитесь, небольшая плата за доступ ко всем возможностям сервиса здесь и сейчас. На этом все, спасибо за внимание.

Как посмотреть, есть ли ограничения на аккаунте?

Откройте поиск в Телеграм, найдите канал @spambot, начните с ним чат кнопкой Start. Если ограничения есть, бот сообщит, на какой срок на вас наложено ограничение.

Ошибка Peer-flood

Telegram все еще не доверяет аккаунту и временно блокирует отправку сообщений. Необходимо ограничить автоматические ответы и рассылки до повышения лояльности к аккаунту от Telegram.

Ошибка FLOOD_WAIT_X

Ошибка FLOOD_WAIT_X возникает в случаях, когда аккаунт пользователя помечен, как flood, а время блокировки еще не закончилось.

«You must provide a config value for first_name»

При авторизации просит ввести первое имя, обозначает что пытаются авторизовать совершенно новый номер.

Решение: зарегистрировать номер телефона в приложении, подождать несколько дней параллельно вести диалоги, чтобы аккаунт был в использовании.

«PHONE_NUMBER_INVALID»

Номер телефона недействителен

«Требуется повторить попытку проверки номера. Перезагрузите страницу и повторите попытку.»

Произошла ошибка проверки номера, требуется перезагрузить и повторить. Именно такая ошибка универсальна, происходит во многих вариантах. 

Решение: перезагрузить и попробовать заново во всех случаях исправляет проблему.

«У вас подключена двухфакторная авторизация, пожалуйста отключите её. Перезагрузите страницу и повторите попытку.»

Отключите двухфакторную авторизацию в настройках Телеграм и повторите попытку подключения.

«PHONE_NUMBER_BANNED» 

Номер забанили, скорее всего навсегда. Но можно попробовать написать в техподдержку Телеграм, если они поймут что бан ошибочный — разбанят.

«Срок действия кода истек. Перезагрузите страницу и повторите попытку.»

Очень долго вводят код или вызвали авторизацию у нас, потом пытаются вызвать авторизацию в другом месте, а код пытаются ввести у нас.

«Слишком много попыток авторизоваться. Пожалуйста, подождите {seconds} секунд.» 

seconds — может быть до суток.

“На данный номер не удалось отправить сообщение.”

Причины:

  1. На аккаунте {phone} скрыт доступ к номеру телефона;
  2. Номер телефона не зарегистрирован в Telegram;
  3. Превышен лимит создания контактов Telegram. Для устранения лимитов настройте синхронизацию контактов CRM с контактами на своем мобильном устройстве.» — описание прям в ошибке, понятно.

Причины блокировки Telegram-аккаунта (попадание в бан)

Если Telegram пишет, что номер заблокирован, у администрации были веские причины на введение бана. Пользователю может казаться, что он не нарушал правила, не злоупотреблял рассылками и вел себя вполне прилично. Однако алгоритмы сложно обмануть, поскольку они анализируют все манипуляции абонентов.

  1. Случайная блокировка. Существуют случаи, когда алгоритмы сработали автоматически и наложили ограничение без причины. К примеру, если вы отправляете всем своим друзьям, одногруппникам или коллегам приглашение на какое-то событие. Если же вы невиновны в нарушениях, есть способ, как восстановить Telegram-аккаунт. В этом случае нужно обратиться с письмом по адресу spam@telegram.org, где подробно изложить ситуацию, по возможности подкрепив ее доказательствами. Это займет некоторое время, служба поддержки обычно очень загружена. Но через два-три дня с аккаунта могут снять ограничения, если робот ошибся в обнаружении нарушения.
  2. Спам. Нарушение: случайная рекламная рассылка, отдельные активные призывы перейти по какой-либо ссылке, повторяющиеся сообщения все, что не понравится Telegram-сообществу — даже простое приветствие, если получатель посчитает его неуместным. Это возможно, поскольку любой пользователь может забанить другого, а также пожаловаться на сообщение, отправленное в публичных чатах и каналах. Как отправить жалобу: чтобы сообщить о посте в публичных сообществах, который, по вашему мнению, нарушает правила Telegram, следует тапнуть на него и выбрать соответствующий пункт Пожаловаться. Не менее удобна кнопка Сообщить о спаме, появляющаяся при входящих от неконтактов. От простоты процедуры жалоб вытекает и обратная достаточно распространенная проблема — приплетание несправедливых наказаний и банов. Есть несколько видов наказаний за спам:
    • Временное и постоянное ограничение возможности писать неконтактам;
    • Непосредственно бан с режимом read-only: доступен только просмотр каналов, причем забаненным может оказаться не только аккаунт, но и IP-адрес.
  3. Неправильный пароль для входа. Разработчики пытаются максимально минимизировать риск взлома аккаунтов пользователей, поэтому существует ограничение на ввод персональных данных не более 5 раз подряд. Обычно проблемы случаются, когда неверно выбрана раскладка клавиатуры, пароль слишком длинный или состоит из прописных и заглавных букв латинского алфавита, в результате чего повышается вероятность неправильного ввода.
  4. Новый аккаунт Telegram. Также причиной бана может послужить новый не прогретый аккаунт Telegram. Перед его активацией рекомендуем прогреть аккаунт 1-2 суток, по 3-4 диалога.

Как избежать блокировки?

Разработчики приложения настоятельно рекомендуют новым юзерам внимательно читать все пункты соглашения, а также не пренебрегать изучением правил. Бан наверняка обойдет стороной, если:

  • Вести себя корректно в обсуждениях. На недостойное поведение и оскорбления люди отреагируют массовыми жалобами, что приведет к вечному бану аккаунта.
  • Не использовать мессенджер для продвижения товаров и услуг. Рекламные рассылки нравятся далеко не всем, поэтому вскоре спамер сможет любоваться синей надписью на белом экране.
  • Соблюдать правила, которые установила администрация ресурса.
  • Не приглашать огромное количество людей в канал. Раздел может быть очень интересным и нести пользу, но повышенный энтузиазм алгоритмы трактуют по-своему.
  • Предотвратить бан аккаунта намного проще, чем ломать голову над вопросом, что делать, если заблокировали номер в Телеграме. Создатели программы советуют неукоснительно выполнять установленные правила, поскольку модераторов сложно разжалобить.

Чем не следует заниматься?

  1. Рекламной рассылкой, даже если пользователям она будет интересна.
  2. Рассылкой ссылок на сторонние и внутренние ресурсы.
  3. Не продвигайте товары, инфо курсы и казино. Пару жалоб и вы в бане.
  4. Не приглашайте в каналы, чаты в массовом порядке.
  5. Не кидайте сообщения в чатах, в которых запрещено рекламировать свои каналы и товары. Пусть чат открыт для всех, но спам не любит никто, поэтому если пользователям не понравятся ваши ссылки они могут пожаловаться на вас.

Limits Telegram

  • Когда вы пишите клиенту первым из CRM то модуль интеграции добавляет клиента в контакты вашего аккаунта, при этом Telegram ввел ограничения для нештатных интеграций 15 контактов в сутки.
  • Если Вы в течении дня будете добавлять контакты постепенно, например: сейчас добавили два, через час добавили один, еще через час добавил два, то в таком случае аккаунт не попадает в ограничения.
  • Если суточный лимит уже исчерпан (15 контактов), то все следующие дни можно добавлять не более 5 контактов.
  • Также когда суточный лимит исчерпан, то при попытке добавить новый контакт он будет отображаться как «контакт не использует Telegram», хотя номер зарегистрирован.
  • Синхронизация телефонной книги с Telegram — без ограничений, пожалуйста синхронизируйте ваш телефон с CRM и тогда лимиты не будут мешать вам в работе. Инструкция синхронизации контактов в Битрикс24.

Как сделать чтобы архивный чат не возвращался в общий список?

Если добавить чат в архив, то при поступлении туда новых сообщений — чат вернется в общий список. Чтобы этого не произошло, в настройках телеграм-диалога отключите уведомления:

Понравилась статья? Поделить с друзьями:
  • Floating point overflow как исправить
  • Floating point exception как исправить
  • Flood control код ошибки 9
  • Floating point error python это
  • Flood control 9 vk mp3 как исправить