points-client-sdk
v1.0.7
Published
Typescript SDK that allows clients to issue points for their users. This gives projects the ultimate flexibility to issue points for off-chain actions.
Downloads
21
Maintainers
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;
}