Frax Finance v1-staking API

The v1-staking API from Frax Finance — 6 operation(s) for v1-staking.

OpenAPI Specification

frax-v1-staking-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Frax Finance v1-gauge v1-staking API
  description: The Frax Finance API
  version: '1.0'
  contact:
    name: Frax Finance
    url: https://docs.frax.finance
    email: no-reply@frax.finance
servers:
- url: https://api.frax.finance
tags:
- name: v1-staking
paths:
  /v1/lockedstakedata:
    post:
      operationId: v1GetLockedStakeData
      summary: Returns locked stake data for a token.
      description: Returns locked stake data for a token.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LockedStakeDataRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LockedStakeDataResponse'
      tags:
      - v1-staking
  /v1/pools:
    get:
      operationId: V1Controller_getPools
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CoinGeckoPoolDataItem'
      tags:
      - v1-staking
  /v1/pools/{farmAddress}:
    get:
      operationId: V1Controller_getPoolByFarmAddress
      parameters:
      - name: farmAddress
        required: true
        in: path
        description: The hex address of the farm. Input is case insensitive.
        example: '0x3F2E53B1A3036Fd33F3c2f3cC49daB26A88DF2e0'
        schema:
          minLength: 42
          maxLength: 42
          pattern: ^0x[a-fA-F0-9]{40}$
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CoinGeckoPoolDataItem'
      tags:
      - v1-staking
  /v1/stakedata:
    post:
      operationId: v1GetStakeData
      summary: Returns stake data for a token and timeframe.
      description: Returns stake data for a token and timeframe.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StakeInfoRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StakeInfoResponse'
      tags:
      - v1-staking
  /v1/stakedata/choices:
    get:
      operationId: v1GetStakeChoices
      summary: Returns stake choices.
      description: Returns stake choices.
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StakeChoicesResponse'
      tags:
      - v1-staking
  /v1/stakedata/user-stake-info:
    post:
      operationId: v1GetUserStakeData
      summary: Returns stake data for a user.
      description: Returns stake data for a user.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserStakeInfoRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserStakeInfoResponse'
      tags:
      - v1-staking
components:
  schemas:
    StakeInfoRequest:
      type: object
      properties:
        token:
          type: string
          description: Token
        filter:
          type: string
          description: Timeframe
          enum:
          - all-time
          - 1-year
          - 6-months
          - 3-months
          - 1-month
          - 1-week
          - 1-day
          - 8-hours
          - 1-hour
          - 15-minutes
      required:
      - token
      - filter
    StakingRewardToken:
      type: object
      properties:
        symbol:
          type: string
        display_name:
          type: string
        apr_min_pct:
          type: number
        apr_max_pct:
          type: number
        token_price:
          type: number
        tokens_per_day:
          type: number
        usd_val_per_day:
          type: number
      required:
      - symbol
      - display_name
      - apr_min_pct
      - apr_max_pct
      - token_price
      - tokens_per_day
      - usd_val_per_day
    StakingItem:
      type: object
      properties:
        blockNum:
          type: number
        timestamp:
          type: number
        token:
          type: string
        supply:
          type: number
        boosted_supply:
          type: number
        lp_price:
          type: number
        lp_token_supply:
          type: number
        tvl:
          type: number
        reward_value_usd:
          type: number
        reward_duration:
          type: number
        apy:
          type: number
        apy_max:
          type: number
        reward_breakdown:
          $ref: '#/components/schemas/StakingRewardApyBreakdown'
        is_stale:
          type: boolean
      required:
      - blockNum
      - timestamp
      - token
      - supply
      - boosted_supply
      - lp_price
      - lp_token_supply
      - tvl
      - reward_value_usd
      - reward_duration
      - apy
      - apy_max
      - is_stale
    ChartJSDataRange:
      type: object
      properties:
        min:
          type: number
        max:
          type: number
      required:
      - min
      - max
    StakeChoiceGovernanceInfo:
      type: object
      properties:
        create:
          $ref: '#/components/schemas/StakeChoiceGovernanceSnapshotInfo'
        kill:
          $ref: '#/components/schemas/StakeChoiceGovernanceSnapshotInfo'
      required:
      - create
      - kill
    LockedStakeBucketAggregate:
      type: object
      properties:
        _id:
          type: string
        count:
          type: number
        total:
          type: number
      required:
      - _id
      - count
      - total
    RewardInfo:
      type: object
      properties:
        token:
          type: string
        chain:
          type: string
        coingecko_slug:
          type: string
        price:
          type: number
        reward_balance:
          type: number
        reward_usd_value:
          type: number
        reward_rate:
          type: string
      required:
      - token
      - chain
      - coingecko_slug
      - price
      - reward_balance
      - reward_usd_value
      - reward_rate
    LockedStakeDataResponse:
      type: object
      properties:
        token:
          type: string
        unlocked_sum:
          type: number
        locked_sum:
          type: number
        buckets:
          type: array
          items:
            $ref: '#/components/schemas/LockedStakeBucketAggregate'
      required:
      - token
      - unlocked_sum
      - locked_sum
      - buckets
    StakeChoice:
      type: object
      properties:
        key:
          type: string
        lp_logo:
          type: string
        slug:
          type: string
        urlRoute:
          type: string
        label:
          type: string
        chain:
          type: string
          enum:
          - arbitrum
          - aurora
          - avalanche
          - boba
          - bsc
          - ethereum
          - fantom
          - fraxtal
          - fraxtal_testnet
          - harmony
          - holesky
          - moonbeam
          - moonriver
          - optimism
          - polygon
          - polygon_zkevm
          - solana
          - stable
          - zksync
        info_link:
          type: string
        add_liq_link:
          type: string
        trade_link:
          type: string
        farming_link:
          type: string
        starting_block:
          type: number
        pool_tokens:
          type: array
          items:
            type: string
        pair_token0_decimals:
          type: number
        pair_token1_decimals:
          type: number
        reward_tokens:
          type: array
          items:
            type: string
        reward_token_decimals:
          type: array
          items:
            type: number
        external_reward_tokens:
          type: array
          items:
            type: string
        external_reward_token_decimals:
          type: array
          items:
            type: number
        staking_enabled:
          type: boolean
        timelock_enabled:
          type: boolean
        vefxs_enabled:
          type: boolean
        is_gauged:
          type: boolean
        external_contract:
          type: boolean
        has_varied_apy:
          type: boolean
        reward_token_coingecko_slugs:
          type: array
          items:
            type: string
        external_reward_token_coingecko_slugs:
          type: array
          items:
            type: string
        reward_token_bridge_types:
          type: array
          items:
            type: string
            enum:
            - canonical
            - anyFRAX
            - anyFXS
            - aebFRAX
            - aebFXS
            - binFRAX
            - binFXS
            - 1FRAX
            - 1FXS
            - polyFRAX
            - polyFXS
            - solwormFRAX
            - solwormFXS
        version:
          type: number
        governance:
          $ref: '#/components/schemas/StakeChoiceGovernanceInfo'
      required:
      - key
      - lp_logo
      - slug
      - urlRoute
      - label
      - chain
      - info_link
      - add_liq_link
      - trade_link
      - farming_link
      - starting_block
      - pool_tokens
      - pair_token0_decimals
      - pair_token1_decimals
      - reward_tokens
      - reward_token_decimals
      - external_reward_tokens
      - external_reward_token_decimals
      - staking_enabled
      - timelock_enabled
      - vefxs_enabled
      - is_gauged
      - external_contract
      - has_varied_apy
      - reward_token_coingecko_slugs
      - external_reward_token_coingecko_slugs
      - reward_token_bridge_types
      - version
      - governance
    StakeChoiceGovernanceSnapshotInfo:
      type: object
      properties:
        fipId:
          type: string
        fipHash:
          type: string
      required:
      - fipId
      - fipHash
    LockedStakeDataRequest:
      type: object
      properties:
        token:
          type: string
          description: Staking choice
      required:
      - token
    StakingRewardFee:
      type: object
      properties:
        symbol:
          type: string
        display_name:
          type: string
        apr_min_pct:
          type: number
        apr_max_pct:
          type: number
        lp_price:
          type: number
        avg_lp_per_day:
          type: number
        avg_volume_per_day_usd:
          type: number
        avg_provider_fees_per_day_usd:
          type: number
      required:
      - symbol
      - display_name
      - apr_min_pct
      - apr_max_pct
      - lp_price
      - avg_lp_per_day
      - avg_volume_per_day_usd
      - avg_provider_fees_per_day_usd
    UserStakeInfoRequest:
      type: object
      properties:
        the_chain:
          type: string
          description: The chain
          enum:
          - arbitrum
          - aurora
          - avalanche
          - boba
          - bsc
          - ethereum
          - fantom
          - fraxtal
          - fraxtal_testnet
          - harmony
          - holesky
          - moonbeam
          - moonriver
          - optimism
          - polygon
          - polygon_zkevm
          - solana
          - stable
          - zksync
        staking_choice:
          type: string
          description: Staking choice
        staker_address:
          type: string
          description: Staker address
      required:
      - the_chain
      - staking_choice
      - staker_address
    ChartJSData:
      type: object
      properties:
        labels:
          additionalProperties:
            oneOf:
            - type: string
            - type: number
            - type: boolean
          type: array
          items:
            type: object
        data:
          additionalProperties:
            oneOf:
            - type: string
            - type: number
            - type: boolean
          type: array
          items:
            type: object
        range:
          $ref: '#/components/schemas/ChartJSDataRange'
      required:
      - labels
      - data
      - range
    StakeChoicesResponse:
      type: object
      properties:
        choices:
          type: array
          items:
            $ref: '#/components/schemas/StakeChoice'
      required:
      - choices
    CoinGeckoPoolDataItem:
      type: object
      properties:
        identifier:
          type: string
        chain:
          type: string
        platform:
          type: string
        pair:
          type: string
        pairLink:
          type: string
        lp_address:
          type: string
        farm_address:
          type: string
        logo:
          type: string
        pool_tokens:
          type: array
          items:
            type: string
        pool_rewards:
          type: array
          items:
            type: string
        liquidity_locked:
          type: number
        apy:
          type: number
        apy_max:
          type: number
        reward_breakdown:
          $ref: '#/components/schemas/StakingRewardApyBreakdown'
        is_deprecated:
          type: boolean
        is_stale:
          type: boolean
      required:
      - identifier
      - chain
      - platform
      - pair
      - pairLink
      - logo
      - pool_tokens
      - pool_rewards
      - liquidity_locked
      - apy
      - apy_max
      - is_deprecated
      - is_stale
    LockedStake:
      type: object
      properties:
        amount:
          type: string
        dollar_value:
          type: number
        ending_timestamp:
          type: string
        kek_id:
          type: string
        liquidity:
          type: string
        lock_multiplier:
          type: string
        multiplier:
          type: string
        start_timestamp:
          type: string
        tick_lower:
          type: number
        tick_upper:
          type: number
        token_id:
          type: number
      required:
      - amount
      - dollar_value
      - ending_timestamp
      - kek_id
      - liquidity
      - lock_multiplier
      - multiplier
      - start_timestamp
      - tick_lower
      - tick_upper
      - token_id
    StakeInfoResponse:
      type: object
      properties:
        full_items:
          type: array
          items:
            $ref: '#/components/schemas/StakingItem'
        chartjs:
          additionalProperties:
            oneOf:
            - type: string
            - type: number
            - type: boolean
          allOf:
          - $ref: '#/components/schemas/ChartJSData'
      required:
      - full_items
      - chartjs
    UserStakeInfoResponse:
      type: object
      properties:
        lp_token_balance:
          type: number
        lp_token_bal_usd:
          type: number
        combined_weight:
          type: number
        rewards:
          type: array
          items:
            $ref: '#/components/schemas/RewardInfo'
        external_rewards:
          type: array
          items:
            $ref: '#/components/schemas/RewardInfo'
        rewards_total_usd_value:
          type: number
        unlocked_total:
          type: number
        unlocked_total_usd_value:
          type: number
        locked_total:
          type: number
        locked_total_usd_value:
          type: number
        locked_stakes:
          type: array
          items:
            $ref: '#/components/schemas/LockedStake'
      required:
      - lp_token_balance
      - lp_token_bal_usd
      - combined_weight
      - rewards
      - external_rewards
      - rewards_total_usd_value
      - unlocked_total
      - unlocked_total_usd_value
      - locked_total
      - locked_total_usd_value
      - locked_stakes
    StakingRewardApyBreakdown:
      type: object
      properties:
        fees:
          type: array
          items:
            $ref: '#/components/schemas/StakingRewardFee'
        tokens:
          type: array
          items:
            $ref: '#/components/schemas/StakingRewardToken'
      required:
      - fees
      - tokens
externalDocs:
  description: Open V2 Docs
  url: /v2/docs