A simple, Object Oriented API wrapper for the EchoNest Api written with PHP5.
This library is modeled after the php-github-api library built by ornicar
Uses EchoNest API v4.
Requires
- PHP 5.2 or 5.3.
- php curl but it is possible to write another transport layer..
If the method you need does not exist yet, dont hesitate to request it with an issue!
The first step to use php-echonest-api is to register its autoloader:
require_once '/path/to/lib/EchoNest/Autoloader.php';
EchoNest_Autoloader::register();
Replace the /path/to/lib/
path with the path you used for php-echonest-api installation.
php-echonest-api follows the PEAR convention names for its classes, which means you can easily integrate php-echonest-api classes loading in your own autoloader.
$echonest = new EchoNest_Client();
From this object you can now access all of the different EchoNest APIs (listed below)
Authenticate using your EchoNest API Key. You can obtain one at EchoNest by Registering an Account
$echonest->authenticate($apiKey);
Cancels authentication.
$echonest->deAuthenticate();
Next requests will not be authenticated
For searching artists, getting artist information and music. Wraps EchoNest Artist API.
$artistApi = $echonest->getArtistApi();
$results = $echonest->getArtistApi()->search(array('name' => 'Radiohead'));
print_r($results);
Array
(
[status] => Array
(
[version] => 4.2
[code] => 0
[message] => Success
)
[artists] => Array
(
[0] => Array
(
[name] => Radiohead
[id] => ARH6W4X1187B99274F
)
)
)
Returns an array of results as described in http://developer.echonest.com/docs/v4/artist.html#search
$bios = $echonest->getArtistApi()->setName('Radiohead')->getBiographies();
Once you set an artists name or id on an artist API, the API will remember that artist and use them for future function calls
$artistApi = $echonest->getArtistApi();
$artistApi->setName('Radiohead');
$bios = $artistApi->getBiographies();
$audio = $artistApi->getAudio();
$images = $artistApi->getImages();
Each function comes with a variety of options. Please view the documentation in this project or on http://echonest.com to see all the options available
Api calls for getting data about songs. Wraps EchoNest Song API.
$songApi = $echonest->getSongApi();
Please view the documentation in this project or on http://echonest.com to see all the options available
Api calls for generating playlists. Wraps EchoNest Playlist API.
$playlistApi = $echonest->getPlaylistApi();
Please view the documentation in this project or on http://echonest.com to see all the options available
API calls for managing personal catalogs. Wraps EchoNest Catalog API.
$catalogApi = $echonest->getCatalogApi();
Please view the documentation in this project or on http://echonest.com to see all the options available
Methods for analyzing or getting info about tracks. Wraps EchoNest Track API.
$trackApi = $echonest->getTrackApi();
Please view the documentation in this project or on http://echonest.com to see all the options available
Better documentation and test coverage will be coming soon