{"openapi":"3.1.0","info":{"title":"raidenx-api-referral","description":"","contact":{"name":"sotalabs","email":"admin@sotalabs.io"},"license":{"name":""},"version":"0.1.13"},"paths":{"/api/v1/daily-progresses":{"get":{"tags":["daily-progresses"],"operationId":"get_daily_progresses","parameters":[{"name":"fromTime","in":"query","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"toTime","in":"query","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DailyProgressesResponseDto"}}}},"401":{"description":"Unauthorized"}},"security":[{"bearer_auth":[]}]}},"/api/v1/quests":{"get":{"tags":["quests"],"operationId":"get_quests","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":["integer","null"],"format":"int32","minimum":0}},{"name":"limit","in":"query","required":false,"schema":{"type":["integer","null"],"format":"int32","minimum":0}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginationResponseDto_QuestResponseDto"}}}}}}},"/api/v1/quests/connect-social":{"post":{"tags":["quests"],"operationId":"resolve_connect_social_quest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolveConnectSocialQuestRequestDto"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserQuestResponseDto"}}}},"401":{"description":"Unauthorized"}},"security":[{"bearer_auth":[]}]}},"/api/v1/quests/first-time/resolve/{slug}":{"post":{"tags":["quests"],"operationId":"resolve_first_time_quest","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserQuestResponseDto"}}}},"401":{"description":"Unauthorized"}},"security":[{"bearer_auth":[]}]}},"/api/v1/quests/resolve/{quest_id_or_slug}":{"post":{"tags":["quests"],"operationId":"resolve_quest","parameters":[{"name":"quest_id_or_slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserQuestResponseDto"}}}},"401":{"description":"Unauthorized"}},"security":[{"bearer_auth":[]}]}},"/api/v1/tiers/metadata":{"get":{"tags":["tiers"],"operationId":"get_tiers_metadata","responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TierMetadata"}}}}}}}},"/api/v1/tiers/{tier}/metadata":{"get":{"tags":["tiers"],"operationId":"get_tier_metadata","parameters":[{"name":"tier","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ETier"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TierMetadata"}}}}}}},"/api/v1/users/me":{"get":{"tags":["users"],"operationId":"get_my_info","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyInfoResponseDto"}}}},"401":{"description":"Unauthorized"}},"security":[{"bearer_auth":[]}]}},"/api/v1/users/my-quests":{"get":{"tags":["users"],"operationId":"get_my_quests","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyQuestsResponseDto"}}}},"401":{"description":"Unauthorized"}},"security":[{"bearer_auth":[]}]}},"/api/v1/users/my-referrals":{"get":{"tags":["users"],"operationId":"get_list_referrals","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":["integer","null"],"format":"int32","minimum":0}},{"name":"limit","in":"query","required":false,"schema":{"type":["integer","null"],"format":"int32","minimum":0}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReferralResponseDto"}}}},"401":{"description":"Unauthorized"}},"security":[{"bearer_auth":[]}]}},"/api/v1/users/{user_id}":{"get":{"tags":["users"],"operationId":"get_user_info","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserInfoResponseDto"}}}}}}},"/health":{"get":{"tags":["health"],"operationId":"health_check","responses":{"200":{"description":"Health check successful"},"500":{"description":"Health check failed"}}}}},"components":{"schemas":{"DailyProgressesResponseDto":{"type":"object","required":["currentStreak","dailyProgresses"],"properties":{"currentStreak":{"type":"integer","format":"int64","minimum":0},"dailyProgresses":{"type":"array","items":{"$ref":"#/components/schemas/PublicDailyProgress"}}}},"EChallenge":{"type":"string","enum":["newbie_journey","trade_volume","complete_daily","volume_milestone","transaction_count","friend_refer","referral_trading_volume","snipe","copy_trade","limit_order"]},"EDailyProgressStatus":{"type":"string","enum":["completed","pending","missed"]},"EPeriodType":{"type":"string","enum":["recurring","first_time","daily","weekly","life"]},"EProgressMetric":{"type":"string","enum":["trading_volume","transactions","daily_challenges","tokens_followed","referral_friend","referral_trading_volume","snipe_tokens","snipe_volume","copy_trade_trades","copy_trade_volume","limit_orders"]},"EQuestType":{"type":"string","enum":["social","trading_volume","referral_friend","referral_trading_volume","first_time"]},"ETier":{"type":"string","enum":["normal","vip1","vip2","vip3","vip4","vip5","vip6"]},"EUserQuestStatus":{"type":"string","enum":["in_progress","completed"]},"GetDailyProgressesRequestDto":{"type":"object","required":["fromTime","toTime"],"properties":{"fromTime":{"type":"integer","format":"int64"},"toTime":{"type":"integer","format":"int64"}}},"MyInfoResponseDto":{"type":"object","required":["userId","userName","currentXp","requiredXp","level","tier","tradingVolume30d","totalTxns","totalTradingVolume","totalReferrals","totalReferralTradingVolume","totalTokensSniped","totalSniperVolume","totalCopyTrades","totalCopyTradeVolume","totalLimitOrders","totalLimitOrderVolume"],"properties":{"ancestor":{"type":["string","null"]},"currentXp":{"type":"integer","format":"int64","minimum":0},"level":{"type":"integer","format":"int32","minimum":0},"nextTier":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/ETier"}]},"rank":{"type":["integer","null"],"format":"int64","minimum":0},"requiredXp":{"type":"integer","format":"int64","minimum":0},"tier":{"$ref":"#/components/schemas/ETier"},"totalCopyTradeVolume":{"type":"string"},"totalCopyTrades":{"type":"integer","format":"int64","minimum":0},"totalLimitOrderVolume":{"type":"string"},"totalLimitOrders":{"type":"integer","format":"int64","minimum":0},"totalReferralTradingVolume":{"type":"string"},"totalReferrals":{"type":"integer","format":"int64","minimum":0},"totalSniperVolume":{"type":"string"},"totalTokensSniped":{"type":"string"},"totalTradingVolume":{"type":"string"},"totalTxns":{"type":"integer","format":"int64","minimum":0},"tradingVolume30d":{"type":"string"},"userId":{"type":"string"},"userName":{"type":"string"}}},"MyQuestsResponseDto":{"type":"object","required":["userId","quests"],"properties":{"quests":{"type":"array","items":{"$ref":"#/components/schemas/PublicUserQuestInfo"}},"userId":{"type":"string"}}},"PaginationResponseDto_QuestResponseDto":{"type":"object","required":["totalDocs","totalPages","page","limit","docs"],"properties":{"docs":{"type":"array","items":{"type":"object","required":["id","periodType","name","type","slug","details","xpReward","isStreak","isRepeatable","isResolveable","challenge","targetValue"],"properties":{"badge":{"type":["string","null"]},"challenge":{"$ref":"#/components/schemas/EChallenge"},"details":{"type":"string"},"id":{"type":"string"},"imageUrl":{"type":["string","null"]},"isRepeatable":{"type":"boolean"},"isResolveable":{"type":"boolean"},"isStreak":{"type":"boolean"},"name":{"type":"string"},"periodType":{"$ref":"#/components/schemas/EPeriodType"},"progressMetric":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/EProgressMetric"}]},"slug":{"type":"string"},"targetValue":{"type":"string"},"type":{"$ref":"#/components/schemas/EQuestType"},"xpReward":{"type":"integer","format":"int64","minimum":0}}}},"limit":{"type":"integer","format":"int32","example":10,"minimum":0},"page":{"type":"integer","format":"int32","example":1,"minimum":0},"totalDocs":{"type":"integer","format":"int32","example":1,"minimum":0},"totalPages":{"type":"integer","format":"int32","example":1,"minimum":0}}},"PublicDailyProgress":{"type":"object","required":["id","userId","questId","periodTime","status","xpReward"],"properties":{"id":{"type":"string"},"periodTime":{"type":"integer","format":"int64","minimum":0},"questId":{"type":"string"},"status":{"$ref":"#/components/schemas/EDailyProgressStatus"},"userId":{"type":"string"},"xpReward":{"type":"integer","format":"int64","minimum":0}}},"PublicUserQuestInfo":{"type":"object","required":["questId","numericalOrder","periodType","name","type","slug","details","xpReward","isStreak","isRepeatable","isResolveable","challenge","targetValue","periodStart","periodEnd","progressValue","status","xpEarned"],"properties":{"badge":{"type":["string","null"]},"challenge":{"$ref":"#/components/schemas/EChallenge"},"completedAt":{"type":["integer","null"],"format":"int64"},"details":{"type":"string"},"imageUrl":{"type":["string","null"]},"isRepeatable":{"type":"boolean"},"isResolveable":{"type":"boolean"},"isStreak":{"type":"boolean"},"name":{"type":"string"},"numericalOrder":{"type":"integer","format":"int64","minimum":0},"periodEnd":{"type":"integer","format":"int64"},"periodStart":{"type":"integer","format":"int64"},"periodType":{"$ref":"#/components/schemas/EPeriodType"},"progressMetric":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/EProgressMetric"}]},"progressValue":{"type":"string"},"questId":{"type":"string"},"redirectUrl":{"type":["string","null"]},"slug":{"type":"string"},"status":{"$ref":"#/components/schemas/EUserQuestStatus"},"targetValue":{"type":"string"},"type":{"$ref":"#/components/schemas/EQuestType"},"xpEarned":{"type":"integer","format":"int64","minimum":0},"xpReward":{"type":"integer","format":"int64","minimum":0}}},"QuestResponseDto":{"type":"object","required":["id","periodType","name","type","slug","details","xpReward","isStreak","isRepeatable","isResolveable","challenge","targetValue"],"properties":{"badge":{"type":["string","null"]},"challenge":{"$ref":"#/components/schemas/EChallenge"},"details":{"type":"string"},"id":{"type":"string"},"imageUrl":{"type":["string","null"]},"isRepeatable":{"type":"boolean"},"isResolveable":{"type":"boolean"},"isStreak":{"type":"boolean"},"name":{"type":"string"},"periodType":{"$ref":"#/components/schemas/EPeriodType"},"progressMetric":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/EProgressMetric"}]},"slug":{"type":"string"},"targetValue":{"type":"string"},"type":{"$ref":"#/components/schemas/EQuestType"},"xpReward":{"type":"integer","format":"int64","minimum":0}}},"ReferralResponseDto":{"type":"object","required":["userId","userName","currentXp","tier","ancestor","totalTxns"],"properties":{"ancestor":{"type":"string"},"currentXp":{"type":"integer","format":"int64","minimum":0},"tier":{"$ref":"#/components/schemas/ETier"},"totalTxns":{"type":"integer","format":"int64","minimum":0},"userId":{"type":"string"},"userName":{"type":"string"}}},"ResolveConnectSocialQuestRequestDto":{"type":"object","required":["socialType"],"properties":{"socialType":{"$ref":"#/components/schemas/SocialType"}}},"SocialType":{"type":"string","enum":["email","telegram","twitter"]},"TierBenefit":{"type":"object","required":["fee_discount","commission"],"properties":{"commission":{"type":"number","format":"double"},"fee_discount":{"type":"number","format":"double"}}},"TierMetadata":{"type":"object","required":["tier","requirement","benefit"],"properties":{"benefit":{"$ref":"#/components/schemas/TierBenefit"},"requirement":{"$ref":"#/components/schemas/TierRequirement"},"tier":{"$ref":"#/components/schemas/ETier"}}},"TierRequirement":{"type":"object","required":["level","volume_30d"],"properties":{"level":{"type":"integer","format":"int32","minimum":0},"volume_30d":{"type":"number","format":"double"}}},"UserInfoResponseDto":{"type":"object","required":["userId","userName","level","tier","tradingVolume30d"],"properties":{"ancestor":{"type":["string","null"]},"level":{"type":"integer","format":"int32","minimum":0},"tier":{"$ref":"#/components/schemas/ETier"},"tradingVolume30d":{"type":"string"},"userId":{"type":"string"},"userName":{"type":"string"}}},"UserQuestResponseDto":{"type":"object","required":["id","userId","questId","periodStart","periodEnd","progressValue","status","xpEarned"],"properties":{"completedAt":{"type":["integer","null"],"format":"int64"},"id":{"type":"string"},"periodEnd":{"type":"integer","format":"int64"},"periodStart":{"type":"integer","format":"int64"},"progressValue":{"type":"string"},"questId":{"type":"string"},"status":{"$ref":"#/components/schemas/EUserQuestStatus"},"userId":{"type":"string"},"xpEarned":{"type":"integer","format":"int64","minimum":0}}}},"securitySchemes":{"basic_auth":{"type":"http","scheme":"basic"},"bearer_auth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}}}