Skip to main content

State

AirdropInfo

message AirdropInfo {
google.protobuf.Timestamp snapshot_timestamp = 1;
google.protobuf.Timestamp airdrop_start_timestamp = 2;
google.protobuf.Timestamp airdrop_end_timestamp = 3;
string airdrop_denom = 4;
int32 quests_count = 5;
string controller_address = 6;
string maximum_token_alloc_per_user = 7;
}

AirdropInfo stores metadata related to airdrop. This includes airdrop start and end times, maximum acceptable quantity, etc.

UserState

message UserState {
string recipient = 1;
string total_amount = 2;
map<int32, QuestState> quest_states = 3;
}

UserState indicates the status of the user performing the quest.

QuestState

message QuestState {
QuestStateType state = 1;
google.protobuf.Timestamp achieved_at = 2;
google.protobuf.Timestamp claimed_at = 3;
}

QuestState indicates the status of the quest that users perform. The status of each quest is defined by the QuestStateType.

QuestStateType

enum QuestStateType {
QUEST_STATE_NOT_STARTED = 0;
QUEST_STATE_CLAIMABLE = 1;
QUEST_STATE_CLAIMED = 2;
}

QuestStateType is a variable that represents the user's quest performance status.

QUEST_STATE_NOT_STARTED : The quest has not been started.

QUEST_STATE_CLAIMABLE : You can perform a quest and receive an airdrop.

QUEST_STATE_CLAIMED : We have completed the quest and received the airdrop.