npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

spw-perxtech-api-client

v2.2.0

Published

PerxTech API client written in TypeScript

Downloads

210

Readme

PerxTech API Client

Release Test

The Perx's API client implemented for node.js using TypeScript.

Install:

npm install spw-perxtech-api-client

or 

yarn add spw-perxtech-api-client

Usage

import {
  PerxService,
  IPerxService,
  TokenResponse,
  PerxReward,
} from 'spw-perxtech-api-client'


const perxClient: IPerxService = new PerxService({
  baseURL: '<your perx endpoint>',
  clientId: '<your perx clientId>',
  clientSecret: '<your perx clientSecret>',
  tokenDurationInSeconds: 3600,
})

// Issue user's token with specific userId
const response: TokenResponse = await perxClient.getUserToken(userId)
const accessToken = response.accessToken

// List perx's rewards by given user.
const rewards: PerxReward[] = await perxClient.getRewards(accessToken, {})

To Run Testcases

Testcases are designed to run against the actual Perx's server. However all the environment and configurable parameters are to be injected via dotenv.

To do this create your own .env in root folder of this project (the file is git ignored) Then provide following fields to make our test script run against your perx setups.

TEST_PERX_API_URL=https://api.perxtech.io/
TEST_PERX_CLIENT_ID=SOME_RANDOM_PERX_CLIENT_ID
TEST_PERX_CLIENT_SECRET=SOME_RANDOM_PERX_CLIENT_SECRET

# Perx's target account to run against
TEST_PERX_USER_IDENTIFIER=66666   # Your focal customer's 'identifier' (NOT Perx's Id)
TEST_PERX_USER_ID=253             # Your focal customer's 'id' (Yes this one is Perx's Id)

# Perx's target reward id to issue as voucher, reserve the voucher and commit the voucher.
TEST_PERX_REWARD_ID=111

# Perx's Loyalty program that the given perx user enrolled in
TEST_PERX_LOYALTY_PROGRAM_ID=2

NOTE: As the test run against live perx's server. Please setup your data so that the test can run reapeatly. e.g. User should have already enrolled in the loyalty program configured. And it should have large amount of points. While reward should be repeatly claimed.

Once done you can simply run the test via our jest setup.

npm run test

Contribution

This client is written for certain project therefore not all APIs are implemented. If you have your needs and need to pass in ones. PR are more than welcomes.