Helper functions for Blink Mobiles single identity

npm install @blinkmobile/bm-identity@5.1.0-beta.1


bm-identity.js npm AppVeyor Status Travis CI Status Greenkeeper badge

Provides easy management of authenication for our CLI via a single identity.

Getting Started

npm install @blinkmobile/bm-identity --save
const BlinkMobileIdentity = require('@blinkmobile/bm-identity')
const tenant = 'ONEBLINK' || 'CIVICPLUS'
const blinkMobileIdentity = new BlinkMobileIdentity(tenant)



If no LoginOptions are passed, a browser based login process will start. This is how users can login using a social account e.g. Google.

login (options: LoginOptions) => Promise{String}
interface LoginOptions {
  username?: String | Boolean; // Can also pass true, and username will be prompted for
  password?: String; // Will be prompted for password if username is truthy
  storeJwt?: Boolean; // Set to true to store jwt on local file system, defaults to false
  refreshToken?: Boolean; // Set to true will request a refresh token as well as an access token
blinkMobileIdentity.login().then(jwt => {
  // Use jwt access token.

storeJwt Option


logout () => Promise

Get Access Token

To create an AccessToken using BlinkM Deployment Keys or retrieve the AccessToken stored after a successful login:

Using Deployment Keys

If the following environment variables are set:


These will be used to create an AccessToken

getAccessToken () => Promise{string}
blinkMobileIdentity.getAccessToken().then(jwt => {
  // Use access token

Get Access Token Payload

Helper function to get the payload for a JWT

getPayload () => Promise{Object}
blinkMobileIdentity.getPayload().then(payload => {
  // Use payload