NAME
API::Twitter - Twitter.com API Client
VERSION
version 0.05
SYNOPSIS
use API::Twitter;
my $twitter = API::Twitter->new(
consumer_key => 'CONSUMER_KEY',
consumer_secret => 'CONSUMER_SECRET',
access_token => 'ACCESS_TOKEN',
access_token_secret => 'ACCESS_TOKEN_SECRET',
identifier => 'IDENTIFIER',
);
$twitter->debug(1);
$twitter->fatal(1);
my $user = $twitter->users('lookup');
my $results = $user->fetch;
# after some introspection
$user->update( ... );
DESCRIPTION
This distribution provides an object-oriented thin-client library for interacting with the Twitter (http://twitter.com) API. For usage and documentation information visit https://dev.twitter.com/rest/public. API::Twitter is derived from API::Client and inherits all of it's functionality. Please read the documentation for API::Client for more usage information.
ATTRIBUTES
access_token
$twitter->access_token;
$twitter->access_token('ACCESS_TOKEN');
The access_token attribute should be set to an API access_token associated with your account.
access_token_secret
$twitter->access_token_secret;
$twitter->access_token_secret('ACCESS_TOKEN_SECRET');
The access_token_secret attribute should be set to an API access_token_secret associated with your account.
consumer_key
$twitter->consumer_key;
$twitter->consumer_key('CONSUMER_KEY');
The consumer_key attribute should be set to an API consumer_key associated with your account.
consumer_secret
$twitter->consumer_secret;
$twitter->consumer_secret('CONSUMER_SECRET');
The consumer_secret attribute should be set to an API consumer_secret associated with your account.
identifier
$twitter->identifier;
$twitter->identifier('IDENTIFIER');
The identifier attribute should be set to a string that identifies your app.
debug
$twitter->debug;
$twitter->debug(1);
The debug attribute if true prints HTTP requests and responses to standard out.
fatal
$twitter->fatal;
$twitter->fatal(1);
The fatal attribute if true promotes 4xx and 5xx server response codes to exceptions, a API::Client::Exception object.
retries
$twitter->retries;
$twitter->retries(10);
The retries attribute determines how many times an HTTP request should be retried if a 4xx or 5xx response is received. This attribute defaults to 1.
timeout
$twitter->timeout;
$twitter->timeout(5);
The timeout attribute determines how long an HTTP connection should be kept alive. This attribute defaults to 10.
url
$twitter->url;
$twitter->url(Mojo::URL->new('https://api.twitter.com'));
The url attribute set the base/pre-configured URL object that will be used in all HTTP requests. This attribute expects a Mojo::URL object.
user_agent
$twitter->user_agent;
$twitter->user_agent(Mojo::UserAgent->new);
The user_agent attribute set the pre-configured UserAgent object that will be used in all HTTP requests. This attribute expects a Mojo::UserAgent object.
METHODS
action
my $result = $twitter->action($verb, %args);
# e.g.
$twitter->action('head', %args); # HEAD request
$twitter->action('options', %args); # OPTIONS request
$twitter->action('patch', %args); # PATCH request
The action method issues a request to the API resource represented by the object. The first parameter will be used as the HTTP request method. The arguments, expected to be a list of key/value pairs, will be included in the request if the key is either data
or query
.
create
my $results = $twitter->create(%args);
# or
$twitter->POST(%args);
The create method issues a POST
request to the API resource represented by the object. The arguments, expected to be a list of key/value pairs, will be included in the request if the key is either data
or query
.
delete
my $results = $twitter->delete(%args);
# or
$twitter->DELETE(%args);
The delete method issues a DELETE
request to the API resource represented by the object. The arguments, expected to be a list of key/value pairs, will be included in the request if the key is either data
or query
.
fetch
my $results = $twitter->fetch(%args);
# or
$twitter->GET(%args);
The fetch method issues a GET
request to the API resource represented by the object. The arguments, expected to be a list of key/value pairs, will be included in the request if the key is either data
or query
.
update
my $results = $twitter->update(%args);
# or
$twitter->PUT(%args);
The update method issues a PUT
request to the API resource represented by the object. The arguments, expected to be a list of key/value pairs, will be included in the request if the key is either data
or query
.
RESOURCES
account
$twitter->account;
The account method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#account.
application
$twitter->application;
The application method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#application.
blocks
$twitter->blocks;
The blocks method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#blocks.
direct_messages
$twitter->direct_messages;
The direct_messages method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#direct_messages.
favorites
$twitter->favorites;
The favorites method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#favorites.
followers
$twitter->followers;
The followers method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#followers.
friends
$twitter->friends;
The friends method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#friends.
friendships
$twitter->friendships;
The friendships method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#friendships.
geo
$twitter->geo;
The geo method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#geo.
help
$twitter->help;
The help method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#help.
lists
$twitter->lists;
The lists method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#lists.
media
$twitter->media;
The media method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#media.
mutes
$twitter->mutes;
The mutes method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#mutes.
saved_searches
$twitter->saved_searches;
The saved_searches method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#saved_searches.
search
$twitter->search;
The search method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#search.
statuses
$twitter->statuses;
The statuses method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#statuses.
trends
$twitter->trends;
The trends method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#trends.
users
$twitter->users;
The users method returns a new instance representative of the API resource requested. This method accepts a list of path segments which will be used in the HTTP request. The following documentation can be used to find more information. https://dev.twitter.com/rest/public#users.
AUTHOR
Al Newkirk <anewkirk@ana.io>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Al Newkirk.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.