genius-wrapi
v0.1.0
Published
Wrapper for Genius API
Downloads
1
Maintainers
Readme
Genius API Wrapper
Client interface for accessing Genius API.
Installation
Install via npm
npm install genius-wrapi --save
Usage
Create a client object with the access_token to connect to Genius API endpoints.
var geniusWrapi = require('genius-wrapi');
var client = new geniusWrapi(GENIUS_ACCESS_TOKEN);
// Now you are ready to make API calls to Genius.
Provide parameters and a callback.
API calls follow this syntax:
client.apimethod(param1, ..., queryString, post_payload, callback);
param
- (if required) url parameters - eg: For annotations.get the value for:id
.queryString
- (as required) API method parameters as key-value pairs.post_payload
- (as required) payload for POST requests - eg annotations.create
Examples
Get data for a specific annotation.
client.annotations.get('6737668', function(err, data) {
if (!err) {
console.log(data);
}
});
Creates a new annotation on a public web page.
var payload = {
"annotation": {
"body": {
"markdown": "hello **world!**"
}
},
"referent": {
"raw_annotatable_url": "http://seejohncode.com/2014/01/27/vim-commands-piping/",
"fragment": "execute commands",
"context_for_display": {
"before_html": "You may know that you can ",
"after_html": " from inside of vim, with a vim command:"
}
},
"web_page": {
"canonical_url": null,
"og_url": null,
"title": "Secret of Mana"
}
};
client.annotations.create(payload, function(err, data) {
if (!err) {
console.log(data);
}
});
Songs for the specified artist.
client.artists.songs('16775', function(err, data) {
if (!err) {
console.log(data);
}
});
Retrieve information about a web page.
client.webpages.lookup(
{
aw_annotatable_url:'https://docs.genius.com'
},
function(err, data) {
if (!err) {
console.log(data);
}
}
);
Search documents hosted on Genius.
client.search(
{
q:'Kendrick Lamar'
},
function(err, data) {
if (!err) {
console.log(data);
}
}
);
API Functions
Annotations
- annotations.get
- annotations.create
- annotations.update
- annotations.delete
- annotations.upvote
- annotations.unvote
- annotations.downvote
Referents
- referents
Songs
- songs
Artists
- artists
- artists.songs
Web Pages
- web_pages.lookup
Search
- search
Account
- account