Skip to main content

Quest System

Methods for working with the quest system.

getQuest

Gets details for a specific quest.
async getQuest(questId: number): Promise<Quest>

Parameters

NameTypeDescription
questIdnumberID of the quest

Returns

Quest object containing quest details.

Example

const quest = await sdk.getQuest(1);
console.log('Quest name:', quest.name);
console.log('Target referrals:', quest.targetReferrals);

getUserQuestProgress

Gets a user’s progress on a specific quest.
async getUserQuestProgress(userAddress: Address, questId: number): Promise<UserQuestProgress>

Parameters

NameTypeDescription
userAddressAddressAddress of the user
questIdnumberID of the quest

Returns

UserQuestProgress object containing progress information.

Example

const progress = await sdk.getUserQuestProgress('0x1234...', 1);
console.log('Progress:', progress.progress);
console.log('Completed:', progress.completed);

claimQuestReward

Claims the reward for a completed quest.
async claimQuestReward(questId: number): Promise<Hex>

Parameters

NameTypeDescription
questIdnumberID of the quest

Returns

Hex - Transaction hash of the reward claim.

Example

const progress = await sdk.getUserQuestProgress('0x1234...', 1);
if (progress.completed) {
  const txHash = await sdk.claimQuestReward(1);
  console.log('Claimed quest reward:', txHash);
}

listActiveQuests

Lists all active quests.
async listActiveQuests(): Promise<Quest[]>

Returns

Array of Quest objects.

Example

const quests = await sdk.listActiveQuests();
console.log('Active quests:', quests.length);

getQuestCount

Gets the total number of quests.
async getQuestCount(): Promise<number>

Returns

number - Total quest count.

Example

const count = await sdk.getQuestCount();
console.log('Total quests:', count);