NAME

Amazon::PAApi5::Signature - Amazon Product Advertising API(PA-API) 5.0 Helper

SYNOPSIS

    use Amazon::PAApi5::Payload;
    use Amazon::PAApi5::Signature;
    use HTTP::Headers;
    use LWP::UserAgent;
    use Data::Dumper;

    my $payload = Amazon::PAApi5::Payload->new(
        'PARTNER_TAG'
    );

    my $sig = Amazon::PAApi5::Signature->new(
        'ACCESS_KEY',
        'SECRET_KEY',
        $payload->to_json({
            Keywords    => 'Perl',
            SearchIndex => 'All',
            ItemCount   => 2,
            Resources   => [qw/
                ItemInfo.Title
            /],
        }),
    );

    my $ua = LWP::UserAgent->new(
        default_headers => HTTP::Headers->new($sig->headers),
    );

    my $res = $ua->post($sig->req_url, Content => $sig->payload);

    warn Dumper($res->status_line, $res->content);

DESCRIPTION

Amazon::PAApi5::Signature generates a request headers and request body for Amazon Product Advertising API(PA-API) 5.0

<https://webservices.amazon.com/paapi5/documentation/quick-start.html>

METHODS

new($access_key, $secret_key, $request_payload, $options)

Constructor

req_url

Get request URL string

headers

Get signed HTTP headers as hash

headers_as_arrayref

headers_as_hashref

to_request

Get a hash for HTTP request

REPOSITORY

Amazon::PAApi5::Signature is hosted on github: http://github.com/bayashi/Amazon-PAApi5-Signature

I appreciate any feedback :D

AUTHOR

Dai Okabayashi <bayashi@cpan.org>

LICENSE

Amazon::PAApi5::Signature is free software; you can redistribute it and/or modify it under the terms of the Artistic License 2.0. (Note that, unlike the Artistic License 1.0, version 2.0 is GPL compatible by itself, hence there is no benefit to having an Artistic 2.0 / GPL disjunction.) See the file LICENSE for details.