REST APIStakeStaking State Information

GET

Get staking wallet information including staking delegated balance, rewards accrued, and rewards accrual annual percentage rate.

Path Params

  • coin string enum required
    The staking asset.
    ADAAPTASIKAVACOSMOSATOMAVAXCAVAXPBABYBERABLDBSCBTCCOREDAOCOREUMCRONOSCSPRDOTEIGENETHFLRPHASHINJECTIVEMATICNEAROSMOPOLPOLYXRETH-ROCKETSEISOMISOLSTORYSTXSUISUI:WALTAOTIATONTRXWETHWCTWFLRXDCZETA
  • walletId string required
    The wallet ID.

Query Params

  • excludeExtraWalletInformation boolean
    Exclude balance and attributes for the wallet

Responses

200
Successful Get a Staking Wallet

Response Body

object

  • enterpriseId string required
    The ID of the enterprise where the staking request was created.
  • walletId string required
    The ID of the wallet where the staking request was created.
  • stakingWalletId string nullable
    The unique identifier of the staking wallet entity.
  • walletType string enum required
    The type of wallet the staking request was created from.
    coldcustodialcustodialPairedhottrading
  • label string nullable
    The label of the wallet the staking request was created from.
  • coin string required
    The staking asset.
  • parentCoin string nullable
    The parent asset of the staking coin.
  • rewardCoin string nullable
    The coin in which rewards are denominated, if different from the staking coin (e.g., VTHO for VET staking).
  • assetBalance string nullable
    The total asset balance in base units.
  • delegated string required
    The delegated staked amount in base units.
  • pendingUnstake string required
    The amount that is actively being unstaked.
  • pendingStake string required
    The amount that is actively being staked.
  • spendableAttributes object
    Spendable attributes available for a wallet’s staking operations.
    spendableAttributes object
    • staking object
      staking object
      • netMax string
        The maximum spendable amount minus fees.
      • netMin string
        The net minimum spendable amount plus fees.
      • isStakingDurationNeeded boolean
        True, if staking duration in seconds is required.
      • defaultStakingDuration string
        Optional default staking duration in seconds.
      • unlockTimeEpochSeconds string
        Optional unlock time in epoch seconds.
      • minStakeMore string
        The minimum amount required to stake more to the same validator.
      • minDuration string
        Minimum allowed staking duration in seconds.
      • maxDuration string
        Maximum allowed staking duration in seconds.
      • durationLabel string
        Optional label for staking duration (e.g., "Epoch").
      • breakdown object
        Breakdown of staking spendable amounts, including balances, fees, and limits.
        breakdown object
        • balance string
          Total balance available for staking operations.
        • stakingFee string
          Fee amount required to perform staking operations.
        • unstakingFee string
          Fee amount required to perform unstaking operations.
        • pendingStake string
          Amount of stake that has been requested but is not yet active.
        • proxyCost string
          Proxy fee cost (applies to DOT staking only).
        • maxSpendable string
          Maximum amount that can be spent on staking after accounting for fees and limits.
        • minSpendable string
          Minimum amount required for a valid staking operation.
      • name string
        Optional staking type name (UI label).
      • type string
        Optional staking type identifier.
      • fields array of objects
        Additional form fields required for staking (e.g., resource type selection dropdown).
        fields object
        • name string
          Machine-readable name of the staking field.
        • label string
          Human-readable label for display.
        • required boolean
          Whether this field must be provided.

          Defaults to true

        • type string
          Input type (e.g., text, number, select).
        • coin string
          Optional coin symbol associated with the field.
        • useValidatorList boolean
          Whether this field should use the validator list as options.

          Defaults to false

        • readonly boolean
          If true, the field is not editable.

          Defaults to false

        • value string
          Optional pre-filled or default value for the field.
        • min string
          Optional minimum value (serialized as string).
        • max string
          Optional maximum value (serialized as string).
        • options array of objects
          Select/dropdown options for the field, if applicable.
          options object
          • label string
            Human-readable label for the option.
          • value string
            Machine-readable value for the option.
          • description string
            Optional explanation of the option.
          • amount string
            Optional amount associated with this option (used for fixed-amount staking like VET NFT tiers).
      • stakingSubTypes array of objects
        Available staking sub-types with their own attributes.
        stakingSubTypes object
        • name string
          The display name of the staking sub-type.
        • type string
          The identifier of the staking sub-type.
        • fee string
          The blockchain fee for this sub-type.
        • max string
          The maximum amount for this sub-type.
        • min string
          The minimum amount for this sub-type.
        • netMax string
          The net maximum amount for this sub-type.
        • netMin string
          The net minimum amount for this sub-type.
        • multiplier string
          The multiplier for this sub-type.
        • decimal string
          Optional custom conversion factor, when provided, should use amount ÷ decimal to get converted to derived unit.
        • displayUnit string
          Optional custom unit (e.g., "TP" for TronPower). When provided, this unit is the derived unit of the amounts in the attributes.
      • isDelegated boolean
        True if this staking is delegated.
      • restaking object
        Attributes related to restaking positions.
        restaking object
        • total string
          Total amount currently restaked.
        • pendingStake string
          Amount of stake that has been requested but is not yet active.
        • pendingUnstake string
          Amount of stake that is pending to be unstaked.
        • operator string
          The operator identifier for the restaking position.
        • type string
          The type of restaking (e.g., EigenLayer, AVS, etc.).
        • avses array of strings
          Optional list of AVS (Actively Validated Services) identifiers linked to this restaking.
        • apy string decimal
          Annual percentage yield (APY) for the restaking position.
        • commissionPercent string decimal
          Commission percentage charged by the operator.
      • stakingSubTypesStyle string
        Optional style hint for rendering staking sub-types.
      • decimal string
        Optional custom conversion factor, when provided, use amount ÷ decimal to get derived unit.
      • displayUnit string
        Optional custom unit (e.g., "TP" for TronPower). When provided, this unit is the derived unit of the amounts in the attributes.
      • fixedAmountStaking boolean
        Indicates that staking amounts are fixed per tier/option and should be auto-filled from the selected option's amount field. When true, the UI should prefill and make the amount field readonly.

        Defaults to false

      • conversionRates map of strings
        Map of netUID to alpha-to-TAO conversion rate (string-encoded BigInteger). Used to display TAO equivalent amounts in the staking form.
        conversionRates object
        • <key> string
      • max string
        The maximum spendable amount.
      • min string
        The minimum spendable amount.
      • multiplier string
        The multiplier amount to be staked. Default to 1, but for coins like where the amount to stake is a multiple of 32 ETH, this is 32 in base unit, to allow validation.
      • fee string
        The blockchain fee to submit the transactions.
    • unstaking object
      Spendable amounts and rules specific to unstaking operations.
      unstaking object
      • multipleDelegations boolean
        True if more than one active staking delegation exists for a wallet.
      • breakdown object
        Detailed breakdown of spendable amounts and fees for unstaking.
        breakdown object
        • balance string bigInteger
          Current balance available for unstaking.
        • unstakingFee string bigInteger
          Fee required to perform an unstaking transaction.
        • maxSpendable string bigInteger
          Maximum amount that can be unstaked in a single transaction.
        • unstakeable object
          Breakdown of the wallet’s staked funds that can be unstaked.
          unstakeable object
          • stakedBalance string bigInteger
            Total amount currently staked.
          • pendingUnstake string bigInteger
            Amount already requested for unstaking but not yet completed.
          • maxUnstakeable string bigInteger
            Maximum amount of staked funds that can be unstaked at this time.
      • requiresAmount boolean
        Whether specifying an amount is required for the unstaking request.

        Defaults to true

      • requiresDelegationId boolean
        Whether a single delegation ID is required for the unstaking request.

        Defaults to false

      • requiresDelegationIds boolean
        Whether multiple delegation IDs must be specified for the unstaking request.

        Defaults to false

      • fields array of objects
        Dynamic form fields for the unstaking request (e.g., resource type selection).
        fields object
        • Same shape as StakingField.
      • unstakingSubTypes array of objects
        Supported unstaking sub-types with their own spendable attributes.
        unstakingSubTypes object
        • name string
          Human-readable name of the unstaking sub-type.
        • type string
          Internal identifier for the unstaking sub-type.
        • fee string bigInteger
          Fee required to perform an unstaking transaction for this sub-type.
        • max string bigInteger
          Maximum amount that can be unstaked for this sub-type.
        • min string bigInteger
          Minimum amount that must be unstaked for this sub-type.
        • netMax string bigInteger
          Maximum unstakeable amount minus applicable fees.
        • netMin string bigInteger
          Minimum unstakeable amount including fees.
        • requiresAmount boolean
          True if the unstaking request requires specifying an amount.
        • requiresDelegationId boolean
          True if a single delegation ID must be specified for unstaking.
        • requiresDelegationIds boolean
          True if multiple delegation IDs must be specified for unstaking.
        • allowPartialUnstake boolean
          True if partial unstaking (less than full delegation) is allowed.
        • multipleDelegations boolean
          True if this sub-type supports wallets with multiple active delegations.
      • conversionRates map of strings
        Map of netUID to alpha-to-TAO conversion rate (string-encoded BigInteger). Used to display TAO equivalent amounts in the unstaking form.
        conversionRates object
        • <key> string
      • max string
        The maximum spendable amount.
      • min string
        The minimum spendable amount.
      • multiplier string
        The multiplier amount to be staked. Default to 1, but for coins like where the amount to stake is a multiple of 32 ETH, this is 32 in base unit, to allow validation.
      • fee string
        The blockchain fee to submit the transactions.
    • claimRewards object
      Spendable attributes specific to claiming staking rewards.
      claimRewards object
      • breakdown object
        Breakdown of rewards available for claiming.
        breakdown object
        • totalRewards string
          Total accumulated rewards (claimable + pending).
        • claimableRewards string
          Rewards that are immediately available for claiming.
        • pendingClaimRewards string
          Rewards that are pending and not yet claimable.
        • claimFee string
          Estimated fee required to claim rewards.
      • requiresDelegationId boolean
        True if a delegation ID must be specified when claiming rewards.
      • rewardCoin string
        The coin in which rewards are distributed.
      • rewardPairs array of objects
        Optional list of reward pairs (e.g., multiple tokens being rewarded).
        rewardPairs object
        • tokenAddress string nullable
          The optional token address.
        • amount string required
          The total amount of the reward pair in base units.
        • activeAmount string required
          The currently active amount in base units.
        • coin string nullable
          The optional coin for this reward pair.
      • max string
        The maximum spendable amount.
      • min string
        The minimum spendable amount.
      • multiplier string
        The multiplier amount to be staked. Default to 1, but for coins like where the amount to stake is a multiple of 32 ETH, this is 32 in base unit, to allow validation.
      • fee string
        The blockchain fee to submit the transactions.
    • switchValidator object
      switchValidator object
      • breakdown object
        breakdown object
        • balance string
          The wallet balance available for validator switching.
        • switchFee string
          The fee required to switch validators.
        • switchable object
          switchable object
          • stakedBalance string
            The total balance currently staked that can be switched.
          • pendingUnstake string
            The amount currently pending unstake, not switchable until complete.
          • maxSwitchable string
            The maximum amount of balance that can be switched to another validator.
      • requiresDelegationId boolean
        True if a delegation ID must be specified when switching validators.
      • requiresAmount boolean
        True if an amount must be specified when switching validators.
      • useDelegationForTarget boolean
        True if the validator field of a switch validator request must be a validator public key.
      • max string
        The maximum spendable amount.
      • min string
        The minimum spendable amount.
      • multiplier string
        The multiplier amount to be staked. Default to 1, but for coins like where the amount to stake is a multiple of 32 ETH, this is 32 in base unit, to allow validation.
      • fee string
        The blockchain fee to submit the transactions.
  • permissionAttributes object
    Permission attributes for the staking wallet.
    permissionAttributes object
    • staking object
      Permission attributes specific to staking.
      staking object
      • allowClientToUseOwnValidator boolean
        True if the client is allowed to stake to their own validator.

        Defaults to false

      • allowClientToUseOwnDRep boolean nullable
        ADA-specific. True if the client can use their own DRep for governance.
      • allowVoteDelegation boolean nullable
        ADA-specific. True if the client can delegate votes.
      • requireVoteDelegation boolean nullable
        ADA-specific. True if vote delegation is required.
      • enabled boolean required
        True if the permission is enabled.
      • disabledReason string nullable
        Reason why the permission is disabled, if applicable.
    • unstaking object
      Permission attributes specific to unstaking.
      unstaking object
      • enabled boolean required
        True if the permission is enabled.
      • disabledReason string nullable
        Reason why the permission is disabled, if applicable.
    • claimRewards object
      Permission attributes specific to claiming staking rewards.
      claimRewards object
      • enabled boolean required
        True if the permission is enabled.
      • disabledReason string nullable
        Reason why the permission is disabled, if applicable.
    • switchValidator object
      Permission attributes specific to switching validators.
      switchValidator object
      • enabled boolean required
        True if the permission is enabled.
      • disabledReason string nullable
        Reason why the permission is disabled, if applicable.
    • wallet object
      Permission attributes specific to the wallet.
      wallet object
      • hasEnoughAdmins boolean
        True, if the wallet has enough admins to create a staking request.
      • numberOfRequiredAdmins integer
        The number of admins required to create a hot staking request.
      • useValidatorList boolean
        Boolean flag to control whether to show dropdown list of validators or not.
      • skipAddressValidation boolean
        Boolean flag to control whether to perform validator address validation or not.
      • showValidatorAddress boolean
        Boolean flag to control whether to display the validator address in the UI even when skipAddressValidation is true.
      • allowPartialUnstake boolean
        True if the wallet allows partial unstaking.
      • validatorNotNeededForStake boolean
        True if a validator is not required when staking.
      • validatorCoin string nullable
        Optional coin used for validator-specific staking.
  • users array of objects nullable
    The users associated with the staking wallet.
    users object
    • user string required
      The ID of the user.
    • permissions array of strings
      The list of permissions assigned to the user.
  • rewards string required
    The amount of rewards received in base units.
  • pendingClaimRewards string required
    The amount of rewards that are pending claim in base units.
  • lockedRewards string required
    The amount of locked rewards in base units.
  • reserved string required
    The amount reserved in base units.
  • pendingReserved string required
    The amount pending reservation in base units.
  • apy string required
    The reward accrual annual percentage rate. The rate is estimated yearly based on the last 7 days using the same methodology as leading beacon chain validator aggregators (e.g. https://beaconcha.in/validators).
  • createdDate string date-time nullable
    The date the staking request was created.
  • modifiedDate string date-time nullable
    The last date the staking wallet was modified.
  • properties object

    ONE OF

    • type string enum required
      BASE
    • walletMultisigType string enum required
      TSS
400
Bad Request

Response Body

object

  • error string
  • errorName string
  • reqId string
  • context object
401
Unauthorized

Response Body

object

  • error string
  • errorName string
  • reqId string
  • context object
403
Forbidden

Response Body

object

  • error string
  • errorName string
  • reqId string
  • context object
404
Not Found

Response Body

object

  • error string
  • errorName string
  • reqId string
  • context object
409
Conflict

Response Body

object

  • error string
  • errorName string
  • reqId string
  • context object
500
Server Error - Transient error please try again

Response Body

object

  • error string
  • errorName string
  • reqId string
  • context object