Code Monkey home page Code Monkey logo

imgurwrap's Introduction

Build Status

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

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.

// 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

// 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);

imgurwrap's People

Contributors

mrosnerr avatar

Stargazers

 avatar  avatar

Watchers

 avatar

imgurwrap's Issues

Not posting to my account

I'm trying to post images to my account, I've got an app set up and a valid client ID. I assign the client ID and User Agent in my script, but when it posts the image it seems to post it anonymously, not under my account. Am I missing something?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.