NAME
Net::Travis::API - Low Level Plumbing for travis-ci.org's api
VERSION
version 0.001000
DEVELOPMENT
This code is highly in-development, and is feature incomplete, and does
not presently represent all API functions available.
At present, most the functionality is lower-level plumbing functions
which should eventually give way to a higher level API.
But code endeavors to approach better coverage eventually, and hopefully
serve as a better documentation than Travis's own API docs, which were
so lackluster I had to resort to sniffing their websites traffic from my
browser to understand what was going on.
AUTHENTICATION
Presently this module only covers the overhead of getting authentication
working with travis, so that you can do arbitrary requests and get
useful responses.
And this was the #1 challenge from the Travis API docs, because this
process is poorly documented, and fettered with documentation about
things documented not to be implemented yet.
So, at present, you have several options:
1. Work with an unauthenticated User Agent.
use Net::Travis::API::UA;
my $ua = Net::Travis::API::UA->new();
$ua->get('/repos/someuser'); # Public Endpoint
2. Use the GitHub Authentication Module to get an authenticated agent.
use Net::Travis::API::Auth::GitHub;
my $ua = Net::Travis::API::Auth::GitHub->get_authorised_ua_for( $token );
$ua->get('/users'); # private endpoint
3. Get an authorization token some other way.
And avoid incurring an authorization request overhead.
use Net::Travis::API::UA;
my $ua = Net::Travis::API::UA->new(
authtokens => [ $token ]
);
$ua->get('/users'); # private endpoint
AUTHOR
Kent Fredric <kentfredric@gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Kent Fredric
<kentfredric@gmail.com>.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.