NAME

PAUSE::Permissions::MetaCPAN - get module permissions from MetaCPAN API

SYNOPSIS

my $api = PAUSE::Permissions::MetaCPAN->new;
my $perm = $api->get(author => 'SKAJI');
# {
# co_maintainer => [
# {
# co_maintainers => ["MIYAGAWA", "SKAJI", "SLANNING", "SYOHEX"],
# module_name => "Minilla",
# owner => "TOKUHIROM",
# },
# ...
# ],
# owner => [
# {
# co_maintainers => [],
# module_name => "Acme::RandomEmoji",
# owner => "SKAJI",
# },
# ...
# ],
# }
my $perm = $api->get(modules => ['LWP', 'NotFound', 'Plack']);
# {
# LWP => {
# co_maintainers => ["ETHER", "GAAS", "MSCHILLI", "MSTROUT", "OALDERS"],
# module_name => "LWP",
# owner => "LWWWP",
# },
# NotFound => undef,
# Plack => {
# co_maintainers => [],
# module_name => "Plack",
# owner => "MIYAGAWA",
# },
# }

DESCRIPTION

PAUSE::Permissions::MetaCPAN gets module permissions from MetaCPAN API.

METHOD

new

my $api = PAUSE::Permissions::MetaCPAN->new;

Constructor. It optionally takes the following argument:

http

HTTP::Tiny object. Default is

HTTP::Tiny->new(verify_SSL => 1, agent => 'PAUSE-Permissions-MetaCPAN/VERSION')
url

MetaCPAN API url. Default is https://fastapi.metacpan.org/v1/permission/_search.

get

my $perm = $api->get(author => 'AUTHOR');
my $perm = $api->get(modules => ['Module1', 'Module2', ...]);

Get module permissions from MetaCPAN API. It must be called with either author or modules argument. It returns a hash reference that contains module permissions.

SEE ALSO

PAUSE::Permissions
https://fastapi.metacpan.org/

AUTHOR

Shoichi Kaji <skaji@cpan.org>

COPYRIGHT AND LICENSE

Copyright 2018 Shoichi Kaji <skaji@cpan.org>

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.