@scrimmage/rewards
TypeScript icon, indicating that this package has built-in type declarations

1.3.0 • Public • Published

Rewards.ts

The low-code loyalty program maker.

This library is a part of the Scrimmage Rewards Program that is providing a solution for loyalty programs and rewards.

Tutorial can be found at Scrimmage Rewards Tutorial.

Installation

  1. Install the library
    npm install @scrimmage/rewards
    or
    yarn add @scrimmage/rewards

Usage on the backend

  1. Import the library in JavaScript

    const Scrimmage = require('@scrimmage/rewards').default;

    or in TypeScript

    import Scrimmage from '@scrimmage/rewards';
  2. Initialize the library

    Scrimmage.initRewarder({
      apiServerEndpoint: '<your api server endpoint>',
      privateKey: '<your private key>',
      namespace: '<environment, e.g. staging or production>',   
    });
  3. Use the library

    await Scrimmage.reward.trackRewardable(
      'unique-user-id',
      'Data Type Name',
      {
        'custom-property': 'custom-value',
        'custom-property-2': {
           'custom-property-2-1': 'custom-value-2-1',
        },
      },
    );

    For one-time events you can use trackRewardableOnce method. Make sure to use unique event id.

     await Scrimmage.reward.trackRewardableOnce(
       'unique-user-id',
       'Data Type Name',
       'unique-event-id',
       {
          'custom-property': 'custom-value',
          'custom-property-2': {
              'custom-property-2-1': 'custom-value-2-1',
          },
       },
     );
  4. Get user token

    const token = await Scrimmage.user.getUserToken('unique-user-id');

    or

    const token = await Scrimmage.user.getUserToken('unique-user-id', {
       tags: ['tag1', 'tag2'],
       properties: {
          'custom-property': 'custom-value',
          'custom-property-2': 12345,
       },
    });

    Use this token to identify the user on the frontend. Make sure to deliver the token to the frontend securely.

Usage on the frontend

Package Sidebar

Install

npm i @scrimmage/rewards

Weekly Downloads

143

Version

1.3.0

License

MIT

Unpacked Size

55.1 kB

Total Files

40

Last publish

Collaborators

  • vpolishchuk
  • s.konovalenko
  • yevgenius