@dadi/api-wrapper-core

    4.2.2 • Public • Published

    DADI API wrapper (core)

    Core high-level methods for interacting with DADI API

    npm (scoped) Build Status JavaScript Style Guide

    Overview

    DADI API is a high performance RESTful API layer designed in support of API-first development and the principle of COPE.

    This package exposes a set of chainable methods that allow developers to compose complex read and write operations using a simplistic and natural syntax, providing a high-level abstraction of the REST architectural style.

    It can be used as a standalone module to generate request objects containing information about the HTTP verb, URL and payload, or used in conjunction with DADI API Wrapper to provide a full-featured API consumer, capable of handling authentication and the HTTP communication.

    Getting started

    1. Install the @dadi/api-wrapper-core module:

      npm install @dadi/api-wrapper-core --save
    2. Add the library and configure the API settings:

      const APIWrapper = require('@dadi/api-wrapper-core')
       
      const api = new APIWrapper({
        uri: 'http://api.example.com',
        port: 80,
        property: 'test'
      })
    3. Make a query:

      // Example: getting all documents where `name` contains "john" and age is greater than 18
      const requestObject = api
        .in('users')
        .whereFieldContains('name', 'john')
        .whereFieldIsGreaterThan('age', 18)
        .find()

    Methods

    See the documentation on the main package.

    Defining a callback

    By default, calling a terminator will return a request object, which is a plain JavaScript object formed of method, uri and, optionally, body. Alternatively, you can choose to specify what exactly terminators will return, by defining a callback that will be executed before they return. This callback will receive the request object as an argument, giving you the option to modify it or wrap it with something else.

    A callback is defined by setting a callback property on the options object used to initialise API wrapper.

    const APIWrapper = require('@dadi/api-wrapper-core')
     
    const api = new APIWrapper({
      uri: 'http://api.example.com',
      port: 80,
      property: 'test',
      callback: function(requestObject) {
        // This callback will return a JSON-stringified version
        // of the request object.
        return JSON.stringify(requestObject)
      }
    })

    Keywords

    none

    Install

    npm i @dadi/api-wrapper-core

    DownloadsWeekly Downloads

    19

    Version

    4.2.2

    License

    GPL

    Unpacked Size

    25.4 kB

    Total Files

    8

    Last publish

    Collaborators

    • abovedave
    • adamkdean
    • arthurmingard
    • eduardoboucas
    • jeanluc.thiebaut
    • jimlambie
    • josephdenne