1.0.9 • Published 3 years ago
rss-generator-api v1.0.9
RSS.app Node.js Library
The rss-generator-api library provides convenient access to the RSS.app API from applications written in JavaScript.
Documentation
See the API docs for Node.js.
Live Demo
A minimal demo project can be found in examples directory.
Online demo is also available!
Requirements
Node 8 or higher.
Installation
Install the package with:
npm install rss-generator-api --save
# or
yarn add rss-generator-apiUsage
The package needs to be configured with your account's api and secret key, which is available in the RSS.app Dashboard. Require it with the key's value:
const RssApp = require('rss-generator-api');
const rssApp = new RssApp({ apiKey:  'c_...', apiSecret:  's_...' });
rssApp.feed
  .create({ url:  'https://bbc.com' })
  .then((feed) => {
     console.log('Success', feed);
  })
  .catch((err) => {
    console.log('Error', err);
  });Or using ES modules and async/await:
import RssApp from 'rss-generator-api';
const rssApp = new RssApp({ apiKey: 'c_...', apiSecret: 's_...' });
(async () => {
  const feed = await rssApp.feed.create({ url: 'https://bbc.com' });
  console.log(feed.id);
})();Usage with TypeScript
RSS.app maintains types.
import RssApp, { RssAppFeed } from 'rss-generator-api';
const rssApp = new RssApp({ apiKey: 'c_...', apiSecret: 's_...' });
const createFeed = async () => {
  const feed: RssAppFeed = await rssApp.feed.create({ url: 'https://bbc.com' });
  console.log(feed.id);
};
createFeed();Using Promises
Every method returns a chainable promise which can be used instead of a regular callback:
// Create a new feed and then list all feeds in account:
rssApp.feed
  .create({
    url: 'https://bbc.com',
  })
  .then((feed) => {
    return rssApp.feed
      .list({
        limit: 10,
        offset: 0,
      })
      .then((res) => {
        console.log(res.data);
      })
      .catch((err) => {
        // Deal with an error
      });
  });More Information
License
Rss Generator API is freely distributable under the terms of the MIT license.