--- openapi: 3.0.3 info: title: Farming description: This API allows you to get the information on farm for farming pool version: 1.0.0 tags: - name: farming_pools - name: graphics - name: transactions servers: - url: "https://farming-test.flatqube.io" - url: "https://farming.flatqube.io" paths: /farming_pools: post: tags: - farming_pools summary: farming pools data description: Get farming pools data. requestBody: required: true description: "" content: application/json: schema: $ref: "#/components/schemas/FarmingPoolsRequest" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/MainFarmingPoolInfoResponse" "/farming_pools/{farming_pool_address}": post: tags: - farming_pools summary: farming pool data description: Get farming pool data. requestBody: required: true description: "" content: application/json: schema: $ref: "#/components/schemas/FarmingPoolUserInfoRequest" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/UserFarmingPoolInfoResponse" parameters: - name: farming_pool_address in: path required: true schema: type: string /graphic/tvl: post: tags: - graphics summary: farming pool tvl graphic data description: Get farming pool tvl graphic data. requestBody: required: true description: "" content: application/json: schema: $ref: "#/components/schemas/FarmingPoolsGraphicRequest" responses: 200: description: OK content: application/json: schema: type: array items: $ref: "#/components/schemas/GraphicData" /graphic/apr: post: tags: - graphics summary: farming pool apr graphic data description: Get farming pool apy graphic data. requestBody: required: true description: "" content: application/json: schema: $ref: "#/components/schemas/FarmingPoolsGraphicRequest" responses: 200: description: OK content: application/json: schema: type: array items: $ref: "#/components/schemas/GraphicData" /transactions: post: tags: - transactions summary: transactions data description: Get transactions data. requestBody: required: true description: "" content: application/json: schema: $ref: "#/components/schemas/FarmingTransactionsRequest" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/FarmingTransactionsResponse" components: schemas: EventType: description: Event Type type: string enum: - deposit - withdraw - claim - rewarddeposit example: deposit FarmingPoolUserInfoRequest: description: Farming pool user info request type: object properties: afterZeroBalance: nullable: true type: boolean userAddress: nullable: true type: string required: - userAddress - afterZeroBalance FarmingPoolsGraphicRequest: description: Pair Tvl request type: object properties: farmingPoolAddress: type: string from: description: UTC timestamp in milliseconds type: integer format: int64 timeframe: $ref: "#/components/schemas/Timeframe" to: description: UTC timestamp in milliseconds type: integer format: int64 required: - farmingPoolAddress - timeframe - from - to FarmingPoolsOrdering: description: Currency ordering nullable: true type: string enum: - tvlascending - tvldescending - aprascending - aprdescending - shareascending - sharedescending example: tvlascending FarmingPoolsRequest: description: Farming pools request type: object properties: aprGe: description: aprGe type: string aprLe: description: aprLe type: string favoritePoolAddresses: nullable: true type: array items: type: string isActive: nullable: true type: boolean isAwaitingStart: nullable: true type: boolean isLowBalance: nullable: true type: boolean isWithMyFarming: nullable: true type: boolean leftAddress: nullable: true type: string leftCurrency: nullable: true type: string limit: type: integer format: int64 offset: type: integer format: int64 ordering: $ref: "#/components/schemas/FarmingPoolsOrdering" rightAddress: nullable: true type: string rightCurrency: nullable: true type: string rootAddresses: nullable: true type: array items: type: string tvlGe: description: tvlGe type: string tvlLe: description: tvlLe type: string userAddress: nullable: true type: string whiteCurrencyAddresses: nullable: true type: array items: type: string whiteListUri: nullable: true type: string required: - ordering - userAddress - whiteCurrencyAddresses - favoritePoolAddresses - rootAddresses - leftCurrency - rightCurrency - leftAddress - rightAddress - whiteListUri - isAwaitingStart - isActive - isLowBalance - isWithMyFarming - tvlGe - tvlLe - aprGe - aprLe - limit - offset FarmingTransactionInfo: description: FarmingTransactionInfo response type: object properties: kind: type: string leftExec: description: left_exec type: string messageHash: type: string poolAddress: type: string rightExec: description: right_exec type: string timestampBlock: type: integer format: int64 tokenAddress: type: string tokenCurrency: type: string tokenExec: description: root_token_exec type: string transactionHash: type: string tvExec: description: tv_exec type: string userAddress: type: string required: - messageHash - transactionHash - kind - userAddress - poolAddress - tokenAddress - tokenCurrency - tokenExec - tvExec - leftExec - rightExec - timestampBlock FarmingTransactionsRequest: description: Farming transactions request type: object properties: eventTypes: nullable: true type: array items: $ref: "#/components/schemas/EventType" limit: type: integer format: int64 offset: type: integer format: int64 ordering: $ref: "#/components/schemas/TransactionsOrdering" poolAddress: nullable: true type: string rootAddresses: nullable: true type: array items: type: string rootTokenAmountGe: description: root_token_amount_ge type: string rootTokenAmountLe: description: root_token_amount_le type: string timestampBlockGe: nullable: true type: integer format: int64 timestampBlockLe: nullable: true type: integer format: int64 tvGe: description: tv_ge type: string tvLe: description: tv_le type: string userAddress: nullable: true type: string whiteCurrencyAddresses: nullable: true type: array items: type: string whiteListUri: nullable: true type: string required: - whiteCurrencyAddresses - whiteListUri - rootAddresses - ordering - limit - offset - poolAddress - userAddress - timestampBlockGe - timestampBlockLe - rootTokenAmountGe - rootTokenAmountLe - tvGe - tvLe - eventTypes FarmingTransactionsResponse: description: Farming transactions response type: object properties: totalCount: type: integer format: int64 transactions: type: array items: $ref: "#/components/schemas/FarmingTransactionInfo" required: - transactions - totalCount GraphicData: type: object properties: data: description: data type: string timestamp: type: integer format: int64 required: - data - timestamp HistoryInfoResponse: nullable: true type: object properties: left_amount: description: left_amount type: string right_amount: description: right_amount type: string usdt_amount: description: usdt_amount type: string required: - left_amount - right_amount - usdt_amount MainFarmingPoolInfo: type: object properties: apr: description: apr type: string apr_change: description: apr type: string farm_end_time: nullable: true type: integer format: int64 farm_start_time: type: integer format: int64 is_active: type: boolean is_low_balance: type: boolean left_address: nullable: true type: string left_currency: nullable: true type: string pool_address: type: string pool_owner_address: type: string reward_token_root_info: type: array items: $ref: "#/components/schemas/MainRewardTokenRootResponse" right_address: nullable: true type: string right_currency: nullable: true type: string share: description: share type: string token_root_address: type: string token_root_currency: type: string token_root_scale: type: integer format: int32 tvl: description: tvl type: string tvl_change: description: tvl_change type: string user_token_balance: description: user_token_balance type: string required: - pool_address - left_address - right_address - left_currency - right_currency - tvl - tvl_change - apr - apr_change - share - user_token_balance - is_low_balance - pool_owner_address - token_root_address - token_root_currency - token_root_scale - farm_start_time - farm_end_time - is_active - reward_token_root_info MainFarmingPoolInfoResponse: type: object properties: favorite_pools_info: type: array items: $ref: "#/components/schemas/MainFarmingPoolInfo" favorite_total_count: type: integer format: int64 pools_info: type: array items: $ref: "#/components/schemas/MainFarmingPoolInfo" total_count: type: integer format: int64 required: - pools_info - total_count - favorite_pools_info - favorite_total_count MainRewardTokenRootResponse: type: object properties: reward_currency: type: string reward_root_address: type: string reward_scale: type: integer format: int32 required: - reward_root_address - reward_currency - reward_scale PoolInfoResponse: type: object properties: rounds_info: type: array items: $ref: "#/components/schemas/RoundInfoResponse" vesting_period: type: integer format: int32 vesting_ratio: type: integer format: int32 required: - vesting_period - vesting_ratio - rounds_info RewardTokenRootInfoResponse: type: object properties: rewardPerSec: description: reward_per_sec type: string rewardTokenCurrency: type: string rewardTokenRootAddress: type: string rewardTokenScale: type: integer format: int32 required: - rewardTokenRootAddress - rewardTokenCurrency - rewardTokenScale - rewardPerSec RoundInfoResponse: type: object properties: end_time: nullable: true type: integer format: int32 reward_info: type: array items: $ref: "#/components/schemas/RewardTokenRootInfoResponse" start_time: type: integer format: int32 required: - start_time - end_time - reward_info Timeframe: description: Timeframe type: string enum: - H1 - D1 example: H1 TransactionsOrdering: description: Transactions ordering nullable: true type: string enum: - blocktimeascending - blocktimedescending - lpvolumeascending - lpvolumedescending - tvascending - tvdescending example: blocktimeascending UserFarmingPoolInfoResponse: type: object properties: apr: description: apy type: string apr_change: description: apy_change type: string farm_end_time: nullable: true type: integer format: int64 farm_start_time: type: integer format: int64 history_info: $ref: "#/components/schemas/HistoryInfoResponse" is_active: type: boolean is_low_balance: type: boolean left_address: nullable: true type: string left_balance: description: left_balance type: string left_currency: nullable: true type: string pool_address: type: string pool_balance: description: lp_balance type: string pool_info: $ref: "#/components/schemas/PoolInfoResponse" pool_owner_address: type: string reward_token_root_info: type: array items: $ref: "#/components/schemas/UserRewardTokenRootResponse" right_address: nullable: true type: string right_balance: description: right_balance type: string right_currency: nullable: true type: string share: description: share type: string share_change: description: share_change type: string token_root_address: type: string token_root_currency: type: string token_root_scale: type: integer format: int32 tvl: description: tvl type: string tvl_change: description: tvl_change type: string user_token_balance: description: user_token_balance type: string user_usdt_balance: description: user_usdt_balance type: string required: - pool_address - left_address - right_address - left_currency - right_currency - left_balance - right_balance - pool_balance - tvl - tvl_change - apr - apr_change - share - share_change - user_token_balance - user_usdt_balance - pool_owner_address - token_root_address - token_root_currency - token_root_scale - farm_start_time - is_low_balance - is_active - farm_end_time - reward_token_root_info - pool_info - history_info UserRewardTokenRootResponse: type: object properties: reward_currency: type: string reward_per_second: description: reward_per_second type: string reward_root_address: type: string reward_token_scale: type: integer format: int32 required: - reward_root_address - reward_currency - reward_token_scale - reward_per_second