nomadeducation

0.7.2 • Public • Published

Web/Node.js SDK

Build Status Coverage Status Known Vulnerabilities

This package is used to call our latest API.

Installation

Execute the following in your favorite terminal:

# yarn 
yarn add nomadeducation
# npm 
npm install --save nomadeducation

Usage

The SDK is exporting its object Nomad using the UMD format. In the browser context, it'll therefore be attached to the window object.

Example

const Nomad = require("nomadeducation");
// even though this SDK is primarily targeting the browser
// you can also use it on Node.js by using the following line instead
// const Nomad = require("nomadeducation/dist/node");
 
const client = new Nomad({
    // the client uses our latest endpoint by default
    base_url: "https://api.nomadeducation.com/v2",
    // you can (optionally) use your own API key.
    // Note that you won't have to log into our system then
    api_key: "d6921bc91cd2470e6a265974d4d9c47a",
    // sometimes your request can take more time than estimated
    disable_timeout: true,
    // you can set your own error handler that'll be triggered with the argument
    error_handler: (err) => console.log(err.code, err.message, err.details),
});
 
async function publicMethods () {
    // if you don't use your API key, you can still login using your credentials
    // Beware that this must be the first action before calling any other methods
    // you can extend your session up to 5 days if you pass `true` as the third parameter
    await client.login("myUsername", "myPassword", extendedSession = true);
 
    // now you can consume the API
    // the library will throw errors if you don't have enough permissions
 
    // once you've finished, you can explicitely logged out
    const isLoggedOut = await client.logout();
}
 
// the library also exposes utility functions:
// - determine the version used
const version = Nomad.version();
// - monitor the API status
const status = Nomad.health();

Reference

Check the documentation to get the entire reference.

Testing

Prerequisites: you'll have to add your credentials (Travis CI will use the "test" account):

echo '{"username": "test", "password": "TEST_PW"}' > test/account.json

Do not forget to launch the Kane API locally before testing!

Then execute the following commands to test the SDK:

yarn install --frozen-lockfile
yarn test

This will launch tests directly on the production API. If you want to launch your tests locally, you can use:

yarn test:dev

You can also invoke the debugger. It'll wait on the first line while you're not attached:

# you can debug either using the production env... 
yarn test:debug
# ...or locally! 
yarn test:dev:debug

Linting

Made using eslint. To enforce rules to be applied, use yarn lint:fix.

Readme

Keywords

Package Sidebar

Install

npm i nomadeducation

Weekly Downloads

6

Version

0.7.2

License

MIT

Unpacked Size

472 kB

Total Files

7

Last publish

Collaborators

  • nomad-education-developer