# 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](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](https://metacpan.org/pod/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](https://metacpan.org/pod/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.
