NAME

Net::LastFM - A simple interface to the Last.fm API

SYNOPSIS

my $lastfm = Net::LastFM->new(
    api_key    => 'XXX',
    api_secret => 'YYY',
);
my $data = $lastfm->request_signed(
    method => 'user.getRecentTracks',
    user   => 'lglb',
);

DESCRIPTION

The module provides a simple interface to the Last.fm API. To use this module, you must first sign up at http://www.last.fm/api to receive an API key and secret.

You can then make requests on the API - most of the requests are signed. You pass in a hash of paramters and a data structure mirroring the response is returned.

This module confesses if there is an error.

METHODS

request

This makes an unsigned request:

my $data = $lastfm->request( method => 'auth.gettoken' );

request_signed

This makes a signed request:

my $data = $lastfm->request_signed(
    method => 'user.getRecentTracks',
    user   => 'lglb',
);

create_http_request

If you want to integrate this module into another HTTP framework, this method will simple create an unsigned HTTP::Request object:

my $http_request = $lastfm->create_http_request(
    method => 'auth.gettoken'
);

create_http_request_signed

If you want to integrate this module into another HTTP framework, this method will simple create a signed HTTP::Request object:

my $http_request = $lastfm->create_http_request_signed(
    method => 'user.getRecentTracks',
    user   => 'lglb',
);

AUTHOR

Leon Brocard <acme@astray.com>

COPYRIGHT

Copyright (C) 2008-9, Leon Brocard.

LICENSE

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