GithubHelp home page GithubHelp logo

soundcloud-node's Introduction

Soundcloud-node

Provides seamless modular support for working with SoundCloud and Nodejs

Enhanced so you need to do less

SoundCloud APIs

  • Connection + Authorize User
  • OAuth Authorization
  • General GET, PUT, POST and DELETE request

Usage

Get OAuth token

var SoundCloudAPI = require("soundcloud-node");

// instantiate the client
var client = new SoundCloudAPI(client_id, client_secret, redirect_uri);

// Connect User - Assuming you are using Express 
var oauthInit = function(req, res) {
    var url = client.getConnectUrl();

    res.writeHead(301, url);
    res.end();
};

// Get OAuth Token
// callback function from the connect url
var oauthHandleToken = function(req, res) {
    var query = req.query;

    client.getToken(query.code, function(err, tokens) {
        if (err)
            callback(err);
        else {
            callback(null, tokens);
        }
    });
};

//  By default upon authentication, the access_token is saved, but you can add it like
client.setToken(access_token);

Get User

After authenticating you can easily get the user object

var user_id;

var getUser = client.getMe(function(err, user) {
    user_id = user.id;

    //  Then you can set it to the API like
    client.setUser(user_id);
});


Initiate Client with OAuth Token

//  You can pass in credentials with either or both values, but 
//  you will need the access_token make authenticated requests
var credentials = {
    access_token: "{ACCESS_TOKEN}",
    user_id: "{USER_ID}"
};

client = new SoundCloudAPI(client_id, client_secret, redirect_uri, credentials);

Get users favorite tracks

client.get('/users/273281/favorites', function (data) {
    console.log(data.title);
});

Or if the user id is set, it will automatically parse {id} into your user_id

client.get('/users/{id}/favorites', function (data) {
    console.log(data.title);
});

Support

To Install

NPM

  • Run: npm install soundcloud-node --save

Github

Extra

Forked off of soundclouder.js Build Status

soundcloud-node's People

Contributors

oknoah avatar

Watchers

 avatar  avatar

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.