tbook SDK

tbook

Prerequisites

  1. Please make sure that you have registered a developer account and have created a project.

  2. 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