NAME
WebService::Pokemon - Perl library for accessing the Pokémon data, http://pokeapi.co.
SYNOPSIS
use WebService::Pokemon;
my $pokemon_api = WebService::Pokemon->new;
# By id.
my $pokemon = $pokemon_api->resource('berry', 1);
# By name.
my $pokemon = $pokemon_api->resource('berry', 'cheri');
DESCRIPTION
WebService::Pokemon is a Perl client helper library for the Pokemon API (pokeapi.co).
DEVELOPMENT
Source repository at https://github.com/kianmeng/webservice-pokemon.
How to contribute? Follow through the CONTRIBUTING.md document to setup your development environment.
METHODS
new([%$args])
Construct a new WebService::Pokemon instance. Optionally takes a hash or hash reference.
# Instantiate the class.
my $pokemon_api = WebService::Pokemon->new;
api_url
The URL of the API resource.
# Instantiate the class by setting the URL of the API endpoints.
my $pokemon_api = WebService::Pokemon->new({api_url => 'http://example.com/api/v2'});
# Or after the object was created.
my $pokemon_api = WebService::Pokemon->new;
$pokemon_api->api_url('http://example.com/api/v2');
autoload
Set this if you want to expand all fields point to external URL.
# Instantiate the class by setting the URL of the API endpoints.
my $pokemon_api = WebService::Pokemon->new({autoload => 1});
# Or after the object was created.
my $pokemon_api = WebService::Pokemon->new;
$pokemon_api->autoload(1);
$pokemon_api->resource('berry');
resource($resource, [$name], [$limit], [$offset])
Get the details of a particular resource with optional id or name; limit per page, or offset by the record list.
# Get paginated list of available berry resource.
my $berry = $pokemon_api->resource('berry');
# Or by page through limit and pagination.
my $berry = $pokemon_api->resource('berry', undef, 60, 20);
# Get by id.
my $berry_firmness = $pokemon_api->resource('berry-firmnesses', 1);
# Get by name.
my $berry_firmness = $pokemon_api->resource('berry-firmnesses', 'very-soft');
resource_by_url($url)
Get the details of a particular resource by full URL.
# Get paginated list of available berry resource with default item size.
my $berries = $pokemon_api->resource_by_url('https://pokeapi.co/api/v2/berry/');
# Get paginated list of available berry resource with explicit default item size.
my $berries = $pokemon_api->resource_by_url('https://pokeapi.co/api/v2/berry/?limit=20&offset=40');
# Get particular berry resource.
my $berry = $pokemon_api->resource_by_url('https://pokeapi.co/api/v2/berry/1');
AUTHOR
Kian Meng, Ang <kianmeng@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2018-2019 by Kian Meng, Ang.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)