MoveObject
A MoveObject is a kind of Object that reprsents data stored on-chain.
type MoveObject implements IAddressable, IMoveObject, IObject {
address: SuiAddress!
asCoinMetadata: CoinMetadata
asDynamicField: DynamicField
balance(
coinType: String!
): Balance
balances(
first: Int
after: String
last: Int
before: String
): BalanceConnection
contents: MoveValue
defaultSuinsName: String
digest: String
dynamicField(
name: DynamicFieldName!
): DynamicField
dynamicFields(
first: Int
after: String
last: Int
before: String
): DynamicFieldConnection
dynamicObjectField(
name: DynamicFieldName!
): DynamicField
hasPublicTransfer: Boolean
moveObjectBcs: Base64
multiGetBalances(
keys: [String!]!
): [Balance!]
multiGetDynamicFields(
keys: [DynamicFieldName!]!
): [DynamicField]!
multiGetDynamicObjectFields(
keys: [DynamicFieldName!]!
): [DynamicField]!
objectAt(
version: UInt53
rootVersion: UInt53
checkpoint: UInt53
): Object
objectBcs: Base64
objectVersionsAfter(
first: Int
after: String
last: Int
before: String
filter: VersionFilter
): ObjectConnection
objectVersionsBefore(
first: Int
after: String
last: Int
before: String
filter: VersionFilter
): ObjectConnection
objects(
first: Int
after: String
last: Int
before: String
filter: ObjectFilter
): MoveObjectConnection
owner: Owner
previousTransaction: Transaction
receivedTransactions(
first: Int
after: String
last: Int
before: String
filter: TransactionFilter
): TransactionConnection
storageRebate: BigInt
version: UInt53
}
Fields
MoveObject.address
● SuiAddress!
non-null scalar
The MoveObject's ID.
MoveObject.asCoinMetadata
● CoinMetadata
object
Attempts to convert the object into a CoinMetadata.
MoveObject.asDynamicField
● DynamicField
object
Attempts to convert the object into a DynamicField.
MoveObject.balance
● Balance
object
Fetch the total balance for coins with marker type coinType
(e.g. 0x2::sui::SUI
), owned by this address.
If the address does not own any coins of that type, a balance of zero is returned.
MoveObject.balance.coinType
● String!
non-null scalar
MoveObject.balances
● BalanceConnection
object
Total balance across coins owned by this address, grouped by coin type.
MoveObject.balances.first
● Int
scalar
MoveObject.balances.after
● String
scalar
MoveObject.balances.last
● Int
scalar
MoveObject.balances.before
● String
scalar
MoveObject.contents
● MoveValue
object
The structured representation of the object's contents.
MoveObject.defaultSuinsName
● String
scalar
The domain explicitly configured as the default SuiNS name for this address.
MoveObject.digest
● String
scalar
32-byte hash that identifies the object's contents, encoded in Base58.
MoveObject.dynamicField
● DynamicField
object
Access a dynamic field on an object using its type and BCS-encoded name.
Returns null
if a dynamic field with that name could not be found attached to this object.
MoveObject.dynamicField.name
● DynamicFieldName!
non-null input
MoveObject.dynamicFields
● DynamicFieldConnection
object
Dynamic fields owned by this object.
Dynamic fields on wrapped objects can be accessed using Address.dynamicFields
.
MoveObject.dynamicFields.first
● Int
scalar
MoveObject.dynamicFields.after
● String
scalar
MoveObject.dynamicFields.last
● Int
scalar
MoveObject.dynamicFields.before
● String
scalar
MoveObject.dynamicObjectField
● DynamicField
object
Access a dynamic object field on an object using its type and BCS-encoded name.
Returns null
if a dynamic object field with that name could not be found attached to this object.
MoveObject.dynamicObjectField.name
● DynamicFieldName!
non-null input
MoveObject.hasPublicTransfer
● Boolean
scalar
Whether this object can be transfered using the TransferObjects
Programmable Transaction Command or sui::transfer::public_transfer
.
Both these operations require the object to have both the key
and store
abilities.
MoveObject.moveObjectBcs
● Base64
scalar
The Base64-encoded BCS serialize of this object, as a MoveObject
.
MoveObject.multiGetBalances
● [Balance!]
list object
Fetch the total balances keyed by coin types (e.g. 0x2::sui::SUI
) owned by this address.
If the address does not own any coins of a given type, a balance of zero is returned for that type.
MoveObject.multiGetBalances.keys
● [String!]!
non-null scalar
MoveObject.multiGetDynamicFields
● [DynamicField]!
non-null object
Access dynamic fields on an object using their types and BCS-encoded names.
Returns a list of dynamic fields that is guaranteed to be the same length as keys
. If a dynamic field in keys
could not be found in the store, its corresponding entry in the result will be null
.
MoveObject.multiGetDynamicFields.keys
● [DynamicFieldName!]!
non-null input
MoveObject.multiGetDynamicObjectFields
● [DynamicField]!
non-null object
Access dynamic object fields on an object using their types and BCS-encoded names.
Returns a list of dynamic object fields that is guaranteed to be the same length as keys
. If a dynamic object field in keys
could not be found in the store, its corresponding entry in the result will be null
.
MoveObject.multiGetDynamicObjectFields.keys
● [DynamicFieldName!]!
non-null input
MoveObject.objectAt
● Object
object
Fetch the object with the same ID, at a different version, root version bound, or checkpoint.
If no additional bound is provided, the latest version of this object is fetched at the latest checkpoint.
MoveObject.objectAt.version
● UInt53
scalar
MoveObject.objectAt.rootVersion
● UInt53
scalar
MoveObject.objectAt.checkpoint
● UInt53
scalar
MoveObject.objectBcs
● Base64
scalar
The Base64-encoded BCS serialization of this object, as an Object
.
MoveObject.objectVersionsAfter
● ObjectConnection
object
Paginate all versions of this object after this one.
MoveObject.objectVersionsAfter.first
● Int
scalar
MoveObject.objectVersionsAfter.after
● String
scalar
MoveObject.objectVersionsAfter.last
● Int
scalar
MoveObject.objectVersionsAfter.before
● String
scalar
MoveObject.objectVersionsAfter.filter
● VersionFilter
input
MoveObject.objectVersionsBefore
● ObjectConnection
object
Paginate all versions of this object before this one.
MoveObject.objectVersionsBefore.first
● Int
scalar
MoveObject.objectVersionsBefore.after
● String
scalar
MoveObject.objectVersionsBefore.last
● Int
scalar
MoveObject.objectVersionsBefore.before
● String
scalar
MoveObject.objectVersionsBefore.filter
● VersionFilter
input
MoveObject.objects
● MoveObjectConnection
object
Objects owned by this object, optionally filtered by type.
MoveObject.objects.first
● Int
scalar
MoveObject.objects.after
● String
scalar
MoveObject.objects.last
● Int
scalar
MoveObject.objects.before
● String
scalar
MoveObject.objects.filter
● ObjectFilter
input
MoveObject.owner
● Owner
union
The object's owner kind.
MoveObject.previousTransaction
● Transaction
object
The transaction that created this version of the object.
MoveObject.receivedTransactions
● TransactionConnection
object
The transactions that sent objects to this object.
MoveObject.receivedTransactions.first
● Int
scalar
MoveObject.receivedTransactions.after
● String
scalar
MoveObject.receivedTransactions.last
● Int
scalar
MoveObject.receivedTransactions.before
● String
scalar
MoveObject.receivedTransactions.filter
● TransactionFilter
input
MoveObject.storageRebate
● BigInt
scalar
The SUI returned to the sponsor or sender of the transaction that modifies or deletes this object.
MoveObject.version
● UInt53
scalar
The version of this object that this content comes from.
Interfaces
IAddressable
interface
Interface implemented by GraphQL types representing entities that are identified by an address.
An address uniquely represents either the public key of an account, or an object's ID, but never both. It is not possible to determine which type an address represents up-front. If an object is wrapped, its contents will not be accessible via its address, but it will still be possible to access other objects it owns.
IMoveObject
interface
Interface implemented by types that represent a Move object on-chain (A Move value whose type has key
).
IObject
interface
Interface implemented by versioned on-chain values that are addressable by an ID (also referred to as its address). This includes Move objects and packages.
Member Of
MoveObjectConnection
object ● MoveObjectEdge
object ● Object
object
Implemented By
DynamicFieldValue
union