patreon.js
TypeScript icon, indicating that this package has built-in type declarations

0.2.0 • Public • Published

patreon.js

patreon.js is an NPM JS package that makes interacting with the Patreon ReST API as easy as pie.

Features

Getting started

First of all, install the patreon.js package via NPM:

npm install patreon.js

If you already have a an access token for the Patreon API, you will most likely want to start with creating a PatreonAPI instance like this:

const Patreon = require('patreon.js');

 // replace xxx with your access token or load it from a configuration
const api = new Patreon.PatreonAPI('xxx');

You can then use the PatreonAPI instance to make requests to the Patreon API.

For example, you can fetch the current user and print his name to the console like this:

api.getCurrentUser()
  .then(user => {
    console.log(user.firstName + ' ' + user.lastName);
  })
  .catch(console.error);

Some data models offer further requests to simplify request chaining. For example, you might want to print all pledge id's of the user's first Campaign to the console:

api.getCurrentUserCampaigns()
  .then(campaigns => campaigns[0].getAllPledges()) // request-chain
  .then(pledges => {
    let pledgeIds = pledges.map(pledge => pledge.patron.id);
    console.log(pledgeIds);
  })
  .catch(console.error);

Some requests like the PatreonAPI.getCampaignPledges(campaignId) are paginated. That means that you will get the data out of it in bunches:

api.getCampaignPledges('campaignId')
  .then(page => {
    console.log(page.contents); // page.contents contains an array of pledges
    if (page.hasNext()) { // check whether there is a next page
      page.getNext() // fetch the next page
        .then(nextPage => {
          // do something with the second page...
        })
        .catch(console.error);
    }
  })
  .catch(console.error);

Useful links

License

This project is released under the MIT license. A copy of the license is included in the LICENSE file in this package.

The GitLab project avatar is an Icon image by Pixel Perfect which is licensed with the Flaticon Basic License.

Readme

Keywords

Package Sidebar

Install

npm i patreon.js

Weekly Downloads

1

Version

0.2.0

License

MIT

Unpacked Size

74.2 kB

Total Files

31

Last publish

Collaborators

  • traxam