NAME
Twitter::API::Trait::RateLimiting - Automatically sleep as needed to handle rate limiting
VERSION
version 1.0006
SYNOPSIS
use Twitter::API;
my $client = Twitter::API->new_with_options(
traits => [ qw/ApiMethods RateLimiting/ ],
%other_options,
);
# Use $client as normal
DESCRIPTION
Twitter's API implements rate limiting in a 15-minute window, and will serve up an HTTP 429 error if the rate limit is exceeded for a window. Applying this trait will give Twitter::API the ability to automatically sleep as much as is needed and then retry a request instead of simply throwing an exception.
ATTRIBUTES
rate_limit_sleep_code
A coderef, called to implement sleeping. It takes a single parameter - the number of seconds to sleep. The default implementation is:
sub { sleep shift }
SEE ALSO
https://developer.twitter.com/en/docs/basics/rate-limiting
AUTHOR
Marc Mims <marc@questright.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2015-2021 by Marc Mims.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.