Package Exports
- points-client-sdk
- points-client-sdk/dist/index.cjs.js
- points-client-sdk/dist/index.esm.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (points-client-sdk) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
PointsClient SDK
The PointsClient SDK provides a simple interface to interact with the points distribution system for your campaigns. This SDK allows you to distribute points to user addresses, and retrieve points information.
Table of Contents
Installation
Install the SDK using npm:
npm install points-client-sdk
Usage
Get API key
You can get your API key by calling the Absinthe API(/auth/api-key) with your campaign name and campaign ID.
Initialization
To use the PointsClient SDK, you need to initialize it with your configuration, including the API key and campaign ID.
import { PointsClient } from 'points-client-sdk';
const pointsClient = new PointsClient({
apiKey: 'your-api-key',
campaignId: 'your-campaign-id',
});
Distribute Points
Distribute points to a specific address for a given event.
pointsClient.distribute('eventName', {
address: '0x1234567890abcdef1234567890abcdef12345678',
points: 100,
})
.then(() => {
console.log('Points distributed successfully');
})
.catch((error) => {
console.error('Error distributing points:', error);
});
Get Points
Retrieve points for a specific address, optionally filtered by event name.
pointsClient.getPoints('0x1234567890abcdef1234567890abcdef12345678', 'eventName')
.then((points) => {
console.log('Points:', points);
})
.catch((error) => {
console.error('Error getting points:', error);
});
Types
PointsClientConfig
Configuration object for initializing the PointsClient.
interface PointsClientConfig {
apiKey: string;
campaignId: string;
}
PointsResponse
Response format for points data.
interface PointsResponse {
event_name: string;
address: string;
points: number;
timestamp: string;
}