---
openapi: 3.0.0
paths:
  "/v2/posts":
    get:
      operationId: PostsController_getPosts
      parameters: []
      responses:
        '200':
          description: ''
    post:
      operationId: PostsController_createPost
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreatePostDto"
      responses:
        '201':
          description: ''
  "/v2/posts/{id}":
    get:
      operationId: PostsController_getPostById
      parameters: []
      responses:
        '200':
          description: ''
    patch:
      operationId: PostsController_updatePost
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdatePostDto"
      responses:
        '200':
          description: ''
    put:
      operationId: PostsController_replacePost
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ReplacePostDto"
      responses:
        '200':
          description: ''
    delete:
      operationId: PostsController_deletePost
      parameters: []
      responses:
        '200':
          description: ''
  "/posts":
    get:
      operationId: PostsLegacyController_getPosts
      parameters: []
      responses:
        '200':
          description: ''
    post:
      operationId: PostsLegacyController_createPost
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreatePostLegacyDto"
      responses:
        '201':
          description: ''
  "/posts/instrument/fetch-future":
    get:
      operationId: PostsLegacyController_fetchFuture
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/instrument/fetch-option":
    get:
      operationId: PostsLegacyController_fetchOption
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/spot/active-pairs":
    get:
      operationId: PostsLegacyController_getActiveSpotPairs
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/spot/post-order":
    post:
      operationId: PostsLegacyController_postSpotOrder
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/createOrder"
      responses:
        '201':
          description: ''
  "/posts/future/post-order":
    post:
      operationId: PostsLegacyController_postFutureOrder
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/createOrder"
      responses:
        '201':
          description: ''
  "/posts/future/post-tp-sl-position":
    post:
      operationId: PostsLegacyController_postTpSlPos
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/createPosTpSLOrder"
      responses:
        '201':
          description: ''
  "/posts/position/symbol/{symbol}/margin":
    post:
      operationId: PostsLegacyController_updateMarginBySymbol
      parameters:
      - name: symbol
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/PositionMarginDto"
      responses:
        '201':
          description: ''
  "/posts/future/cancel-order":
    post:
      operationId: PostsLegacyController_cancelFutureOrder
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/cancelOrder"
      responses:
        '201':
          description: ''
  "/posts/future/modify-order":
    post:
      operationId: PostsLegacyController_modifyFutureOrder
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/modifyOrder"
      responses:
        '201':
          description: ''
  "/posts/future/modify-tpslorder":
    post:
      operationId: PostsLegacyController_modifyFutureOrderTPSL
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/modifyOrder"
      responses:
        '201':
          description: ''
  "/posts/future/order-status":
    get:
      operationId: PostsLegacyController_getFutureOrderStatus
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/option/post-order":
    post:
      operationId: PostsLegacyController_postOptionOrder
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/createOptionOrder"
      responses:
        '201':
          description: ''
  "/posts/future/get-position":
    get:
      operationId: PostsLegacyController_fetchPosition
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/spot/get-assets":
    get:
      operationId: PostsLegacyController_fetchAssets
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/future/get-trades":
    get:
      operationId: PostsLegacyController_fetchTrades
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/spot/trade-history":
    get:
      operationId: PostsLegacyController_getSpotTradeHistory
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/future/get-orders":
    get:
      operationId: PostsLegacyController_fetchOrders
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/future/debug-binance-orders":
    get:
      operationId: PostsLegacyController_debugBinanceOrder
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/instrument/all":
    get:
      operationId: PostsLegacyController_fetchFutureAll
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/order/all":
    get:
      operationId: PostsLegacyController_fetchOrderAll
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/instrument/fetch-future/{symbol}":
    get:
      operationId: PostsLegacyController_fetchDetailsFuture
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/{id}":
    get:
      operationId: PostsLegacyController_getPostById
      parameters: []
      responses:
        '200':
          description: ''
    put:
      operationId: PostsLegacyController_replacePost
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ReplacePostLegacyDto"
      responses:
        '200':
          description: ''
    patch:
      operationId: PostsLegacyController_updatePost
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdatePostLegacyDto"
      responses:
        '200':
          description: ''
    delete:
      operationId: PostsLegacyController_deletePost
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/import-csv":
    post:
      operationId: PostsLegacyController_importCsv
      parameters: []
      responses:
        '201':
          description: ''
  "/posts/checktestting/checker":
    get:
      operationId: PostsLegacyController_checkTesting
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/user/watchlist":
    get:
      operationId: PostsLegacyController_userWatchList
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/calc/calculate-liq":
    post:
      operationId: PostsLegacyController_calculateLiq
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/checkLiquidation"
      responses:
        '201':
          description: ''
  "/posts/calc/calprice":
    get:
      operationId: PostsLegacyController_excert
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/status/userorderstatus":
    get:
      operationId: PostsLegacyController_getExecutedOrderTradeStatus
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/index/create":
    get:
      operationId: PostsLegacyController_createIndex
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/index/get-indexes":
    get:
      operationId: PostsLegacyController_getIndexes
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/post-contact":
    post:
      operationId: PostsLegacyController_postContat
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/postContact"
      responses:
        '201':
          description: ''
  "/posts/fund/test-funding":
    get:
      operationId: PostsLegacyController_testFunding
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/future/openInterests":
    get:
      operationId: PostsLegacyController_getOpenInterests
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/tests/leverage":
    get:
      operationId: PostsLegacyController_testTest
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/buybit/orderstatus":
    get:
      operationId: PostsLegacyController_buybitordeExc
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/buybit/orderstatustest":
    get:
      operationId: PostsLegacyController_buybitorder
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/buybit/getbestbid":
    get:
      operationId: PostsLegacyController_getBestBid
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/buybit/testingcalculation":
    get:
      operationId: PostsLegacyController_getBestBidcls
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/buybit/getorderStatus":
    get:
      operationId: PostsLegacyController_getSingleFutureOrderStatusBuyBit
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/buybit/getorderStatussymbol":
    get:
      operationId: PostsLegacyController_getSingleFutureOrderStatusBuyBitsymbol
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/buybit/setamr":
    get:
      operationId: PostsLegacyController_setAMR
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/buybit/getPos":
    get:
      operationId: PostsLegacyController_getPos
      parameters: []
      responses:
        '200':
          description: ''
  "/posts/update-mark-price":
    post:
      operationId: PostsLegacyController_updateMarkPrice
      parameters: []
      responses:
        '201':
          description: ''
  "/posts/sip-index/snapshot/{symbol}":
    get:
      operationId: PostsLegacyController_getSipIndexSnapshot
      parameters:
      - name: symbol
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/posts/index/snapshot/{symbol}":
    get:
      operationId: PostsLegacyController_getIndexSnapshot
      parameters:
      - name: symbol
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/affiliate/register":
    post:
      operationId: AffiliateController_register
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateAffiliateDto"
      responses:
        '201':
          description: ''
  "/affiliate/admin-create":
    post:
      operationId: AffiliateController_adminCreate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateAffiliateDto"
      responses:
        '201':
          description: ''
  "/affiliate/admin-list":
    post:
      operationId: AffiliateController_adminList
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/AdminAffiliateListDto"
      responses:
        '201':
          description: ''
  "/affiliate/login":
    post:
      operationId: AffiliateController_login
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/LoginAffiliateDto"
      responses:
        '201':
          description: ''
  "/affiliate/refresh":
    post:
      operationId: AffiliateController_refresh
      parameters: []
      responses:
        '201':
          description: ''
  "/affiliate/profile":
    get:
      operationId: AffiliateController_getProfile
      parameters: []
      responses:
        '200':
          description: ''
    post:
      operationId: AffiliateController_updateProfile
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateAffiliateProfileDto"
      responses:
        '201':
          description: ''
  "/affiliate/created-affiliates":
    get:
      operationId: AffiliateController_getCreatedAffiliates
      parameters: []
      responses:
        '200':
          description: ''
  "/affiliate/referred-users":
    get:
      operationId: AffiliateController_getReferredUsers
      parameters: []
      responses:
        '200':
          description: ''
  "/affiliate/referred-users-detailed":
    get:
      operationId: AffiliateController_getReferredUsersDetailed
      parameters: []
      responses:
        '200':
          description: ''
  "/affiliate/referred-customers-report":
    get:
      operationId: AffiliateController_getReferredCustomersReport
      parameters:
      - name: page
        required: true
        in: query
        schema:
          type: string
      - name: limit
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/affiliate/revenue-report":
    get:
      operationId: AffiliateController_getRevenueReport
      parameters: []
      responses:
        '200':
          description: ''
  "/affiliate/dashboard":
    get:
      operationId: AffiliateController_getDashboard
      parameters: []
      responses:
        '200':
          description: ''
  "/affiliate/detail-report":
    get:
      operationId: AffiliateController_getDetailReport
      parameters:
      - name: page
        required: true
        in: query
        schema:
          type: string
      - name: limit
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/affiliate/phone/send-otp":
    post:
      operationId: AffiliateController_requestPhoneUpdate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/RequestPhoneOtpDto"
      responses:
        '201':
          description: ''
  "/affiliate/phone/validate-otp":
    post:
      operationId: AffiliateController_validatePhoneUpdate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/VerifyPhoneOtpDto"
      responses:
        '201':
          description: ''
  "/affiliate/email/send-otp":
    post:
      operationId: AffiliateController_requestEmailUpdate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/RequestEmailOtpDto"
      responses:
        '201':
          description: ''
  "/affiliate/email/validate-otp":
    post:
      operationId: AffiliateController_validateEmailUpdate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/VerifyEmailOtpDto"
      responses:
        '201':
          description: ''
  "/affiliate/switch-enviroment":
    post:
      operationId: AffiliateController_switchEnviroment
      parameters: []
      responses:
        '201':
          description: ''
  "/affiliate/create-demo-session":
    post:
      operationId: AffiliateController_createDemoSession
      parameters: []
      responses:
        '201':
          description: ''
  "/affiliate/replicate":
    post:
      operationId: AffiliateController_replicateAffiliate
      parameters: []
      responses:
        '201':
          description: ''
  "/affiliate/kyc/status":
    post:
      operationId: AffiliateKycController_getStatus
      parameters: []
      responses:
        '201':
          description: ''
  "/affiliate/kyc/phone/send-otp":
    post:
      operationId: AffiliateKycController_sendPhoneOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/PhoneOtp"
      responses:
        '201':
          description: ''
  "/affiliate/kyc/phone/validate-otp":
    post:
      operationId: AffiliateKycController_validatePhoneOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/validatePhoneOtp"
      responses:
        '201':
          description: ''
  "/affiliate/kyc/aadhar/send-otp":
    post:
      operationId: AffiliateKycController_sendAadhaarOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/AdhaarOtp"
      responses:
        '201':
          description: ''
  "/affiliate/kyc/aadhar/validate-otp":
    post:
      operationId: AffiliateKycController_validateAadhaarOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ValidateAdhaarOtp"
      responses:
        '201':
          description: ''
  "/affiliate/kyc/pan/validate":
    post:
      operationId: AffiliateKycController_validatePan
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ValidatePan"
      responses:
        '201':
          description: ''
  "/affiliate/kyc/selfie/upload":
    post:
      operationId: AffiliateKycController_uploadSelfie
      parameters: []
      responses:
        '201':
          description: ''
  "/affiliate/kyc/verify/verifywithdigilocker":
    get:
      operationId: AffiliateKycController_verifywithdigilocker
      parameters: []
      responses:
        '200':
          description: ''
  "/affiliate/kyc/verify/verifywithdigilocker/get-aadhaar":
    get:
      operationId: AffiliateKycController_verifywithdigilockerAdhar
      parameters: []
      responses:
        '200':
          description: ''
  "/affiliate/kyc/personal-info":
    post:
      operationId: AffiliateKycController_updatePersonalInfo
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateAffiliatePersonalInfoDto"
      responses:
        '201':
          description: ''
  "/affiliate/kyc/bank/validate":
    post:
      operationId: AffiliateKycController_validateBank
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/AffiliateBankDetailsDto"
      responses:
        '201':
          description: ''
  "/affiliate/wallet/details":
    get:
      operationId: AffiliateWalletController_getWalletDetails
      parameters: []
      responses:
        '200':
          description: ''
  "/affiliate/wallet/history":
    get:
      operationId: AffiliateWalletController_getWalletHistory
      parameters:
      - name: page
        required: true
        in: query
        schema:
          type: number
      - name: limit
        required: true
        in: query
        schema:
          type: number
      responses:
        '200':
          description: ''
  "/affiliate/wallet/withdraw":
    post:
      operationId: AffiliateWalletController_requestWithdrawal
      parameters: []
      responses:
        '201':
          description: ''
  "/affiliate/wallet/withdrawals":
    get:
      operationId: AffiliateWalletController_getWithdrawals
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/auth/login":
    post:
      operationId: AdminAuthController_login
      parameters: []
      responses:
        '201':
          description: ''
  "/admin/auth/logout":
    post:
      operationId: AdminAuthController_logout
      parameters: []
      responses:
        '201':
          description: ''
  "/admin/auth/profile":
    get:
      operationId: AdminAuthController_getProfile
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/roles":
    get:
      operationId: RoleController_listRoles
      parameters: []
      responses:
        '200':
          description: ''
    post:
      operationId: RoleController_createRole
      parameters: []
      responses:
        '201':
          description: ''
  "/admin/roles/{id}":
    put:
      operationId: RoleController_updateRole
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/permissions/{roleId}":
    get:
      operationId: PermissionController_getPermissionsByRole
      parameters:
      - name: roleId
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/permissions/update":
    post:
      operationId: PermissionController_updatePermissions
      parameters: []
      responses:
        '201':
          description: ''
  "/admin/users":
    get:
      operationId: AdminUserController_listAdminUsers
      parameters: []
      responses:
        '200':
          description: ''
    post:
      operationId: AdminUserController_createAdminUser
      parameters: []
      responses:
        '201':
          description: ''
  "/admin/users/{id}":
    put:
      operationId: AdminUserController_updateAdminUser
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/user/my-watchlist":
    get:
      operationId: UserProtectedController_fetchMyWatchlist
      parameters: []
      responses:
        '200':
          description: ''
  "/user/toggle-watchlist":
    post:
      operationId: UserProtectedController_toggleWatchlist
      parameters: []
      responses:
        '201':
          description: ''
  "/user/wallet-transaction":
    get:
      operationId: UserProtectedController_walletTransaction
      parameters: []
      responses:
        '200':
          description: ''
  "/user/spot-wallet-transaction":
    get:
      operationId: UserProtectedController_spotWalletTransaction
      parameters: []
      responses:
        '200':
          description: ''
  "/user/wallet-details":
    get:
      operationId: UserProtectedController_walletDetails
      parameters: []
      responses:
        '200':
          description: ''
  "/user/add-account":
    post:
      operationId: UserProtectedController_addAccount
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreatePaymentMode"
      responses:
        '201':
          description: ''
  "/user/phone/send-otp":
    post:
      operationId: UserProtectedController_sendPhoneOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/PhoneOtp"
      responses:
        '201':
          description: ''
  "/user/phone/validate-otp":
    post:
      operationId: UserProtectedController_validatePhoneOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/validatePhoneOtp"
      responses:
        '201':
          description: ''
  "/user/email/send-otp":
    post:
      operationId: UserProtectedController_sendEmailOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/EmailOtp"
      responses:
        '201':
          description: ''
  "/user/email/validate-otp":
    post:
      operationId: UserProtectedController_validateEmailOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/validateEmailOtp"
      responses:
        '201':
          description: ''
  "/user/aadhar/send-otp":
    post:
      operationId: UserProtectedController_sendAdhaarOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/AdhaarOtp"
      responses:
        '201':
          description: ''
  "/user/aadhar/validate-otp":
    post:
      operationId: UserProtectedController_validateAdhaarOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ValidateAdhaarOtp"
      responses:
        '201':
          description: ''
  "/user/pan/validate":
    post:
      operationId: UserProtectedController_validatePan
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ValidatePan"
      responses:
        '201':
          description: ''
  "/user/bank/validate":
    post:
      operationId: UserProtectedController_validateBank
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ValidateBank"
      responses:
        '201':
          description: ''
  "/user/top-up/toggle":
    post:
      operationId: UserProtectedController_toggleTopUp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ToggleAutoTopUp"
      responses:
        '201':
          description: ''
  "/user/profile":
    get:
      operationId: UserProtectedController_myProfile
      parameters: []
      responses:
        '200':
          description: ''
  "/user/verify/verifywithdigilocker":
    get:
      operationId: UserProtectedController_verifywithdigilocker
      parameters: []
      responses:
        '200':
          description: ''
  "/user/verify/verifywithdigilocker/get-aadhaar":
    get:
      operationId: UserProtectedController_verifywithdigilockerAdhar
      parameters: []
      responses:
        '200':
          description: ''
  "/user/face-match":
    post:
      operationId: UserProtectedController_matchFace
      parameters: []
      responses:
        '201':
          description: ''
  "/user/trading-stats":
    get:
      operationId: UserProtectedController_tradingStats
      parameters: []
      responses:
        '200':
          description: ''
  "/user/update-profile":
    put:
      operationId: UserProtectedController_updateProfile
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateProfile"
      responses:
        '200':
          description: ''
  "/user/list-payment-methods":
    get:
      operationId: UserProtectedController_paymentMethods
      parameters: []
      responses:
        '200':
          description: ''
  "/user/remove-payment-methods":
    get:
      operationId: UserProtectedController_deletePaymentMethod
      parameters: []
      responses:
        '200':
          description: ''
  "/user/add-wallet":
    post:
      operationId: UserProtectedController_addWallet
      parameters: []
      responses:
        '201':
          description: ''
  "/user/transaction-list":
    get:
      operationId: UserProtectedController_transactionList
      parameters: []
      responses:
        '200':
          description: ''
  "/user/withdrawl-request":
    post:
      operationId: UserProtectedController_requestWithdrawl
      parameters: []
      responses:
        '201':
          description: ''
  "/user/withdrawl-list":
    get:
      operationId: UserProtectedController_withdrawlList
      parameters: []
      responses:
        '200':
          description: ''
  "/user/pnl-chart":
    get:
      operationId: UserProtectedController_pnlChart
      parameters:
      - name: startDate
        required: true
        in: query
        schema:
          type: string
      - name: endDate
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/user/update-profile-question":
    post:
      operationId: UserProtectedController_profileQuestion
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/profileQuestionData"
      responses:
        '201':
          description: ''
  "/user/verify-aml":
    post:
      operationId: UserProtectedController_verifyAml
      parameters: []
      responses:
        '201':
          description: ''
  "/user/verify-aml/stream":
    get:
      operationId: UserProtectedController_streamAml
      parameters: []
      responses:
        '200':
          description: ''
  "/user/verify-aml/get":
    get:
      operationId: UserProtectedController_streamAmlRest
      parameters: []
      responses:
        '200':
          description: ''
  "/user/replicate":
    post:
      operationId: UserProtectedController_replicateUser
      parameters: []
      responses:
        '201':
          description: ''
  "/user/create-demo-session":
    post:
      operationId: UserProtectedController_createDemoSession
      parameters: []
      responses:
        '201':
          description: ''
  "/user/create-subaccount":
    post:
      operationId: UserProtectedController_createSubAccount
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateSubAccountDto"
      responses:
        '201':
          description: ''
  "/user/list-subaccounts":
    get:
      operationId: UserProtectedController_listSubAccounts
      parameters: []
      responses:
        '200':
          description: ''
  "/user/subaccount-transfer-fund":
    post:
      operationId: UserProtectedController_transferSubAccountFund
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/TransferSubAccountFundDto"
      responses:
        '201':
          description: ''
  "/user/force-login-subaccount":
    post:
      operationId: UserProtectedController_forceLoginSubAccount
      parameters: []
      responses:
        '201':
          description: ''
  "/user/switch-main-account":
    post:
      operationId: UserProtectedController_switchMainAccount
      parameters: []
      responses:
        '201':
          description: ''
  "/user/transfer-wallet-to-spot-wallet":
    post:
      operationId: UserProtectedController_transferWalletToSpotWallet
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/TransferWalletToSpotWalletDto"
      responses:
        '201':
          description: ''
  "/user/transfer-spot-wallet-to-wallet":
    post:
      operationId: UserProtectedController_transferSpotWalletToWallet
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/TransferSpotWalletToWalletDto"
      responses:
        '201':
          description: ''
  "/user/switch-enviroment":
    post:
      operationId: UserProtectedController_switchEnviroment
      parameters: []
      responses:
        '201':
          description: ''
  "/notifications":
    get:
      operationId: NotificationsController_getNotifications
      parameters:
      - name: page
        required: true
        in: query
        schema:
          type: string
      - name: limit
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/notifications/{id}/read":
    patch:
      operationId: NotificationsController_markAsRead
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: number
      responses:
        '200':
          description: ''
  "/notifications/read-all":
    patch:
      operationId: NotificationsController_markAllAsRead
      parameters: []
      responses:
        '200':
          description: ''
  "/authentication/register":
    post:
      operationId: AuthenticationController_register
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/RegisterDto"
      responses:
        '201':
          description: ''
  "/authentication/validate-otp":
    post:
      operationId: AuthenticationController_validateOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/validateOtpDto"
      responses:
        '201':
          description: ''
  "/authentication/log-in":
    post:
      operationId: AuthenticationController_logIn
      parameters: []
      responses:
        '200':
          description: ''
  "/authentication/verify-2fa-login":
    post:
      operationId: AuthenticationController_verify2faLogin
      parameters: []
      responses:
        '200':
          description: ''
  "/authentication/refresh":
    post:
      operationId: AuthenticationController_refresh
      parameters: []
      responses:
        '201':
          description: ''
  "/authentication/google-auth":
    post:
      operationId: AuthenticationController_googleLogin
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/GoogleLogin"
      responses:
        '200':
          description: ''
  "/authentication/get-reset-pass-link":
    post:
      operationId: AuthenticationController_resetPassLink
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/GetResetPassLink"
      responses:
        '200':
          description: ''
  "/authentication/reset-pass-by-code":
    post:
      operationId: AuthenticationController_resetPassWithCode
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/resetPassCode"
      responses:
        '200':
          description: ''
  "/authentication/log-out":
    post:
      operationId: AuthenticationController_logout
      parameters: []
      responses:
        '201':
          description: ''
  "/authentication":
    get:
      operationId: AuthenticationController_authenticate
      parameters: []
      responses:
        '200':
          description: ''
  "/authentication/existance":
    post:
      operationId: AuthenticationController_existance
      parameters: []
      responses:
        '201':
          description: ''
  "/authentication/verify-force-login":
    post:
      operationId: AuthenticationController_verifyForceLogin
      parameters: []
      responses:
        '201':
          description: ''
  "/categories":
    get:
      operationId: CategoriesController_getAllCategories
      parameters: []
      responses:
        '200':
          description: ''
    post:
      operationId: CategoriesController_createCategory
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateCategoryDto"
      responses:
        '201':
          description: ''
  "/categories/{id}":
    get:
      operationId: CategoriesController_getCategoryById
      parameters: []
      responses:
        '200':
          description: ''
    patch:
      operationId: CategoriesController_updateCategory
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateCategoryDto"
      responses:
        '200':
          description: ''
    delete:
      operationId: CategoriesController_deleteCategory
      parameters: []
      responses:
        '200':
          description: ''
  "/products":
    get:
      operationId: ProductsController_getAllProducts
      parameters: []
      responses:
        '200':
          description: ''
    post:
      operationId: ProductsController_createProduct
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateProductDto"
      responses:
        '201':
          description: ''
  "/products/{id}":
    get:
      operationId: ProductsController_getProductById
      parameters: []
      responses:
        '200':
          description: ''
    patch:
      operationId: ProductsController_updateProduct
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateProductDto"
      responses:
        '200':
          description: ''
    delete:
      operationId: ProductsController_deleteProduct
      parameters: []
      responses:
        '200':
          description: ''
  "/videos":
    post:
      operationId: VideosController_addVideo
      parameters: []
      responses:
        '201':
          description: ''
  "/videos/{id}":
    get:
      operationId: VideosController_streamVideo
      parameters:
      - name: range
        required: true
        in: header
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdata/v5/*":
    get:
      operationId: MarketdataController_handleBybitProxy
      parameters: []
      responses:
        '200':
          description: ''
  "/marketdatav5/v5/*":
    get:
      operationId: MarketdataController_handleBybitProxy
      parameters: []
      responses:
        '200':
          description: ''
  "/marketdata/price-change/{symbol}":
    get:
      operationId: MarketdataController_getPriceChange
      parameters:
      - name: symbol
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdatav5/price-change/{symbol}":
    get:
      operationId: MarketdataController_getPriceChange
      parameters:
      - name: symbol
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdata/get-index-graph":
    get:
      operationId: MarketdataController_getIndexGraph
      parameters:
      - name: symbol
        required: true
        in: query
        schema:
          type: string
      - name: startDay
        required: true
        in: query
        schema:
          type: string
      - name: endDay
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdatav5/get-index-graph":
    get:
      operationId: MarketdataController_getIndexGraph
      parameters:
      - name: symbol
        required: true
        in: query
        schema:
          type: string
      - name: startDay
        required: true
        in: query
        schema:
          type: string
      - name: endDay
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdata":
    post:
      operationId: MarketdataController_create
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateMarketdatumDto"
      responses:
        '201':
          description: ''
    get:
      operationId: MarketdataController_findAll
      parameters: []
      responses:
        '200':
          description: ''
  "/marketdatav5":
    post:
      operationId: MarketdataController_create
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateMarketdatumDto"
      responses:
        '201':
          description: ''
    get:
      operationId: MarketdataController_findAll
      parameters: []
      responses:
        '200':
          description: ''
  "/marketdata/option-expiries/{id}":
    get:
      operationId: MarketdataController_getOptionExpiry
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdatav5/option-expiries/{id}":
    get:
      operationId: MarketdataController_getOptionExpiry
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdata/option-symbols/{expiryTs}/{currency}":
    get:
      operationId: MarketdataController_getInstrumentsByExpiry
      parameters:
      - name: expiryTs
        required: true
        in: path
        schema:
          type: string
      - name: currency
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdatav5/option-symbols/{expiryTs}/{currency}":
    get:
      operationId: MarketdataController_getInstrumentsByExpiry
      parameters:
      - name: expiryTs
        required: true
        in: path
        schema:
          type: string
      - name: currency
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdata/{id}":
    patch:
      operationId: MarketdataController_update
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateMarketdatumDto"
      responses:
        '200':
          description: ''
    delete:
      operationId: MarketdataController_remove
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/marketdatav5/{id}":
    patch:
      operationId: MarketdataController_update
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateMarketdatumDto"
      responses:
        '200':
          description: ''
    delete:
      operationId: MarketdataController_remove
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/user-list":
    get:
      operationId: AdminController_fetchUsersAll
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/list-position":
    get:
      operationId: AdminController_fetchPosition
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/list-trades":
    get:
      operationId: AdminController_fetchTrades
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/list-orders":
    get:
      operationId: AdminController_fetchOrders
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/reset-kyc/{userId}":
    get:
      operationId: AdminController_resetKyc
      parameters:
      - name: userId
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/stats":
    get:
      operationId: AdminController_getUserStats
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/stats-log":
    get:
      operationId: AdminController_getUserStatsLog
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/force-login/{userId}":
    post:
      operationId: AdminController_forceLoginUser
      parameters:
      - name: userId
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
  "/admin/verify-force-login":
    post:
      operationId: AdminController_verifyForceLogin
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/VerifyForceLoginDto"
      responses:
        '201':
          description: ''
  "/admin/transaction-monitor/markStr":
    post:
      operationId: AdminController_markStr
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/MarkStrDto"
      responses:
        '201':
          description: ''
  "/admin/contact-requests":
    get:
      operationId: AdminController_contactReqList
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/admin-comment-on-contact":
    post:
      operationId: AdminController_adminCommentOnContact
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/AdminCommentDto"
      responses:
        '201':
          description: ''
  "/admin/create-update-index":
    post:
      operationId: AdminController_createOrUpdateIndex
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateUpdateIndexDto"
      responses:
        '201':
          description: ''
  "/admin/index-details/{symbol}":
    get:
      operationId: AdminController_getIndexDetails
      parameters:
      - name: symbol
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/index-details-latest/{symbol}":
    get:
      operationId: AdminController_getIndexDetailsLatest
      parameters:
      - name: symbol
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/all-indices":
    get:
      operationId: AdminController_getAllIndices
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/future-coins":
    get:
      operationId: AdminController_getFutureCoins
      parameters: []
      responses:
        '200':
          description: ''
    post:
      operationId: AdminController_createFutureCoin
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateFutureCoinDto"
      responses:
        '201':
          description: ''
  "/admin/future-coins/{id}":
    put:
      operationId: AdminController_updateFutureCoin
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateFutureCoinDto"
      responses:
        '200':
          description: ''
    delete:
      operationId: AdminController_deleteFutureCoin
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/funding-hedge-comparisan":
    get:
      operationId: AdminController_getFundingHedgeComparisan
      parameters:
      - name: symbol
        required: true
        in: query
        schema:
          type: string
      - name: startDate
        required: true
        in: query
        schema:
          type: string
      - name: endDate
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/future-hedge-revalidate":
    get:
      operationId: AdminController_futureHedgeRevalidate
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/spot-hedge-revalidate":
    get:
      operationId: AdminController_spotHedgeRevalidate
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/affiliate/list-affiliates":
    get:
      operationId: AdminAffiliateController_listAffiliates
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/affiliate/commission/{id}":
    post:
      operationId: AdminAffiliateController_setCommission
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
  "/admin/affiliate/withdrawals/pending":
    get:
      operationId: AdminAffiliateController_getPendingWithdrawals
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/affiliate/withdrawals/approve/{id}":
    post:
      operationId: AdminAffiliateController_approveWithdrawal
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
  "/admin/affiliate/withdrawals/reject/{id}":
    post:
      operationId: AdminAffiliateController_rejectWithdrawal
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
  "/admin/affiliate/commission-settings":
    post:
      operationId: AdminAffiliateController_setLevelCommission
      parameters: []
      responses:
        '201':
          description: ''
    get:
      operationId: AdminAffiliateController_getLevelCommissions
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/affiliate/income-report":
    get:
      operationId: AdminAffiliateController_getIncomeReport
      parameters:
      - name: startDate
        required: true
        in: query
        schema:
          type: string
      - name: endDate
        required: true
        in: query
        schema:
          type: string
      - name: page
        required: true
        in: query
        schema:
          type: string
      - name: limit
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/affiliate/income-summary":
    get:
      operationId: AdminAffiliateController_getIncomeSummary
      parameters:
      - name: startDate
        required: true
        in: query
        schema:
          type: string
      - name: endDate
        required: true
        in: query
        schema:
          type: string
      - name: page
        required: true
        in: query
        schema:
          type: string
      - name: limit
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/community/list-member":
    get:
      operationId: AdminCommunityController_listMember
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/community/subscription-price":
    post:
      operationId: AdminCommunityController_setSubscriptionPrice
      parameters: []
      responses:
        '201':
          description: ''
    get:
      operationId: AdminCommunityController_getSubscriptionPrice
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/community/payout-settings":
    post:
      operationId: AdminCommunityController_setPayoutSetting
      parameters: []
      responses:
        '201':
          description: ''
    get:
      operationId: AdminCommunityController_getPayoutSettings
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/community/incomer-report":
    get:
      operationId: AdminCommunityController_getIncomerReport
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/community/userwise-income-report":
    get:
      operationId: AdminCommunityController_getUserwiseIncomeReport
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/community/payment-summary":
    get:
      operationId: AdminCommunityController_getPaymentSummary
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/transaction-monitor/rules":
    get:
      operationId: TransactionMonitorController_getAllRules
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/transaction-monitor/rules/{ruleId}":
    put:
      operationId: TransactionMonitorController_updateRule
      parameters:
      - name: ruleId
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateRuleDto"
      responses:
        '200':
          description: ''
  "/admin/transaction-monitor/risk-ranges":
    get:
      operationId: TransactionMonitorController_getRiskScoreRanges
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/transaction-monitor/risk-ranges/{id}":
    put:
      operationId: TransactionMonitorController_updateRiskScoreRange
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateRiskRangeDto"
      responses:
        '200':
          description: ''
  "/admin/transaction-monitor/alerts":
    get:
      operationId: TransactionMonitorController_getAlerts
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/transaction-monitor/stk-reports":
    get:
      operationId: TransactionMonitorController_getStkReports
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/transaction-monitor/str-user-reports":
    get:
      operationId: TransactionMonitorController_getStrUserReports
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/user-management/approve/{userId}":
    post:
      operationId: AdminUserManagementController_approveUser
      parameters:
      - name: userId
        required: true
        in: path
        schema:
          type: number
      responses:
        '201':
          description: ''
  "/admin/user-management/block/{userId}":
    post:
      operationId: AdminUserManagementController_blockUser
      parameters:
      - name: userId
        required: true
        in: path
        schema:
          type: number
      responses:
        '201':
          description: ''
  "/admin/wallet/dashboard":
    get:
      operationId: WalletController_getDashboard
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/wallet/withdrawals":
    get:
      operationId: WalletController_getWithdrawals
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/wallet/withdrawals/{id}/accept":
    post:
      operationId: WalletController_acceptWithdrawal
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
  "/admin/wallet/withdrawals/{id}/reject":
    post:
      operationId: WalletController_rejectWithdrawal
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
  "/admin/wallet/balance-additions":
    get:
      operationId: WalletController_getBalanceAdditions
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/wallet/community-withdrawals":
    get:
      operationId: WalletController_getCommunityWithdrawals
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/wallet/community-withdrawals/{id}/accept":
    post:
      operationId: WalletController_acceptCommunityWithdrawal
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
  "/admin/wallet/community-withdrawals/{id}/reject":
    post:
      operationId: WalletController_rejectCommunityWithdrawal
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
  "/admin/wallet/history/user":
    get:
      operationId: WalletController_getUserWalletHistory
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/wallet/history/spot":
    get:
      operationId: WalletController_getSpotWalletHistory
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/wallet/history/community":
    get:
      operationId: WalletController_getCommunityWalletHistory
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/wallet/history/affiliate":
    get:
      operationId: WalletController_getAffiliateWalletHistory
      parameters: []
      responses:
        '200':
          description: ''
  "/community/register":
    post:
      operationId: CommunityController_register
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/RegisterCommunityMemberDto"
      responses:
        '201':
          description: ''
  "/community/send-otp":
    post:
      operationId: CommunityController_resendOtp
      parameters: []
      responses:
        '201':
          description: ''
  "/community/validate-otp":
    post:
      operationId: CommunityController_validateOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ValidateCommunityEmailOtpDto"
      responses:
        '200':
          description: ''
  "/community/login":
    post:
      operationId: CommunityController_login
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/LoginCommunityMemberDto"
      responses:
        '200':
          description: ''
  "/community/profile":
    get:
      operationId: CommunityController_getProfile
      parameters: []
      responses:
        '200':
          description: ''
    post:
      operationId: CommunityController_updateProfile
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateCommunityProfileDto"
      responses:
        '201':
          description: ''
  "/community/subscribe":
    post:
      operationId: CommunityController_subscribe
      parameters: []
      responses:
        '201':
          description: ''
  "/community/phone/send-otp":
    post:
      operationId: CommunityController_requestPhoneUpdate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/RequestCommunityPhoneOtpDto"
      responses:
        '201':
          description: ''
  "/community/phone/validate-otp":
    post:
      operationId: CommunityController_validatePhoneUpdate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/VerifyCommunityPhoneOtpDto"
      responses:
        '201':
          description: ''
  "/community/email/send-otp":
    post:
      operationId: CommunityController_requestEmailUpdate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/RequestCommunityEmailOtpDto"
      responses:
        '201':
          description: ''
  "/community/email/validate-otp":
    post:
      operationId: CommunityController_validateEmailUpdate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/VerifyCommunityEmailOtpDto"
      responses:
        '201':
          description: ''
  "/community/community-report":
    get:
      operationId: CommunityController_getCommunityReport
      parameters: []
      responses:
        '200':
          description: ''
  "/community/details":
    get:
      operationId: CommunityController_getCommunityMemberDetails
      parameters: []
      responses:
        '200':
          description: ''
  "/community/indirect-report":
    get:
      operationId: CommunityController_getIndirectCommunityReport
      parameters: []
      responses:
        '200':
          description: ''
  "/community/direct-user-trading-income-report":
    get:
      operationId: CommunityController_getDirectUserTradingIncomeReport
      parameters: []
      responses:
        '200':
          description: ''
  "/community/indirect-user-trading-income-report":
    get:
      operationId: CommunityController_getIndirectUserTradingIncomeReport
      parameters: []
      responses:
        '200':
          description: ''
  "/community/summary-user-report":
    get:
      operationId: CommunityController_getSummaryUserReport
      parameters: []
      responses:
        '200':
          description: ''
  "/community/user-status-report":
    get:
      operationId: CommunityController_getUserStatusReport
      parameters: []
      responses:
        '200':
          description: ''
  "/community/dashboard":
    get:
      operationId: CommunityController_getDashboard
      parameters: []
      responses:
        '200':
          description: ''
  "/community/kyc/status":
    post:
      operationId: CommunityKycController_getStatus
      parameters: []
      responses:
        '201':
          description: ''
  "/community/kyc/phone/send-otp":
    post:
      operationId: CommunityKycController_sendPhoneOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/PhoneOtp"
      responses:
        '201':
          description: ''
  "/community/kyc/phone/validate-otp":
    post:
      operationId: CommunityKycController_validatePhoneOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/validatePhoneOtp"
      responses:
        '201':
          description: ''
  "/community/kyc/aadhar/send-otp":
    post:
      operationId: CommunityKycController_sendAadhaarOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/AdhaarOtp"
      responses:
        '201':
          description: ''
  "/community/kyc/aadhar/validate-otp":
    post:
      operationId: CommunityKycController_validateAadhaarOtp
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ValidateAdhaarOtp"
      responses:
        '201':
          description: ''
  "/community/kyc/pan/validate":
    post:
      operationId: CommunityKycController_validatePan
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/ValidatePan"
      responses:
        '201':
          description: ''
  "/community/kyc/selfie/upload":
    post:
      operationId: CommunityKycController_uploadSelfie
      parameters: []
      responses:
        '201':
          description: ''
  "/community/kyc/verify/verifywithdigilocker":
    get:
      operationId: CommunityKycController_verifywithdigilocker
      parameters: []
      responses:
        '200':
          description: ''
  "/community/kyc/verify/verifywithdigilocker/get-aadhaar":
    get:
      operationId: CommunityKycController_verifywithdigilockerAdhar
      parameters: []
      responses:
        '200':
          description: ''
  "/community/kyc/personal-info":
    post:
      operationId: CommunityKycController_updatePersonalInfo
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateAffiliatePersonalInfoDto"
      responses:
        '201':
          description: ''
  "/community/kyc/bank/validate":
    post:
      operationId: CommunityKycController_validateBank
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/AffiliateBankDetailsDto"
      responses:
        '201':
          description: ''
  "/community/wallet/balance":
    get:
      operationId: CommunityWalletController_getBalance
      parameters: []
      responses:
        '200':
          description: ''
  "/community/wallet/history":
    get:
      operationId: CommunityWalletController_getHistory
      parameters: []
      responses:
        '200':
          description: ''
  "/community/wallet/withdraw":
    post:
      operationId: CommunityWalletController_requestWithdrawal
      parameters: []
      responses:
        '201':
          description: ''
  "/community/wallet/withdraw-history":
    get:
      operationId: CommunityWalletController_withdrawalHistory
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/spots/create-pair":
    post:
      operationId: SpotController_createSpotPair
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateSpotDto"
      responses:
        '201':
          description: ''
  "/admin/spots/list-pairs":
    get:
      operationId: SpotController_listSpotPairs
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/spots/edit-pair/{id}":
    put:
      operationId: SpotController_editSpotPair
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: number
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/EditSpotDto"
      responses:
        '200':
          description: ''
  "/admin/spots/settings":
    get:
      operationId: SpotController_getSpotSettings
      parameters: []
      responses:
        '200':
          description: ''
    patch:
      operationId: SpotController_updateSpotSettings
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateSpotSettingDto"
      responses:
        '200':
          description: ''
  "/admin/user-security/logout-all/{userId}":
    post:
      operationId: UserSecurityController_logoutAllSessions
      parameters:
      - name: userId
        required: true
        in: path
        schema:
          type: number
      responses:
        '200':
          description: ''
  "/admin/user-security/sessions/{userId}":
    get:
      operationId: UserSecurityController_listSessions
      parameters:
      - name: userId
        required: true
        in: path
        schema:
          type: number
      responses:
        '200':
          description: ''
  "/admin/user-security/last-session/{userId}":
    get:
      operationId: UserSecurityController_getLastSession
      parameters:
      - name: userId
        required: true
        in: path
        schema:
          type: number
      responses:
        '200':
          description: ''
  "/user/2fa/status":
    get:
      operationId: TwoFaController_getStatus
      parameters: []
      responses:
        '200':
          description: ''
  "/user/2fa/setup":
    post:
      operationId: TwoFaController_setup
      parameters: []
      responses:
        '200':
          description: ''
  "/user/2fa/verify":
    post:
      operationId: TwoFaController_verify
      parameters: []
      responses:
        '200':
          description: ''
  "/user/2fa/disable":
    post:
      operationId: TwoFaController_disable
      parameters: []
      responses:
        '200':
          description: ''
  "/user/2fa/backup-verify":
    post:
      operationId: TwoFaController_verifyBackup
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/system-logs/login":
    get:
      operationId: SystemLogsController_getLoginLogs
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/system-logs/kyc":
    get:
      operationId: SystemLogsController_getKycLogs
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/system-logs/forget-pass":
    get:
      operationId: SystemLogsController_getForgetPassLogs
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/system-logs/aml-search":
    get:
      operationId: SystemLogsController_getAmlSearchLogs
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/sip/settings":
    get:
      operationId: SipManagementController_getSettings
      parameters: []
      responses:
        '200':
          description: ''
    patch:
      operationId: SipManagementController_updateSettings
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateSipSettingDto"
      responses:
        '200':
          description: ''
  "/admin/sip/create-update-index":
    post:
      operationId: SipManagementController_createOrUpdateIndex
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateUpdateSipIndexDto"
      responses:
        '201':
          description: ''
  "/admin/sip/index-details/{symbol}":
    get:
      operationId: SipManagementController_getIndexDetails
      parameters:
      - name: symbol
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/sip/index-details-latest/{symbol}":
    get:
      operationId: SipManagementController_getIndexDetailsLatest
      parameters:
      - name: symbol
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/sip/all-indices":
    get:
      operationId: SipManagementController_getAllIndices
      parameters: []
      responses:
        '200':
          description: ''
  "/support/faqs":
    get:
      operationId: SupportController_findAllFaqs
      parameters: []
      responses:
        '200':
          description: ''
  "/support/tickets":
    post:
      operationId: SupportController_createTicket
      parameters:
      - name: type
        required: true
        in: query
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateTicketDto"
      responses:
        '201':
          description: ''
    get:
      operationId: SupportController_getUserTickets
      parameters:
      - name: page
        required: true
        in: query
        schema:
          type: number
      - name: limit
        required: true
        in: query
        schema:
          type: number
      - name: type
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/support/tickets/{id}":
    get:
      operationId: SupportController_getTicketById
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: type
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/support/tickets/{id}/comments":
    post:
      operationId: SupportController_addComment
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: type
        required: true
        in: query
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateCommentDto"
      responses:
        '201':
          description: ''
  "/admin/support/faqs":
    post:
      operationId: AdminSupportController_createFaq
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateFaqDto"
      responses:
        '201':
          description: ''
    get:
      operationId: AdminSupportController_findAllFaqs
      parameters: []
      responses:
        '200':
          description: ''
  "/admin/support/faqs/{id}":
    put:
      operationId: AdminSupportController_updateFaq
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateFaqDto"
      responses:
        '200':
          description: ''
    delete:
      operationId: AdminSupportController_deleteFaq
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/support/tickets":
    get:
      operationId: AdminSupportController_getAllTickets
      parameters:
      - name: page
        required: true
        in: query
        schema:
          type: number
      - name: limit
        required: true
        in: query
        schema:
          type: number
      - name: startDate
        required: true
        in: query
        schema:
          type: string
      - name: endDate
        required: true
        in: query
        schema:
          type: string
      - name: status
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/support/tickets/{id}":
    get:
      operationId: AdminSupportController_getTicketById
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
  "/admin/support/tickets/{id}/status":
    patch:
      operationId: AdminSupportController_updateTicketStatus
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/UpdateTicketStatusDto"
      responses:
        '200':
          description: ''
  "/admin/support/tickets/{id}/comments":
    post:
      operationId: AdminSupportController_addComment
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/CreateCommentDto"
      responses:
        '201':
          description: ''
  "/setting/admin/update":
    post:
      operationId: SettingController_updateSetting
      parameters: []
      responses:
        '201':
          description: ''
  "/setting":
    get:
      operationId: SettingController_getSetting
      parameters: []
      responses:
        '200':
          description: ''
info:
  title: Rizex API
  description: Rizex API description
  version: '1.0'
  contact: {}
tags: []
servers: []
components:
  schemas:
    CreatePostDto:
      type: object
      properties: {}
    UpdatePostDto:
      type: object
      properties: {}
    ReplacePostDto:
      type: object
      properties: {}
    createOrder:
      type: object
      properties: {}
    createPosTpSLOrder:
      type: object
      properties: {}
    PositionMarginDto:
      type: object
      properties: {}
    cancelOrder:
      type: object
      properties: {}
    modifyOrder:
      type: object
      properties: {}
    createOptionOrder:
      type: object
      properties: {}
    CreatePostLegacyDto:
      type: object
      properties: {}
    ReplacePostLegacyDto:
      type: object
      properties: {}
    UpdatePostLegacyDto:
      type: object
      properties: {}
    checkLiquidation:
      type: object
      properties: {}
    postContact:
      type: object
      properties: {}
    CreateAffiliateDto:
      type: object
      properties: {}
    AdminAffiliateListDto:
      type: object
      properties: {}
    LoginAffiliateDto:
      type: object
      properties: {}
    UpdateAffiliateProfileDto:
      type: object
      properties: {}
    RequestPhoneOtpDto:
      type: object
      properties: {}
    VerifyPhoneOtpDto:
      type: object
      properties: {}
    RequestEmailOtpDto:
      type: object
      properties: {}
    VerifyEmailOtpDto:
      type: object
      properties: {}
    PhoneOtp:
      type: object
      properties: {}
    validatePhoneOtp:
      type: object
      properties: {}
    AdhaarOtp:
      type: object
      properties: {}
    ValidateAdhaarOtp:
      type: object
      properties: {}
    ValidatePan:
      type: object
      properties: {}
    UpdateAffiliatePersonalInfoDto:
      type: object
      properties: {}
    AffiliateBankDetailsDto:
      type: object
      properties: {}
    CreatePaymentMode:
      type: object
      properties: {}
    EmailOtp:
      type: object
      properties: {}
    validateEmailOtp:
      type: object
      properties: {}
    ValidateBank:
      type: object
      properties: {}
    ToggleAutoTopUp:
      type: object
      properties: {}
    UpdateProfile:
      type: object
      properties: {}
    profileQuestionData:
      type: object
      properties: {}
    CreateSubAccountDto:
      type: object
      properties: {}
    TransferSubAccountFundDto:
      type: object
      properties: {}
    TransferWalletToSpotWalletDto:
      type: object
      properties: {}
    TransferSpotWalletToWalletDto:
      type: object
      properties: {}
    RegisterDto:
      type: object
      properties: {}
    validateOtpDto:
      type: object
      properties: {}
    GoogleLogin:
      type: object
      properties: {}
    GetResetPassLink:
      type: object
      properties: {}
    resetPassCode:
      type: object
      properties: {}
    CreateCategoryDto:
      type: object
      properties: {}
    UpdateCategoryDto:
      type: object
      properties: {}
    CreateProductDto:
      type: object
      properties: {}
    CreateMarketdatumDto:
      type: object
      properties: {}
    UpdateMarketdatumDto:
      type: object
      properties: {}
    VerifyForceLoginDto:
      type: object
      properties: {}
    MarkStrDto:
      type: object
      properties: {}
    AdminCommentDto:
      type: object
      properties: {}
    CreateUpdateIndexDto:
      type: object
      properties: {}
    CreateFutureCoinDto:
      type: object
      properties: {}
    UpdateFutureCoinDto:
      type: object
      properties: {}
    UpdateRuleDto:
      type: object
      properties: {}
    UpdateRiskRangeDto:
      type: object
      properties: {}
    RegisterCommunityMemberDto:
      type: object
      properties: {}
    ValidateCommunityEmailOtpDto:
      type: object
      properties: {}
    LoginCommunityMemberDto:
      type: object
      properties: {}
    UpdateCommunityProfileDto:
      type: object
      properties: {}
    RequestCommunityPhoneOtpDto:
      type: object
      properties: {}
    VerifyCommunityPhoneOtpDto:
      type: object
      properties: {}
    RequestCommunityEmailOtpDto:
      type: object
      properties: {}
    VerifyCommunityEmailOtpDto:
      type: object
      properties: {}
    CreateSpotDto:
      type: object
      properties: {}
    EditSpotDto:
      type: object
      properties: {}
    UpdateSpotSettingDto:
      type: object
      properties: {}
    UpdateSipSettingDto:
      type: object
      properties: {}
    CreateUpdateSipIndexDto:
      type: object
      properties: {}
    CreateTicketDto:
      type: object
      properties: {}
    CreateCommentDto:
      type: object
      properties: {}
    CreateFaqDto:
      type: object
      properties: {}
    UpdateFaqDto:
      type: object
      properties: {}
    UpdateTicketStatusDto:
      type: object
      properties: {}
