@zappar/zw-api-client
TypeScript icon, indicating that this package has built-in type declarations

2.1.2 • Public • Published

ZapWorks API JS client

This client wraps AppAuth, provides a clean way of connecting to the ZapWorks API and type definitions for all data sent back.

By default an OAuth2 Authorization Code Grant with PKCE will be used.

Examples of AppAuth usage:

https://github.com/openid/AppAuth-JS/blob/master/src/app/index.ts https://github.com/openid/AppAuth-JS/blob/master/src/node_app/index.ts

Client usage on a browser (front-end)

const client = new zw.Client({
  clientId: 'abc123',
  redirectURI: 'https://example.com/oauth/callback/',
  env: zw.Environment.Dev,
})

client.checkForAuthorizationResponse().then(async () => {
  const qs = new URLSearchParams(location.search)
  if (qs.get('error')) return // Display auth error to user

  if (qs.get('code')) { // check if we got a code on the callback request
    await client.makeTokenRequest() // request an access token
  }

  // from here the client has an access token to call the API
  client.getUser().then(console.log)
})

Client usage in NodeJS

const client = new zw.NodeClient({
  clientId: 'abc123',
  env: zw.Environment.Dev
})

await client.makeAuthorizationRequest()
console.log(await client.getUser())

/@zappar/zw-api-client/

    Package Sidebar

    Install

    npm i @zappar/zw-api-client

    Weekly Downloads

    27

    Version

    2.1.2

    License

    Proprietary

    Unpacked Size

    101 kB

    Total Files

    78

    Last publish

    Collaborators

    • david.szucs
    • seenevz
    • cgauld
    • deim
    • simon_zappar
    • jordan-zappar
    • george.martin
    • squeral
    • francesca.may
    • justin_zappar