CoinMetadata
An object representing metadata about a coin type.
type CoinMetadata implements IAddressable, IMoveObject, IObject {
  address: SuiAddress!
  allowGlobalPause: Boolean
  balance(
    coinType: String!
  ): Balance
  balances(
    first: Int
    after: String
    last: Int
    before: String
  ): BalanceConnection
  contents: MoveValue
  decimals: Int
  defaultSuinsName: String
  denyCap: MoveObject
  description: String
  digest: String
  dynamicField(
    name: DynamicFieldName!
  ): DynamicField
  dynamicFields(
    first: Int
    after: String
    last: Int
    before: String
  ): DynamicFieldConnection
  dynamicObjectField(
    name: DynamicFieldName!
  ): DynamicField
  hasPublicTransfer: Boolean
  iconUrl: String
  moveObjectBcs: Base64
  multiGetBalances(
    keys: [String!]!
  ): [Balance!]
  multiGetDynamicFields(
    keys: [DynamicFieldName!]!
  ): [DynamicField]!
  multiGetDynamicObjectFields(
    keys: [DynamicFieldName!]!
  ): [DynamicField]!
  name: String
  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
  regulatedState: RegulatedState
  storageRebate: BigInt
  supply: BigInt
  supplyState: SupplyState
  symbol: String
  version: UInt53
}
Fields
CoinMetadata.address ● SuiAddress! non-null scalar
The CoinMetadata's ID.
CoinMetadata.allowGlobalPause ● Boolean scalar
Whether the DenyCap can be used to enable a global pause that behaves as if all addresses were added to the deny list. null indicates that it is not known whether the currency can be paused or not. This field is only populated on currencies held in the Coin Registry. To determine whether a legacy currency can be paused, check the contents of its DenyCap, if it can be found.
CoinMetadata.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.
CoinMetadata.balance.coinType ● String! non-null scalar
CoinMetadata.balances ● BalanceConnection object
Total balance across coins owned by this address, grouped by coin type.
CoinMetadata.balances.first ● Int scalar
CoinMetadata.balances.after ● String scalar
CoinMetadata.balances.last ● Int scalar
CoinMetadata.balances.before ● String scalar
CoinMetadata.contents ● MoveValue object
The structured representation of the object's contents.
CoinMetadata.decimals ● Int scalar
Number of decimal places the coin uses.
CoinMetadata.defaultSuinsName ● String scalar
The domain explicitly configured as the default SuiNS name for this address.
CoinMetadata.denyCap ● MoveObject object
If the currency is regulated, this object represents the capability to modify the deny list. If a capability is known but wrapped, its address can be fetched but other fields will not be accessible.
CoinMetadata.description ● String scalar
Description of the coin.
CoinMetadata.digest ● String scalar
32-byte hash that identifies the object's contents, encoded in Base58.
CoinMetadata.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.
CoinMetadata.dynamicField.name ● DynamicFieldName! non-null input
CoinMetadata.dynamicFields ● DynamicFieldConnection object
Dynamic fields owned by this object.
Dynamic fields on wrapped objects can be accessed using Address.dynamicFields.
CoinMetadata.dynamicFields.first ● Int scalar
CoinMetadata.dynamicFields.after ● String scalar
CoinMetadata.dynamicFields.last ● Int scalar
CoinMetadata.dynamicFields.before ● String scalar
CoinMetadata.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.
CoinMetadata.dynamicObjectField.name ● DynamicFieldName! non-null input
CoinMetadata.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.
CoinMetadata.iconUrl ● String scalar
URL for the coin logo.
CoinMetadata.moveObjectBcs ● Base64 scalar
The Base64-encoded BCS serialize of this object, as a MoveObject.
CoinMetadata.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.
CoinMetadata.multiGetBalances.keys ● [String!]! non-null scalar
CoinMetadata.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.
CoinMetadata.multiGetDynamicFields.keys ● [DynamicFieldName!]! non-null input
CoinMetadata.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.
CoinMetadata.multiGetDynamicObjectFields.keys ● [DynamicFieldName!]! non-null input
CoinMetadata.name ● String scalar
Name for the coin.
CoinMetadata.objectAt ● Object object
Fetch the object with the same ID, at a different version, root version bound, or checkpoint.
CoinMetadata.objectAt.version ● UInt53 scalar
CoinMetadata.objectAt.rootVersion ● UInt53 scalar
CoinMetadata.objectAt.checkpoint ● UInt53 scalar
CoinMetadata.objectBcs ● Base64 scalar
The Base64-encoded BCS serialization of this object, as an Object.
CoinMetadata.objectVersionsAfter ● ObjectConnection object
Paginate all versions of this object after this one.
CoinMetadata.objectVersionsAfter.first ● Int scalar
CoinMetadata.objectVersionsAfter.after ● String scalar
CoinMetadata.objectVersionsAfter.last ● Int scalar
CoinMetadata.objectVersionsAfter.before ● String scalar
CoinMetadata.objectVersionsAfter.filter ● VersionFilter input
CoinMetadata.objectVersionsBefore ● ObjectConnection object
Paginate all versions of this object before this one.
CoinMetadata.objectVersionsBefore.first ● Int scalar
CoinMetadata.objectVersionsBefore.after ● String scalar
CoinMetadata.objectVersionsBefore.last ● Int scalar
CoinMetadata.objectVersionsBefore.before ● String scalar
CoinMetadata.objectVersionsBefore.filter ● VersionFilter input
CoinMetadata.objects ● MoveObjectConnection object
Objects owned by this object, optionally filtered by type.
CoinMetadata.objects.first ● Int scalar
CoinMetadata.objects.after ● String scalar
CoinMetadata.objects.last ● Int scalar
CoinMetadata.objects.before ● String scalar
CoinMetadata.objects.filter ● ObjectFilter input
CoinMetadata.owner ● Owner union
The object's owner kind.
CoinMetadata.previousTransaction ● Transaction object
The transaction that created this version of the object.
CoinMetadata.receivedTransactions ● TransactionConnection object
The transactions that sent objects to this object.
CoinMetadata.receivedTransactions.first ● Int scalar
CoinMetadata.receivedTransactions.after ● String scalar
CoinMetadata.receivedTransactions.last ● Int scalar
CoinMetadata.receivedTransactions.before ● String scalar
CoinMetadata.receivedTransactions.filter ● TransactionFilter input
CoinMetadata.regulatedState ● RegulatedState enum
Whether the currency is regulated or not. null indicates that the regulatory status is unknown.
CoinMetadata.storageRebate ● BigInt scalar
The SUI returned to the sponsor or sender of the transaction that modifies or deletes this object.
CoinMetadata.supply ● BigInt scalar
The overall balance of coins issued.
CoinMetadata.supplyState ● SupplyState enum
Future behavior of the supply. null indicates that the future behavior of the supply is not known because the currency's treasury still exists.
CoinMetadata.symbol ● String scalar
Symbol for the coin.
CoinMetadata.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.
Returned By
coinMetadata  query
Member Of
MoveObject  object