Business-MollieAPI
view release on metacpan or search on metacpan
lib/Business/MollieAPI.pm view on Meta::CPAN
package Business::MollieAPI;
use strict;
use 5.008_005;
our $VERSION = '0.10';
use Moo;
use URI;
use LWP::UserAgent;
use JSON::XS;
use Business::MollieAPI::Payments;
use Business::MollieAPI::Methods;
use Business::MollieAPI::Issuers;
has endpoint => (
is => 'rw',
builder => 1,
);
sub _build_endpoint {
my $self = shift;
return URI->new('https://api.mollie.nl');
}
has version => (
is => 'rw',
default => 'v1',
);
has client_version => (
is => 'rw',
default => $VERSION,
);
has payments => (
is => 'lazy',
);
sub _build_payments {
my $self = shift;
return Business::MollieAPI::Payments->new(client => $self);
}
has methods => (
is => 'lazy',
);
sub _build_methods {
my $self = shift;
return Business::MollieAPI::Methods->new(client => $self);
}
has issuers => (
is => 'lazy',
);
sub _build_issuers {
my $self = shift;
return Business::MollieAPI::Issuers->new(client => $self);
}
has api_key => (
is => 'rw',
isa => sub {
my $value = shift;
die "API KEY is not valid" unless $value =~ m/^(live_|test_)\w+/;
},
);
sub log_response {
return;
}
sub perform {
my $self = shift;
my $req = shift;
$req->header('Authorization', 'Bearer ' . $self->api_key);
my $ua = LWP::UserAgent->new();
my $res = $ua->request($req);
( run in 0.660 second using v1.01-cache-2.11-cpan-13bb782fe5a )