Skip to content

Latest commit

 

History

History
81 lines (52 loc) · 2.21 KB

README.md

File metadata and controls

81 lines (52 loc) · 2.21 KB

Anesidora

Build Status npm

A really simple wrapper around the Pandora JSON API.

Installation

npm install --save anesidora

Usage

var Anesidora = require("anesidora");

var pandora = new Anesidora("email", "password");

pandora.login(function(err) {
    if (err) throw err;
    pandora.request("user.getStationList", function(err, stationList) {
        if (err) throw err;
        var station = stationList.stations[0];
        pandora.request("station.getPlaylist", {
            "stationToken": station.stationToken,
            "additionalAudioUrl": "HTTP_128_MP3"
        }, function(err, playlist) {
            if (err) throw err;
            var track = playlist.items[0];
            console.log("Playing '" + track.songName + "' by " + track.artistName);
            console.log(track.additionalAudioUrl);
        });
    });
});

Documentation

See here for API documentation. Authentication, encryption, and TLS are all handled automatically. All you need is an email and a password, and you're good to go.

Handy links:

var pandora = new Anesidora(email, password, [config])

Create a new Anesidora instance for making requests. No authentication is done until pandora.login is called.

config

(Optional) A custom partner config.

pandora.login(callback)

Authenticate with Pandora.

callback - function(err)

Do all requests inside this callback.

pandora.request(method, [data], callback)

Make a Pandora API call.

method

A Pandora API call method, such as station.getPlaylist.

data

(Optional) Data for the API call, if necessary.

callback - function(err, result)

  • result is the value returned from Pandora. Refer to the individual method docs for more information.