### AUTO-GENERATED FILE ###
### DO NOT EDIT. YOUR CHANGES WILL BE LOST. ###
package WebService::Bonusly::Rewards;
$WebService::Bonusly::Rewards::VERSION = '0.160290';
use v5.14;
use Moose;
use Carp;

extends 'WebService::Bonusly::Service';


sub get {
    my ($self, %params) = @_;

    my %clean;
            
    croak "parameter id is required for rewards->get"
        unless defined $params{id};
    
    $clean{id} = $params{id}
        if defined $params{id};
    
    return $self->_perform_action(
        'GET',
        'rewards/:id',
        \%clean,
        
    );
}

sub list {
    my ($self, %params) = @_;

    my %clean;
            
    $clean{catalog_country} = $params{catalog_country}
        if defined $params{catalog_country};
            
    $clean{request_country} = $params{request_country}
        if defined $params{request_country};
            
    $clean{personalize_for} = $params{personalize_for}
        if defined $params{personalize_for};
    
    return $self->_perform_action(
        'GET',
        'rewards',
        \%clean,
        
    );
}

sub take {
    my ($self, %params) = @_;

    my %clean;
            
    croak "parameter denomination_id is required for rewards->take"
        unless defined $params{denomination_id};
    
    $clean{denomination_id} = $params{denomination_id}
        if defined $params{denomination_id};
            
    croak "parameter user_id is required for rewards->take"
        unless defined $params{user_id};
    
    $clean{user_id} = $params{user_id}
        if defined $params{user_id};
    
    return $self->_perform_action(
        'POST',
        'rewards',
        \%clean,
        
    );
}


__PACKAGE__->meta->make_immutable;

__END__

=pod

=encoding UTF-8

=head1 NAME

WebService::Bonusly::Rewards

=head1 VERSION

version 0.160290

=for Pod::Coverage *EVERYTHING*

=head1 AUTHOR

Andrew Sterling Hanenkamp <hanenkamp@cpan.org>

=head1 COPYRIGHT AND LICENSE

This software is copyright (c) 2016 by Qubling Software LLC.

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

=cut
