Skip to main content


Represents a 0x3::staking_pool::StakedSui Move object on-chain.

type StakedSui implements IMoveObject, IObject, IOwner {
address: SuiAddress!
first: Int
after: String
last: Int
before: String
filter: ObjectFilter
): MoveObjectConnection!
type: String
): Balance
first: Int
after: String
last: Int
before: String
): BalanceConnection!
first: Int
after: String
last: Int
before: String
type: String
): CoinConnection!
first: Int
after: String
last: Int
before: String
): StakedSuiConnection!
format: DomainFormat
): String
first: Int
after: String
last: Int
before: String
): SuinsRegistrationConnection!
version: Int!
status: ObjectKind!
digest: String
owner: ObjectOwner
previousTransactionBlock: TransactionBlock
storageRebate: BigInt
first: Int
after: String
last: Int
before: String
filter: TransactionBlockFilter
): TransactionBlockConnection!
bcs: Base64
contents: MoveValue
hasPublicTransfer: Boolean!
display: [DisplayEntry!]
name: DynamicFieldName!
): DynamicField
name: DynamicFieldName!
): DynamicField
first: Int
after: String
last: Int
before: String
): DynamicFieldConnection!
stakeStatus: StakeStatus!
activatedEpoch: Epoch
requestedEpoch: Epoch
poolId: SuiAddress
principal: BigInt
estimatedReward: BigInt


StakedSui.address ● SuiAddress! non-null scalar

StakedSui.objects ● MoveObjectConnection! non-null object

Objects owned by this object, optionally filter-ed.

StakedSui.objects.first ● Int scalar
StakedSui.objects.after ● String scalar
StakedSui.objects.last ● Int scalar
StakedSui.objects.before ● String scalar
StakedSui.objects.filter ● ObjectFilter input

StakedSui.balance ● Balance object

Total balance of all coins with marker type owned by this object. If type is not supplied, it defaults to 0x2::sui::SUI.

StakedSui.balance.type ● String scalar

StakedSui.balances ● BalanceConnection! non-null object

The balances of all coin types owned by this object.

StakedSui.balances.first ● Int scalar
StakedSui.balances.after ● String scalar
StakedSui.balances.last ● Int scalar
StakedSui.balances.before ● String scalar

StakedSui.coins ● CoinConnection! non-null object

The coin objects for this object.

type is a filter on the coin's type parameter, defaulting to 0x2::sui::SUI.

StakedSui.coins.first ● Int scalar
StakedSui.coins.after ● String scalar
StakedSui.coins.last ● Int scalar
StakedSui.coins.before ● String scalar
StakedSui.coins.type ● String scalar

StakedSui.stakedSuis ● StakedSuiConnection! non-null object

The 0x3::staking_pool::StakedSui objects owned by this object.

StakedSui.stakedSuis.first ● Int scalar
StakedSui.stakedSuis.after ● String scalar
StakedSui.stakedSuis.last ● Int scalar
StakedSui.stakedSuis.before ● String scalar

StakedSui.defaultSuinsName ● String scalar

The domain explicitly configured as the default domain pointing to this object.

StakedSui.defaultSuinsName.format ● DomainFormat enum

StakedSui.suinsRegistrations ● SuinsRegistrationConnection! non-null object

The SuinsRegistration NFTs owned by this object. These grant the owner the capability to manage the associated domain.

StakedSui.suinsRegistrations.first ● Int scalar
StakedSui.suinsRegistrations.after ● String scalar
StakedSui.suinsRegistrations.last ● Int scalar
StakedSui.suinsRegistrations.before ● String scalar

StakedSui.version ● Int! non-null scalar

StakedSui.status ● ObjectKind! non-null enum

The current status of the object as read from the off-chain store. The possible states are: NOT_INDEXED, the object is loaded from serialized data, such as the contents of a genesis or system package upgrade transaction. LIVE, the version returned is the most recent for the object, and it is not deleted or wrapped at that version. HISTORICAL, the object was referenced at a specific version or checkpoint, so is fetched from historical tables and may not be the latest version of the object. WRAPPED_OR_DELETED, the object is deleted or wrapped and only partial information can be loaded."

StakedSui.digest ● String scalar

32-byte hash that identifies the object's contents, encoded as a Base58 string.

StakedSui.owner ● ObjectOwner union

The owner type of this object: Immutable, Shared, Parent, Address

StakedSui.previousTransactionBlock ● TransactionBlock object

The transaction block that created this version of the object.

StakedSui.storageRebate ● BigInt scalar

The amount of SUI we would rebate if this object gets deleted or mutated. This number is recalculated based on the present storage gas price.

StakedSui.receivedTransactionBlocks ● TransactionBlockConnection! non-null object

The transaction blocks that sent objects to this object.

StakedSui.receivedTransactionBlocks.first ● Int scalar
StakedSui.receivedTransactionBlocks.after ● String scalar
StakedSui.receivedTransactionBlocks.last ● Int scalar
StakedSui.receivedTransactionBlocks.before ● String scalar
StakedSui.receivedTransactionBlocks.filter ● TransactionBlockFilter input

StakedSui.bcs ● Base64 scalar

The Base64-encoded BCS serialization of the object's content.

StakedSui.contents ● MoveValue object

Displays the contents of the Move object in a JSON string and through GraphQL types. Also provides the flat representation of the type signature, and the BCS of the corresponding data.

StakedSui.hasPublicTransfer ● Boolean! non-null scalar

Determines whether a transaction can transfer this object, using the TransferObjects transaction command or sui::transfer::public_transfer, both of which require the object to have the key and store abilities.

StakedSui.display ● [DisplayEntry!] list object

The set of named templates defined on-chain for the type of this object, to be handled off-chain. The server substitutes data from the object into these templates to generate a display string per template.

StakedSui.dynamicField ● DynamicField object

Access a dynamic field on an object using its name. Names are arbitrary Move values whose type have copy, drop, and store, and are specified using their type, and their BCS contents, Base64 encoded.

Dynamic fields on wrapped objects can be accessed by using the same API under the Owner type. ● DynamicFieldName! non-null input

StakedSui.dynamicObjectField ● DynamicField object

Access a dynamic object field on an object using its name. Names are arbitrary Move values whose type have copy, drop, and store, and are specified using their type, and their BCS contents, Base64 encoded. The value of a dynamic object field can also be accessed off-chain directly via its address (e.g. using Query.object).

Dynamic fields on wrapped objects can be accessed by using the same API under the Owner type. ● DynamicFieldName! non-null input

StakedSui.dynamicFields ● DynamicFieldConnection! non-null object

The dynamic fields and dynamic object fields on an object.

Dynamic fields on wrapped objects can be accessed by using the same API under the Owner type.

StakedSui.dynamicFields.first ● Int scalar
StakedSui.dynamicFields.after ● String scalar
StakedSui.dynamicFields.last ● Int scalar
StakedSui.dynamicFields.before ● String scalar

StakedSui.stakeStatus ● StakeStatus! non-null enum

A stake can be pending, active, or unstaked

StakedSui.activatedEpoch ● Epoch object

The epoch at which this stake became active.

StakedSui.requestedEpoch ● Epoch object

The epoch at which this object was requested to join a stake pool.

StakedSui.poolId ● SuiAddress scalar

The object id of the validator staking pool this stake belongs to.

StakedSui.principal ● BigInt scalar

The SUI that was initially staked.

StakedSui.estimatedReward ● BigInt scalar

The estimated reward for this stake object, calculated as:

principal * (initial_stake_rate / current_stake_rate - 1.0)

Or 0, if this value is negative, where:

  • initial_stake_rate is the stake rate at the epoch this stake was activated at.
  • current_stake_rate is the stake rate in the current epoch.

This value is only available if the stake is active.


IMoveObject interface

This interface is implemented by types that represent a Move object on-chain (A Move value whose type has key).

IObject interface

Interface implemented by on-chain values that are addressable by an ID (also referred to as its address). This includes Move objects and packages.

IOwner interface

Interface implemented by GraphQL types representing entities that can own objects. Object owners are identified by an address which can represent either the public key of an account or another object. The same address can only refer to an account or an object, never both, but it is not possible to know which up-front.

Member Of

MoveObject object ● StakedSuiConnection object ● StakedSuiEdge object