imgurwrap
v0.0.4
Published
A wrapper for the Imgur API
Downloads
5
Maintainers
Readme
imgurwrap
Description
Imgurwrap is a node.js module for making requests against the Imgur API.
Supports querying the API for image and album data by ID or URL.
How to use
Start by requiring the module
imgurwrap = require('imgurwrap.js');
Basic configuration
- Register with Imgur to get a ClientID for your application.
imgurwrap.setUserAgent('imgurwrap default useragent v1.1'); // Replace with your UserAgent
imgurwrap.setClientID('eb534344da354de40d90'); // Replace with your CleintID
Data models returned by the API
1. Request an image by ID
imgurwrap.getImageData('lEVc0PF', function(err, res) {
console.log(res);
});
2. Request an album by ID
imgurwrap.getAlbumData('PzWUu', function(err, res) {
console.log(res);
});
3. Request an image, multiple images, or an album by URL
The returned model property will be either 'image', 'images', or 'album'
imgurwrap.getURLData('http://imgur.com/lEVc0PF', function(err, res) {
console.log(res);
console.log(res.model); // Prints out 'image'
});
imgurwrap.getURLData('http://imgur.com/lEVc0PF,G80OxqS', function(err, res) {
console.log(res);
console.log(res.model); // Prints out 'images'
console.log(res.images[0].model); // Prints out 'image'
});
imgurwrap.getURLData('http://imgur.com/a/PzWUu', function(err, res) {
console.log(res);
console.log(res.model); // Prints out 'album'
});
4. Upload an image
From another URL:
imgurwrap.uploadImageURL({
image: 'http://i.imgur.com/nVQtKSl.jpg',
title: 'Something good',
description: 'Something descriptive',
}, function(err, res) {
console.log(res);
});
From a file:
var imageData = fs.readFileSync(imagePath);
imgurwrap.uploadImageFile({
image: imageData,
title: 'Something good',
description: 'Something descriptive'
}, function(err, res) {
console.log(res);
});
From a Base64 encoded file:
var imageData = fs.readFileSync(imagePath);
imgurwrap.uploadImageBase64({
image: imageData,
title: 'Something good',
description: 'Something descriptive'
}, function(err, res) {
console.log(res);
});
5. Delete an image
imgurwrap.deleteImage('lEV3j0PF', function(err, res) {
console.log(res);
});
6. Request rate limiting information
imgurwrap.getRateLimitingData(function(err, res) {
console.log(res);
});
For commercial usage, Mashape can be utilized for making requests.
- Register with Mashape to get a MashapeAuthID for your application.
// Replace with your MashapeAuthID
imgurwrap.setMashapeAuthID('cXs47w356nWDx2k9E34G36j4ZHBAdxmZ');
Note that on setting the MashapeAuthID, the endpoint used for making requests will automaticaly be updated to point to the Mashape Imgur endpoint (i.e. https://imgur-apiv3.p.mashape.com/).
Available configuration options
- Register with Imgur to get a ClientID for your application.
- Register with Mashape to get a MashapeAuthID for your application.
// Replace with your CleintID
imgurwrap.setClientID('eb534344da354de40d90');
// Replace with your MashapeAuthID
imgurwrap.setMashapeAuthID('cXs47w356nWDx2k9E34G36j4ZHBAdxmZ');
imgurwrap.setUserAgent('imgurwrap default useragent v1.1');
imgurwrap.setApiHost('https://api.imgur.com');
imgurwrap.setApiVersion(3);