user-api-client

0.5.2 • Public • Published

user-api-client

Docs

This is a library that makes it easier for servers that are talking to the Tidepool User API.

Setup

require('user-api-client')(config, hostGetter, request);

  • config -- an object containing configuration parameters
  • hostGetter -- an object with a get() method. The get() method should return an array of objects that can be passed into url.format() to produce a valid url to talk to.
  • httpClient -- (optional) -- the result of require('./httpClient.js')(config). This is primarily exposed to allow for mocking in tests. If not supplied a new "correct" one will be created.
  • members -- client and middleware.

Client

login

  • login (username, password, cb) Frontend to the API call to log in a user
    • username -- string
    • password -- password
    • cb (err, response)
      • err -- null if no error, else an error object
      • response -- result from the /user/login api call

getAnonymousPair

  • getAnonymousPair (userid, cb) Frontend to the API call to retrieve a pair from the user object without storing it
    • userid -- Tidepool-assigned userid
    • cb (err, response)
      • err -- null if no error, else an error object
      • response -- result from the /user/private api call

checkToken

  • checkToken (token, cb) Frontend to the API call to check the validity of a server or user token
    • token -- the server token to be checked
    • cb (err, response)
      • err -- null if no error, else an object
      • response -- result from the /user/token api call

createUser

  • createUser (userObj, cb) Frontend to the API call to create a user
    • userObj -- object containing username, emails and password fields at minimum
    • cb (err, response)
      • err -- null if no error, else an error object
      • response -- result from the /user/user api call

withServerToken

  • withServerToken (cb) Calls CB with a valid server token, iff one can be retrieved
    • cb (err, token)
      • err -- always null if callback is called at all
      • token -- a valid server token

Middleware

expressify

  • expressify (middlewareFn) Converts restify middleware into express middleware.
    • middlewareFn -- the restify middleware Returns: middleware that works with express

checkToken

  • checkToken (client) Middleware to process the session token -- expects a token in a request header, processes it, and returns information about the token in the _tokendata variable on the request.
    • client -- client to use when talking to the user-api

Readme

Keywords

Package Sidebar

Install

npm i user-api-client

Weekly Downloads

7

Version

0.5.2

License

BSD-2-Clause

Unpacked Size

28 kB

Total Files

9

Last publish

Collaborators

  • tidepool-robot