tbook SDK
tbook
Prerequisites
Please make sure that you have registered a developer account and have created a project.
Please ensure that you have applied for an Auth Token to make SDK calls.
install
npm install rewardoor-sdk --save
initialize
const Rewardoor = require('rewardoor-sdk');
const client = new Rewardoor({ projectId: 'Your Project ID', token: 'Your Auth Token' });
API call
Type definition
type Project = {
id: string;
name: string;
description: string;
createdAt: string;
avatar: string;
admin: string;
}
type CampaignCreateReqest = {
name: string;
description: string;
avatar: string;
credentials: string[];
nft: string;
points: number;
}
type Campaign = {
id: string;
projectId: string;
name: string;
description: string;
avatar: string;
credentials: string[];
nft: string;
points: number;
createdAt: string;
}
type credential = {
id: string;
name: string;
projectId: string;
coverUrl: string;
creator: string;
createdAt: string;
}
type NFT = {
id: string;
name: string;
symbol: string;
projectId: string;
coverUrl: string;
count: number;
chainId: number;
creator: string;
createdAt: string;
}
type Action = {
action: string;
actionTime: number;
}
type AttendeeInfo = {
address: string;
credential: string;
point: number;
action: Action;
}
type OfferCampaignsRequest = {
campaignId: number;
attendees: AttendeeInfo[];
}
get project info
const project: Project = client.getProjectInfo();
create campaign
const campaign: Campaign = client.createCampaign(camapignCreateRequest);
get campaign info
const campaign: Campaign = client.getCampaignInfo(campaignId: string);
create NFT
const nft: NFT = client.createNFT(name: string, symbol: string, coverUrl: string, count: number, chainId: number);
create Credential
const credential: Credential = client.createCredential(name: string, coverUrl: string);
reporting activity participants
client.offerCampaigns(reqeust: OfferCampaignsRequest);
// example:
client.offerCampaigns({
campaignId: 10087,
attendees: [
{address: '0x5fbdb2315678afecb367f032d93f642f64180aa3', credential: '3869', point: 10, action: {action: 'LIKE', actionTime: 1625760000}},
{address: '0xa0Ee7A142d267C1f36714E4a8F75612F20a79720', credential: '4723', point: 20, action: {action: 'MALL_PURCHASE', actionTime: 1625760000}},
// ...
]
})
get participants info
const attendees: Attendee[] = client.fetchAttendeeRewards({campaignId: 10087});
Last updated