@rexlabs/wings-node-api-client

1.0.2 • Public • Published

💸 Wings Node Api Client

Very basic API client for node environments to deal with the wings API. It is build on top of the node-fetch library.

Usage

const { create } = require('@rexlabs/wings-node-api-client')

const api = create({ baseUrl: 'http://wings.test/api/rex/' })
api.setAuthToken('xxx');

api('Listings::search', args).then(res => {
  console.log({ res })
});

The client instance (api in the example above) is an executable function in itself, which will trigger a post request to the given path. The second argument is an optional data object that will be used for the body, the third argument can be any options that will override the default options passed into the create call.

The client also comes with the following extra methods:

// Set a specific header field
api.setHeader(headerKey, headerValue);

// Shortcut for `.setHeader('Authorization', 'Bearer ...')`
api.setAuthToken(token);

// Set a specific option (after creating the instance, but storing it on the instance)
api.setOption(optionKey, optionValue);

// Set multiple options
api.setOptions({ optionKey: optionValue });

// Get all records for a specific service
// It will fetch pages of 100 items (in parallel) until all are loaded!
api.searchAll('Listings', args).then(res => {
  console.log({ res })
});

Development

Install dependencies

$ yarn

Available Commands

$ yarn test               # runs all units tests
$ yarn test:watch         # runs unit tests when files change

Legal

Copyright (c) 2018 Rex Software All Rights Reserved.

Readme

Keywords

Package Sidebar

Install

npm i @rexlabs/wings-node-api-client

Weekly Downloads

1

Version

1.0.2

License

UNLICENSED

Unpacked Size

6.87 kB

Total Files

3

Last publish

Collaborators

  • robertoharrisonrex
  • sumalicarter
  • david.burns.rex
  • michaelestevesrex
  • markholmesrex
  • endre.bernhardt
  • itpekov
  • iamtommcc
  • ralphpam
  • scottatkinsonrex
  • asvny
  • swarren1
  • rexlabs-sa
  • theprivateer
  • laura-kate
  • cpave3
  • shokinke
  • jhmcbride
  • ababkov
  • colemanator
  • adsy
  • dineshrex