Serialization

The catbuffer schemas repository defines how the different Symbol entities type should be serialized (for example, Transactions). In combination with the catbuffer-generators project, developers can generate builder classes for a given set of programming languages.

Basic Types

Amount
8 ubytes

A quantity of mosaics in absolute units.
It can only be positive or zero. Negative quantities must be indicated by other means (See for example MosaicSupplyChangeTransactionV1 and MosaicSupplyChangeAction).

BlockDuration
8 ubytes

A time lapse, expressed in number of blocks.

BlockFeeMultiplier
4 ubytes

Multiplier applied to the size of a transaction to obtain its fee, in absolute units.
See the fees documentation.

Difficulty
8 ubytes

How hard it was to harvest this block.
The initial value is 1e14 and it will remain like this as long as blocks are generated every blockGenerationTargetTime seconds (network property).
If blocks start taking more or less time than the configured value, the difficulty will be adjusted (in the range of 1e13 to 1e15) to try to hit the target time.
See the Technical Reference section 8.1.

FinalizationEpoch
4 ubytes

Index of a finalization epoch.
The first epoch is number 1 and contains only the first block (the Nemesis block). Epoch duration (in blocks) is defined by the votingSetGrouping network property.

FinalizationPoint
4 ubytes

A particular point in time inside a finalization epoch.
See the Technical Reference section 15.2.

Height
8 ubytes

Index of a block in the blockchain.
The first block (the Nemesis block) has height 1 and each subsequent block increases height by 1.

Importance
8 ubytes
ImportanceHeight
8 ubytes

Block height at which an Importance was calculated.

UnresolvedMosaicId
8 ubytes

Either a MosaicId or a NamespaceId.
The most-significant bit of the first byte is 0 for MosaicId's and 1 for NamespaceId's.

MosaicId
8 ubytes

A Mosaic identifier.

Timestamp
8 ubytes

Number of milliseconds elapsed since the creation of the Nemesis block.
The Nemesis block creation time can be found in the epochAdjustment field returned by the /network/properties REST endpoint. This is the number of seconds elapsed since the UNIX epoch and it is always 1615853185 for Symbol's MAINNET.

UnresolvedAddress
24 ubytes

Either an Address or a NamespaceId.
The least-significant bit of the first byte is 0 for Addresses and 1 for NamespaceId's.

Address
24 ubytes

An address identifies an account and is derived from its PublicKey.

Hash256
32 ubytes

A 32-byte (256 bit) hash.
The exact algorithm is unspecified as it can change depending on where it is used.

Hash512
64 ubytes

A 64-byte (512 bit) hash.
The exact algorithm is unspecified as it can change depending on where it is used.

PublicKey
32 ubytes

A 32-byte (256 bit) integer derived from a private key.
It serves as the public identifier of the key pair and can be disseminated widely. It is used to prove that an entity was signed with the paired private key.

VotingPublicKey
32 ubytes

A PublicKey used for voting during the finalization process.

Signature
64 ubytes

A 64-byte (512 bit) array certifying that the signed data has not been modified.
Symbol currently uses Ed25519 signatures.

ProofGamma
32 ubytes
ProofVerificationHash
16 ubytes
ProofScalar
32 ubytes
NamespaceId
8 ubytes
MosaicNonce
4 ubytes
MosaicRestrictionKey
8 ubytes
ScopedMetadataKey
8 ubytes

Enumerations

LinkAction

Size: 1 byte = 0x1
schema
catapult model

Link actions.

0x0
UNLINK

Unlink an account.

0x1
LINK

Link an account.

NetworkType

Size: 1 byte = 0x1
schema

Enumeration of network types.

0x68
MAINNET

Public network.

0x98
TESTNET

Public test network.

TransactionType

Size: 2 bytes = 0x2
schema

Enumeration of Transaction types

0x414c
ACCOUNT_KEY_LINK
0x424c
NODE_KEY_LINK
0x4141
AGGREGATE_COMPLETE
0x4241
AGGREGATE_BONDED
0x4143
VOTING_KEY_LINK
0x4243
VRF_KEY_LINK
0x4148
HASH_LOCK
0x4152
SECRET_LOCK
0x4252
SECRET_PROOF
0x4144
ACCOUNT_METADATA
0x4244
MOSAIC_METADATA
0x4344
NAMESPACE_METADATA
0x414d
MOSAIC_DEFINITION
0x424d
MOSAIC_SUPPLY_CHANGE
0x434d
MOSAIC_SUPPLY_REVOCATION
0x4155
MULTISIG_ACCOUNT_MODIFICATION
0x424e
ADDRESS_ALIAS
0x434e
MOSAIC_ALIAS
0x414e
NAMESPACE_REGISTRATION
0x4150
ACCOUNT_ADDRESS_RESTRICTION
0x4250
ACCOUNT_MOSAIC_RESTRICTION
0x4350
ACCOUNT_OPERATION_RESTRICTION
0x4251
MOSAIC_ADDRESS_RESTRICTION
0x4151
MOSAIC_GLOBAL_RESTRICTION
0x4154
TRANSFER

BlockType

Size: 2 bytes = 0x2
schema

enumeration of block types

0x8043
NEMESIS

nemesis block

0x8143
NORMAL

normal block

0x8243
IMPORTANCE

importance block

ReceiptType

Size: 2 bytes = 0x2
schema
catapult model

Enumeration of receipt types.

0x124d
MOSAIC_RENTAL_FEE

Mosaic rental fee receipt.

0x134e
NAMESPACE_RENTAL_FEE

Namespace rental fee receipt.

0x2143
HARVEST_FEE

Harvest fee receipt.

0x2248
LOCK_HASH_COMPLETED

Hash lock completed receipt.

0x2348
LOCK_HASH_EXPIRED

Hash lock expired receipt.

0x2252
LOCK_SECRET_COMPLETED

Secret lock completed receipt.

0x2352
LOCK_SECRET_EXPIRED

Secret lock expired receipt.

0x3148
LOCK_HASH_CREATED

Hash lock created receipt.

0x3152
LOCK_SECRET_CREATED

Secret lock created receipt.

0x414d
MOSAIC_EXPIRED

Mosaic expired receipt.

0x414e
NAMESPACE_EXPIRED

Namespace expired receipt.

0x424e
NAMESPACE_DELETED

Namespace deleted receipt.

0x5143
INFLATION

Inflation receipt.

0xe143
TRANSACTION_GROUP

Transaction group receipt.

0xf143
ADDRESS_ALIAS_RESOLUTION

Address alias resolution receipt.

0xf243
MOSAIC_ALIAS_RESOLUTION

Mosaic alias resolution receipt.

NamespaceRegistrationType

Size: 1 byte = 0x1
schema
catapult model

Enumeration of namespace registration types.

0x0
ROOT

Root namespace.

0x1
CHILD

Child namespace.

AliasAction

Size: 1 byte = 0x1
schema
catapult model

Enumeration of alias actions.

0x0
UNLINK

Unlink a namespace, removing the alias.

0x1
LINK

Link a namespace, creating an alias.

LockHashAlgorithm

Size: 1 byte = 0x1
schema
catapult model

Enumeration of lock hash algorithms.

0x0
SHA3_256

Input is hashed using SHA-3 256.

0x1
HASH_160

Input is hashed twice: first with SHA-256 and then with RIPEMD-160 (bitcoin's OP_HASH160).

0x2
HASH_256

Input is hashed twice with SHA-256 (bitcoin's OP_HASH256).

MosaicFlags

Size: 1 byte = 0x1
schema
catapult model

Enumeration of mosaic property flags.

0x0
NONE

No flags present.

0x1
SUPPLY_MUTABLE

Mosaic supports supply changes through a MosaicSupplyChangeTransactionV1 even when mosaic creator only owns a partial supply.
If the mosaic creator owns the totality of the supply, it can be changed even if this flag is not set.

0x2
TRANSFERABLE

Mosaic supports TransferTransactionV1 between arbitrary accounts. When not set, this mosaic can only be transferred to or from the mosaic creator.

0x4
RESTRICTABLE

Mosaic supports custom restrictions configured by the mosaic creator.
See MosaicAddressRestrictionTransactionV1 and MosaicGlobalRestrictionTransactionV1.

0x8
REVOKABLE

Mosaic supports revocation of tokens by the mosaic creator.

MosaicSupplyChangeAction

Size: 1 byte = 0x1
schema
catapult model

Enumeration of mosaic supply change actions.

0x0
DECREASE

Decreases the supply.

0x1
INCREASE

Increases the supply.

AccountRestrictionFlags

Size: 2 bytes = 0x2
schema
catapult model

Enumeration of account restriction flags.

0x1
ADDRESS

Restriction type is an address.

0x2
MOSAIC_ID

Restriction type is a mosaic identifier.

0x4
TRANSACTION_TYPE

Restriction type is a transaction type.

0x4000
OUTGOING

Restriction is interpreted as outgoing.

0x8000
BLOCK

Restriction is interpreted as blocking (instead of allowing) operation.

MosaicRestrictionType

Size: 1 byte = 0x1
schema
catapult model

Enumeration of mosaic restriction types.

0x0
NONE

Uninitialized value indicating no restriction.

0x1
EQ

Allow if equal.

0x2
NE

Allow if not equal.

0x3
LT

Allow if less than.

0x4
LE

Allow if less than or equal.

0x5
GT

Allow if greater than.

0x6
GE

Allow if greater than or equal.

AccountType

Size: 1 byte = 0x1
schema
catapult model

enumeration of account types

0x0
UNLINKED

account is not linked to another account

0x1
MAIN

account is a balance-holding account that is linked to a remote harvester account

0x2
REMOTE

account is a remote harvester account that is linked to a balance-holding account

0x3
REMOTE_UNLINKED

account is a remote harvester eligible account that is unlinked
Note: this allows an account that has previously been used as remote to be reused as a remote

AccountKeyTypeFlags

Size: 1 byte = 0x1
schema

enumeration of account key type flags

0x0
UNSET

unset key

0x1
LINKED

linked account public key
Note: this can be either a remote or main account public key depending on context

0x2
NODE

node public key on which remote is allowed to harvest

0x4
VRF

VRF public key

AccountStateFormat

Size: 1 byte = 0x1
schema

enumeration of account state formats

0x0
REGULAR

regular account

0x1
HIGH_VALUE

high value account eligible to harvest

LockStatus

Size: 1 byte = 0x1
schema
catapult model

lock status for lock transaction

0x0
UNUSED

lock is unused

0x1
USED

lock was already used

MetadataType

Size: 1 byte = 0x1
schema
catapult model

enum for the different types of metadata

0x0
ACCOUNT

account metadata

0x1
MOSAIC

mosaic metadata

0x2
NAMESPACE

namespace metadata

NamespaceAliasType

Size: 1 byte = 0x1
schema

namespace alias type

0x0
NONE

no alias

0x1
MOSAIC_ID

if alias is mosaicId

0x2
ADDRESS

if alias is address

MosaicRestrictionEntryType

Size: 1 byte = 0x1
schema

type of mosaic restriction entry

0x0
ADDRESS

address restriction

0x1
GLOBAL

global (mosaic) restriction

Structures

Mosaic

Size: 16 bytes = 0x10
schema

A quantity of a certain mosaic.

 
 
 
mosaic_id

Mosaic identifier.

 
 
 
amount

Mosaic amount.

UnresolvedMosaic

Size: 16 bytes = 0x10
schema

A quantity of a certain mosaic, specified either through a MosaicId or an alias.

 
 
 
mosaic_id

Unresolved mosaic identifier.

 
 
 
amount

Mosaic amount.

Transaction

Size: 128 bytes = 0x80
catapult model

binary layout for a transaction

 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

EmbeddedTransaction

Size: 48 bytes = 0x30
catapult model

binary layout for an embedded transaction

 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

VrfProof

Size: 80 bytes = 0x50
schema
catapult model

verfiable random function proof

 
 
 
gamma

gamma

 
 
 
verification_hash

verification hash

 
 
 
scalar

scalar

Block

Size: 372 bytes = 0x174
catapult model

binary layout for a block

 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

block type

 
 
 
height

block height

 
 
 
timestamp

number of milliseconds elapsed since creation of nemesis block

 
 
 
difficulty

block difficulty

 
 
 
generation_hash_proof

generation hash proof

 
 
 
previous_block_hash

previous block hash

 
 
 
transactions_hash

hash of the transactions in this block

 
 
 
receipts_hash

hash of the receipts generated by this block

 
 
 
state_hash

hash of the global chain state at this block

 
 
 
beneficiary_address

beneficiary address designated by harvester

 
 
 
fee_multiplier

fee multiplier applied to block transactions

NemesisBlockV1

Size: 427 bytes = 0x1ab
schema

binary layout for a nemesis block header

 
 
 
BLOCK_VERSION
byte[1]
const 1
 
 
 
BLOCK_TYPE
const NEMESIS (0x8043)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

block type

 
 
 
height

block height

 
 
 
timestamp

number of milliseconds elapsed since creation of nemesis block

 
 
 
difficulty

block difficulty

 
 
 
generation_hash_proof

generation hash proof

 
 
 
previous_block_hash

previous block hash

 
 
 
transactions_hash

hash of the transactions in this block

 
 
 
receipts_hash

hash of the receipts generated by this block

 
 
 
state_hash

hash of the global chain state at this block

 
 
 
beneficiary_address

beneficiary address designated by harvester

 
 
 
fee_multiplier

fee multiplier applied to block transactions

 
 
 
voting_eligible_accounts_count
byte[4]

number of voting eligible accounts

 
 
 
harvesting_​eligible_​accounts_​count
byte[8]

number of harvesting eligible accounts

 
 
 
total_voting_balance

total balance eligible for voting

 
 
 
previous_importance_block_hash

previous importance block hash

 
 
 
transactions

variable sized transaction data

NormalBlockV1

Size: 379 bytes = 0x17b
schema

binary layout for a normal block header

 
 
 
BLOCK_VERSION
byte[1]
const 1
 
 
 
BLOCK_TYPE
const NORMAL (0x8143)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

block type

 
 
 
height

block height

 
 
 
timestamp

number of milliseconds elapsed since creation of nemesis block

 
 
 
difficulty

block difficulty

 
 
 
generation_hash_proof

generation hash proof

 
 
 
previous_block_hash

previous block hash

 
 
 
transactions_hash

hash of the transactions in this block

 
 
 
receipts_hash

hash of the receipts generated by this block

 
 
 
state_hash

hash of the global chain state at this block

 
 
 
beneficiary_address

beneficiary address designated by harvester

 
 
 
fee_multiplier

fee multiplier applied to block transactions

 
 
 
block_header_reserved_1
byte[4]
reserved 0

reserved padding to align end of BlockHeader on 8-byte boundary

 
 
 
transactions

variable sized transaction data

ImportanceBlockV1

Size: 427 bytes = 0x1ab
schema

binary layout for an importance block header

 
 
 
BLOCK_VERSION
byte[1]
const 1
 
 
 
BLOCK_TYPE
const IMPORTANCE (0x8243)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

block type

 
 
 
height

block height

 
 
 
timestamp

number of milliseconds elapsed since creation of nemesis block

 
 
 
difficulty

block difficulty

 
 
 
generation_hash_proof

generation hash proof

 
 
 
previous_block_hash

previous block hash

 
 
 
transactions_hash

hash of the transactions in this block

 
 
 
receipts_hash

hash of the receipts generated by this block

 
 
 
state_hash

hash of the global chain state at this block

 
 
 
beneficiary_address

beneficiary address designated by harvester

 
 
 
fee_multiplier

fee multiplier applied to block transactions

 
 
 
voting_eligible_accounts_count
byte[4]

number of voting eligible accounts

 
 
 
harvesting_​eligible_​accounts_​count
byte[8]

number of harvesting eligible accounts

 
 
 
total_voting_balance

total balance eligible for voting

 
 
 
previous_importance_block_hash

previous importance block hash

 
 
 
transactions

variable sized transaction data

FinalizationRound

Size: 8 bytes = 0x8
schema
catapult model

binary layout for finalization round

 
 
 
epoch

finalization epoch

 
 
 
point

finalization point

FinalizedBlockHeader

Size: 48 bytes = 0x30
schema

binary layout for finalized block header

 
 
 
round

finalization round

 
 
 
height

finalization height

 
 
 
hash

finalization hash

Receipt

Size: 8 bytes = 0x8
catapult model

Receipts provide proof for every state change not retrievable from the block.

 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

HarvestFeeReceipt

Size: 50 bytes = 0x32
schema

Receipt generated when transaction fees are credited to a block harvester.

 
 
 
RECEIPT_TYPE
const HARVEST_FEE (0x2143)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Modified mosaic.

 
 
 
target_address

Address of the affected account.

InflationReceipt

Size: 26 bytes = 0x1a
schema
catapult model

Network currency mosaics were created due to inflation.

 
 
 
RECEIPT_TYPE
const INFLATION (0x5143)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Created mosaic.

LockHashCreatedFeeReceipt

Size: 50 bytes = 0x32
schema

Receipt generated when hash lock is created.

 
 
 
RECEIPT_TYPE
const LOCK_HASH_CREATED (0x3148)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Modified mosaic.

 
 
 
target_address

Address of the affected account.

LockHashCompletedFeeReceipt

Size: 50 bytes = 0x32
schema

Receipt generated when hash lock is completed.

 
 
 
RECEIPT_TYPE
const LOCK_HASH_COMPLETED (0x2248)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Modified mosaic.

 
 
 
target_address

Address of the affected account.

LockHashExpiredFeeReceipt

Size: 50 bytes = 0x32
schema

Receipt generated when hash lock is expired.

 
 
 
RECEIPT_TYPE
const LOCK_HASH_EXPIRED (0x2348)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Modified mosaic.

 
 
 
target_address

Address of the affected account.

LockSecretCreatedFeeReceipt

Size: 50 bytes = 0x32
schema

Receipt generated when secret lock is created.

 
 
 
RECEIPT_TYPE
const LOCK_SECRET_CREATED (0x3152)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Modified mosaic.

 
 
 
target_address

Address of the affected account.

LockSecretCompletedFeeReceipt

Size: 50 bytes = 0x32
schema

Receipt generated when secret lock is completed.

 
 
 
RECEIPT_TYPE
const LOCK_SECRET_COMPLETED (0x2252)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Modified mosaic.

 
 
 
target_address

Address of the affected account.

LockSecretExpiredFeeReceipt

Size: 50 bytes = 0x32
schema

Receipt generated when secret lock is expired.

 
 
 
RECEIPT_TYPE
const LOCK_SECRET_EXPIRED (0x2352)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Modified mosaic.

 
 
 
target_address

Address of the affected account.

MosaicExpiredReceipt

Size: 18 bytes = 0x12
schema

Receipt generated when a mosaic expires.

 
 
 
RECEIPT_TYPE
const MOSAIC_EXPIRED (0x414d)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
artifact_id

Expiring mosaic id.

MosaicRentalFeeReceipt

Size: 74 bytes = 0x4a
schema

Receipt generated when a mosaic rental fee is paid.

 
 
 
RECEIPT_TYPE
const MOSAIC_RENTAL_FEE (0x124d)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Transferred mosaic

 
 
 
sender_address

Address of the sender account.

 
 
 
recipient_address

Address of the recipient account.

NamespaceExpiredReceipt

Size: 18 bytes = 0x12
schema

Receipt generated when a namespace expires.

 
 
 
RECEIPT_TYPE
const NAMESPACE_EXPIRED (0x414e)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
artifact_id

Expired namespace identifier.

NamespaceDeletedReceipt

Size: 18 bytes = 0x12
schema

Receipt generated when a namespace is deleted.

 
 
 
RECEIPT_TYPE
const NAMESPACE_DELETED (0x424e)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
artifact_id

Deleted namespace identifier.

NamespaceRentalFeeReceipt

Size: 74 bytes = 0x4a
schema

Receipt generated when a namespace rental fee is paid.

 
 
 
RECEIPT_TYPE
const NAMESPACE_RENTAL_FEE (0x134e)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
version
byte[2]

Receipt version.

 
 
 
type

Type of receipt.

 
 
 
mosaic

Transferred mosaic

 
 
 
sender_address

Address of the sender account.

 
 
 
recipient_address

Address of the recipient account.

ReceiptSource

Size: 8 bytes = 0x8
schema
catapult model

The transaction inside the block that triggered the receipt.

 
 
 
primary_id
byte[4]

Transaction primary source (e.g. index within the block).

 
 
 
secondary_id
byte[4]

Transaction secondary source (e.g. index within aggregate).

AddressResolutionEntry

Size: 32 bytes = 0x20
schema

Actual Address behind a NamespaceId at the time a transaction was confirmed.

 
 
 
source

Information about the transaction that triggered the receipt.

 
 
 
resolved_value

Resolved Address.

AddressResolutionStatement

Size: 28+ bytes = 0x1c+ (variable)
schema

An Address resolution statement links a namespace alias used in a transaction to the real address at the time of the transaction.

 
 
 
unresolved

Unresolved address.

 
 
 
resolution_entries_count
byte[4]

Number of resolution entries.

 
 
 
resolution_entries
AddressResolutionEntry​[resolution_entries_count]

Resolution entries.

MosaicResolutionEntry

Size: 16 bytes = 0x10
schema

Actual MosaicId behind a NamespaceId at the time a transaction was confirmed.

 
 
 
source

Information about the transaction that triggered the receipt.

 
 
 
resolved_value

Resolved MosaicId.

MosaicResolutionStatement

Size: 12+ bytes = 0xc+ (variable)
schema

A Mosaic resolution statement links a namespace alias used in a transaction to the real mosaic id at the time of the transaction.

 
 
 
unresolved

Unresolved mosaic.

 
 
 
resolution_entries_count
byte[4]

Number of resolution entries.

 
 
 
resolution_entries
MosaicResolutionEntry​[resolution_entries_count]

Resolution entries.

TransactionStatement

Size: 12+ bytes = 0xc+ (variable)
schema

Collection of receipts scoped to a single source (transaction or block).

 
 
 
primary_id
byte[4]

Transaction primary source (e.g. index within the block).

 
 
 
secondary_id
byte[4]

Transaction secondary source (e.g. index within aggregate).

 
 
 
receipt_count
byte[4]

Number of receipts.

 
 
 
receipts
Receipt​[receipt_count]

Receipts.

BlockStatement

Size: 12+ bytes = 0xc+ (variable)
schema
catapult model

Collection of statements scoped to a block.

 
 
 
transaction_statement_count
byte[4]

Number of transaction statements.

 
 
 
transaction_statements
TransactionStatement​[transaction_statement_count]

Transaction statements.

 
 
 
address_​resolution_​statement_​count
byte[4]

Number of address resolution statements.

 
 
 
address_resolution_statements
AddressResolutionStatement​[address_resolution_statement_count]

Address resolution statements.

 
 
 
mosaic_​resolution_​statement_​count
byte[4]

Number of mosaic resolution statements.

 
 
 
mosaic_resolution_statements
MosaicResolutionStatement​[mosaic_resolution_statement_count]

Mosaic resolution statements.

AccountKeyLinkTransactionV1

Size: 164 bytes = 0xa4
schema

This transaction is required for all accounts wanting to activate remote or delegated harvesting (V1, latest).
Announce an AccountKeyLinkTransactionV1 to delegate the account importance score to a proxy account.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_KEY_LINK (0x414c)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
linked_public_key

Linked public key.

 
 
 
link_action

Account link action.

EmbeddedAccountKeyLinkTransactionV1

Size: 84 bytes = 0x54
schema

Embedded version of AccountKeyLinkTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_KEY_LINK (0x414c)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
linked_public_key

Linked public key.

 
 
 
link_action

Account link action.

NodeKeyLinkTransactionV1

Size: 164 bytes = 0xa4
schema

This transaction is required for all accounts willing to activate delegated harvesting (V1, latest).
Announce a NodeKeyLinkTransactionV1 to link an account with a public key used by TLS to create sessions.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const NODE_KEY_LINK (0x424c)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
linked_public_key

Linked public key.

 
 
 
link_action

Account link action.

EmbeddedNodeKeyLinkTransactionV1

Size: 84 bytes = 0x54
schema

Embedded version of NodeKeyLinkTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const NODE_KEY_LINK (0x424c)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
linked_public_key

Linked public key.

 
 
 
link_action

Account link action.

Cosignature

Size: 104 bytes = 0x68
schema
catapult model

Cosignature attached to an AggregateCompleteTransactionV1 or AggregateBondedTransactionV1.

 
 
 
version
byte[8]

Version.

 
 
 
signer_public_key

Cosigner public key.

 
 
 
signature

Transaction signature.

DetachedCosignature

Size: 136 bytes = 0x88
schema
catapult model

Cosignature detached from an AggregateCompleteTransactionV1 or AggregateBondedTransactionV1.

 
 
 
version
byte[8]

Version.

 
 
 
signer_public_key

Cosigner public key.

 
 
 
signature

Transaction signature.

 
 
 
parent_hash

Hash of the AggregateBondedTransactionV1 that is signed by this cosignature.

AggregateCompleteTransactionV1

Size: 171+ bytes = 0xab+ (variable)
schema

Send transactions in batches to different accounts (V1, deprecated).
Use this transaction when all required signatures are available when the transaction is created.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const AGGREGATE_COMPLETE (0x4141)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
transactions_hash

Hash of the aggregate's transaction.

 
 
 
payload_size
byte[4]

Transaction payload size in bytes.
This is the total number of bytes occupied by all embedded transactions, including any padding present.

 
 
 
aggregate_​transaction_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align end of AggregateTransactionHeader to an 8-byte boundary.

 
 
 
transactions
EmbeddedTransaction​[payload_size]

Embedded transaction data.
Transactions are variable-sized and the total payload size is in bytes.
Embedded transactions cannot be aggregates.

 
 
 
cosignatures

Cosignatures data.
Fills up remaining body space after transactions.

AggregateCompleteTransactionV2

Size: 171+ bytes = 0xab+ (variable)
schema

Send transactions in batches to different accounts (V2, deprecated).
Use this transaction when all required signatures are available when the transaction is created.

 
 
 
TRANSACTION_VERSION
byte[1]
const 2
 
 
 
TRANSACTION_TYPE
const AGGREGATE_COMPLETE (0x4141)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
transactions_hash

Hash of the aggregate's transaction.

 
 
 
payload_size
byte[4]

Transaction payload size in bytes.
This is the total number of bytes occupied by all embedded transactions, including any padding present.

 
 
 
aggregate_​transaction_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align end of AggregateTransactionHeader to an 8-byte boundary.

 
 
 
transactions
EmbeddedTransaction​[payload_size]

Embedded transaction data.
Transactions are variable-sized and the total payload size is in bytes.
Embedded transactions cannot be aggregates.

 
 
 
cosignatures

Cosignatures data.
Fills up remaining body space after transactions.

AggregateCompleteTransactionV3

Size: 171+ bytes = 0xab+ (variable)
schema

Send transactions in batches to different accounts (V3, latest).
Use this transaction when all required signatures are available when the transaction is created.

 
 
 
TRANSACTION_VERSION
byte[1]
const 3
 
 
 
TRANSACTION_TYPE
const AGGREGATE_COMPLETE (0x4141)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
transactions_hash

Hash of the aggregate's transaction.

 
 
 
payload_size
byte[4]

Transaction payload size in bytes.
This is the total number of bytes occupied by all embedded transactions, including any padding present.

 
 
 
aggregate_​transaction_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align end of AggregateTransactionHeader to an 8-byte boundary.

 
 
 
transactions
EmbeddedTransaction​[payload_size]

Embedded transaction data.
Transactions are variable-sized and the total payload size is in bytes.
Embedded transactions cannot be aggregates.

 
 
 
cosignatures

Cosignatures data.
Fills up remaining body space after transactions.

AggregateBondedTransactionV1

Size: 171+ bytes = 0xab+ (variable)
schema

Propose an arrangement of transactions between different accounts (V1, deprecated).
Use this transaction when not all required signatures are available when the transaction is created.
Missing signatures must be provided using a Cosignature or DetachedCosignature.
To prevent spam attacks, before trying to announce this transaction a HashLockTransactionV1 must be successfully announced and confirmed.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const AGGREGATE_BONDED (0x4241)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
transactions_hash

Hash of the aggregate's transaction.

 
 
 
payload_size
byte[4]

Transaction payload size in bytes.
This is the total number of bytes occupied by all embedded transactions, including any padding present.

 
 
 
aggregate_​transaction_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align end of AggregateTransactionHeader to an 8-byte boundary.

 
 
 
transactions
EmbeddedTransaction​[payload_size]

Embedded transaction data.
Transactions are variable-sized and the total payload size is in bytes.
Embedded transactions cannot be aggregates.

 
 
 
cosignatures

Cosignatures data.
Fills up remaining body space after transactions.

AggregateBondedTransactionV2

Size: 171+ bytes = 0xab+ (variable)
schema

Propose an arrangement of transactions between different accounts (V2, deprecated).
Use this transaction when not all required signatures are available when the transaction is created.
Missing signatures must be provided using a Cosignature or DetachedCosignature.
To prevent spam attacks, before trying to announce this transaction a HashLockTransactionV1 must be successfully announced and confirmed.

 
 
 
TRANSACTION_VERSION
byte[1]
const 2
 
 
 
TRANSACTION_TYPE
const AGGREGATE_BONDED (0x4241)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
transactions_hash

Hash of the aggregate's transaction.

 
 
 
payload_size
byte[4]

Transaction payload size in bytes.
This is the total number of bytes occupied by all embedded transactions, including any padding present.

 
 
 
aggregate_​transaction_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align end of AggregateTransactionHeader to an 8-byte boundary.

 
 
 
transactions
EmbeddedTransaction​[payload_size]

Embedded transaction data.
Transactions are variable-sized and the total payload size is in bytes.
Embedded transactions cannot be aggregates.

 
 
 
cosignatures

Cosignatures data.
Fills up remaining body space after transactions.

AggregateBondedTransactionV3

Size: 171+ bytes = 0xab+ (variable)
schema

Propose an arrangement of transactions between different accounts (V3, latest).
Use this transaction when not all required signatures are available when the transaction is created.
Missing signatures must be provided using a Cosignature or DetachedCosignature.
To prevent spam attacks, before trying to announce this transaction a HashLockTransactionV1 must be successfully announced and confirmed.

 
 
 
TRANSACTION_VERSION
byte[1]
const 3
 
 
 
TRANSACTION_TYPE
const AGGREGATE_BONDED (0x4241)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
transactions_hash

Hash of the aggregate's transaction.

 
 
 
payload_size
byte[4]

Transaction payload size in bytes.
This is the total number of bytes occupied by all embedded transactions, including any padding present.

 
 
 
aggregate_​transaction_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align end of AggregateTransactionHeader to an 8-byte boundary.

 
 
 
transactions
EmbeddedTransaction​[payload_size]

Embedded transaction data.
Transactions are variable-sized and the total payload size is in bytes.
Embedded transactions cannot be aggregates.

 
 
 
cosignatures

Cosignatures data.
Fills up remaining body space after transactions.

VotingKeyLinkTransactionV1

Size: 172 bytes = 0xac
schema

Link an account with a public key required for finalization voting (V1, latest).
This transaction is required for node operators wanting to vote for finalization.
Announce a VotingKeyLinkTransactionV1 to associate a voting key with an account during a fixed period. An account can be linked to up to 3 different voting keys at the same time.
The recommended production setting is to always have at least 2 linked keys with different endPoint values to ensure a key is registered after the first one expires.
See more details in the manual node setup guide.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const VOTING_KEY_LINK (0x4143)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
linked_public_key

Linked voting public key.

 
 
 
start_epoch

Starting finalization epoch.

 
 
 
end_epoch

Ending finalization epoch.

 
 
 
link_action

Account link action.

EmbeddedVotingKeyLinkTransactionV1

Size: 92 bytes = 0x5c
schema

Embedded version of VotingKeyLinkTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const VOTING_KEY_LINK (0x4143)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
linked_public_key

Linked voting public key.

 
 
 
start_epoch

Starting finalization epoch.

 
 
 
end_epoch

Ending finalization epoch.

 
 
 
link_action

Account link action.

VrfKeyLinkTransactionV1

Size: 164 bytes = 0xa4
schema

Link an account with a VRF public key required for harvesting (V1, latest).
Announce a VrfKeyLinkTransactionV1 to link an account with a VRF public key. The linked key is used to randomize block production and leader/participant selection.
This transaction is required for all accounts wishing to harvest.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const VRF_KEY_LINK (0x4243)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
linked_public_key

Linked VRF public key.

 
 
 
link_action

Account link action.

EmbeddedVrfKeyLinkTransactionV1

Size: 84 bytes = 0x54
schema

Embedded version of VrfKeyLinkTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const VRF_KEY_LINK (0x4243)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
linked_public_key

Linked VRF public key.

 
 
 
link_action

Account link action.

HashLockTransactionV1

Size: 187 bytes = 0xbb
schema

Lock a deposit needed to announce an AggregateBondedTransactionV1 (V1, latest).
An AggregateBondedTransactionV1 consumes network resources as it is stored in every node's partial cache while it waits to be fully signed. To avoid spam attacks a HashLockTransactionV1 must be announced and confirmed before an AggregateBondedTransactionV1 can be announced. The HashLockTransactionV1 locks a certain amount of funds (10 XYM by default) until the aggregate is signed.
Upon completion of the aggregate, the locked funds become available again to the account that signed the HashLockTransactionV1.
If the lock expires before the aggregate is signed by all cosignatories (**48h by default), the locked funds become a reward collected by the block harvester at the height where the lock expires.

Note: It is not necessary to sign the aggregate and its HashLockTransactionV1 with the same account. For example, if Bob wants to announce an aggregate and does not have enough funds to announce a HashLockTransactionV1, he can ask Alice to announce the lock transaction for him by sharing the signed AggregateTransaction hash.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const HASH_LOCK (0x4148)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
mosaic

Locked mosaic.

 
 
 
duration

Number of blocks for which a lock should be valid.
The default maximum is 48h (See the maxHashLockDuration network property).

 
 
 
hash

Hash of the AggregateBondedTransactionV1 to be confirmed before unlocking the mosaics.

EmbeddedHashLockTransactionV1

Size: 107 bytes = 0x6b
schema

Embedded version of HashLockTransactionV1.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const HASH_LOCK (0x4148)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
mosaic

Locked mosaic.

 
 
 
duration

Number of blocks for which a lock should be valid.
The default maximum is 48h (See the maxHashLockDuration network property).

 
 
 
hash

Hash of the AggregateBondedTransactionV1 to be confirmed before unlocking the mosaics.

SecretLockTransactionV1

Size: 212 bytes = 0xd4
schema

Start a token swap between different chains (V1, latest).
Use a SecretLockTransactionV1 to transfer mosaics between two accounts. The mosaics sent remain locked until a valid SecretProofTransactionV1 unlocks them.
The default expiration date is 365 days after announcement (See the maxSecretLockDuration network property). If the lock expires before a valid SecretProofTransactionV1 is announced the locked amount goes back to the initiator of the SecretLockTransactionV1.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const SECRET_LOCK (0x4152)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
recipient_address

Address that receives the funds once successfully unlocked by a SecretProofTransactionV1.

 
 
 
secret

Hashed proof.

 
 
 
mosaic

Locked mosaics.

 
 
 
duration

Number of blocks to wait for the SecretProofTransactionV1.

 
 
 
hash_algorithm

Algorithm used to hash the proof.

EmbeddedSecretLockTransactionV1

Size: 132 bytes = 0x84
schema

Embedded version of SecretLockTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const SECRET_LOCK (0x4152)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
recipient_address

Address that receives the funds once successfully unlocked by a SecretProofTransactionV1.

 
 
 
secret

Hashed proof.

 
 
 
mosaic

Locked mosaics.

 
 
 
duration

Number of blocks to wait for the SecretProofTransactionV1.

 
 
 
hash_algorithm

Algorithm used to hash the proof.

SecretProofTransactionV1

Size: 190+ bytes = 0xbe+ (variable)
schema

Conclude a token swap between different chains (V1, latest).
Use a SecretProofTransactionV1 to unlock the funds locked by a SecretLockTransactionV1.
The transaction must prove knowing the proof that unlocks the mosaics.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const SECRET_PROOF (0x4252)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
recipient_address

Address that receives the funds once unlocked.

 
 
 
secret

Hashed proof.

 
 
 
proof_size
byte[2]

Proof size in bytes

 
 
 
hash_algorithm

Algorithm used to hash the proof.

 
 
 
proof
byte[proof_size]

Original random set of bytes that were hashed.

EmbeddedSecretProofTransactionV1

Size: 110+ bytes = 0x6e+ (variable)
schema

Embedded version of SecretProofTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const SECRET_PROOF (0x4252)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
recipient_address

Address that receives the funds once unlocked.

 
 
 
secret

Hashed proof.

 
 
 
proof_size
byte[2]

Proof size in bytes

 
 
 
hash_algorithm

Algorithm used to hash the proof.

 
 
 
proof
byte[proof_size]

Original random set of bytes that were hashed.

AccountMetadataTransactionV1

Size: 167+ bytes = 0xa7+ (variable)
schema

Associate a key-value state (metadata) to an account (V1, latest).

Note: This transaction must always be wrapped in an AggregateTransaction so that a cosignature from target_address can be provided. Without this cosignature the transaction is invalid.
Compare to MosaicMetadataTransactionV1 and NamespaceMetadataTransactionV1.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_METADATA (0x4144)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
target_address

Account whose metadata should be modified.

 
 
 
scoped_metadata_key
byte[8]

Metadata key scoped to source, target and type.

 
 
 
value_size_delta
byte[2]

Change in value size in bytes, compared to previous size.

 
 
 
value_size
byte[2]

Size in bytes of the value array.

 
 
 
value
byte[value_size]

Difference between existing value and new value.
Note: When there is no existing value, this array is directly used and value_size_delta==value_size.
Note: When there is an existing value, the new value is the byte-wise XOR of the previous value and this array.

EmbeddedAccountMetadataTransactionV1

Size: 87+ bytes = 0x57+ (variable)
schema

Embedded version of AccountMetadataTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_METADATA (0x4144)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
target_address

Account whose metadata should be modified.

 
 
 
scoped_metadata_key
byte[8]

Metadata key scoped to source, target and type.

 
 
 
value_size_delta
byte[2]

Change in value size in bytes, compared to previous size.

 
 
 
value_size
byte[2]

Size in bytes of the value array.

 
 
 
value
byte[value_size]

Difference between existing value and new value.
Note: When there is no existing value, this array is directly used and value_size_delta==value_size.
Note: When there is an existing value, the new value is the byte-wise XOR of the previous value and this array.

MosaicMetadataTransactionV1

Size: 175+ bytes = 0xaf+ (variable)
schema

Associate a key-value state (metadata) to a mosaic (V1, latest).
Compare to AccountMetadataTransactionV1 and NamespaceMetadataTransactionV1.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_METADATA (0x4244)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
target_address

Account owning the mosaic whose metadata should be modified.

 
 
 
scoped_metadata_key
byte[8]

Metadata key scoped to source, target and type.

 
 
 
target_mosaic_id

Mosaic whose metadata should be modified.

 
 
 
value_size_delta
byte[2]

Change in value size in bytes, compared to previous size.

 
 
 
value_size
byte[2]

Size in bytes of the value array.

 
 
 
value
byte[value_size]

Difference between existing value and new value.
Note: When there is no existing value, this array is directly used and value_size_delta==value_size.
Note: When there is an existing value, the new value is the byte-wise XOR of the previous value and this array.

EmbeddedMosaicMetadataTransactionV1

Size: 95+ bytes = 0x5f+ (variable)
schema

Embedded version of MosaicMetadataTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_METADATA (0x4244)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
target_address

Account owning the mosaic whose metadata should be modified.

 
 
 
scoped_metadata_key
byte[8]

Metadata key scoped to source, target and type.

 
 
 
target_mosaic_id

Mosaic whose metadata should be modified.

 
 
 
value_size_delta
byte[2]

Change in value size in bytes, compared to previous size.

 
 
 
value_size
byte[2]

Size in bytes of the value array.

 
 
 
value
byte[value_size]

Difference between existing value and new value.
Note: When there is no existing value, this array is directly used and value_size_delta==value_size.
Note: When there is an existing value, the new value is the byte-wise XOR of the previous value and this array.

NamespaceMetadataTransactionV1

Size: 175+ bytes = 0xaf+ (variable)
schema

Associate a key-value state (metadata) to a namespace (V1, latest).
Compare to AccountMetadataTransactionV1 and MosaicMetadataTransactionV1.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const NAMESPACE_METADATA (0x4344)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
target_address

Account owning the namespace whose metadata should be modified.

 
 
 
scoped_metadata_key
byte[8]

Metadata key scoped to source, target and type.

 
 
 
target_namespace_id

Namespace whose metadata should be modified.

 
 
 
value_size_delta
byte[2]

Change in value size in bytes, compared to previous size.

 
 
 
value_size
byte[2]

Size in bytes of the value array.

 
 
 
value
byte[value_size]

Difference between existing value and new value.
Note: When there is no existing value, this array is directly used and value_size_delta==value_size.
Note: When there is an existing value, the new value is the byte-wise XOR of the previous value and this array.

EmbeddedNamespaceMetadataTransactionV1

Size: 95+ bytes = 0x5f+ (variable)
schema

Embedded version of NamespaceMetadataTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const NAMESPACE_METADATA (0x4344)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
target_address

Account owning the namespace whose metadata should be modified.

 
 
 
scoped_metadata_key
byte[8]

Metadata key scoped to source, target and type.

 
 
 
target_namespace_id

Namespace whose metadata should be modified.

 
 
 
value_size_delta
byte[2]

Change in value size in bytes, compared to previous size.

 
 
 
value_size
byte[2]

Size in bytes of the value array.

 
 
 
value
byte[value_size]

Difference between existing value and new value.
Note: When there is no existing value, this array is directly used and value_size_delta==value_size.
Note: When there is an existing value, the new value is the byte-wise XOR of the previous value and this array.

MosaicDefinitionTransactionV1

Size: 153 bytes = 0x99
schema

Create a new mosaic (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_DEFINITION (0x414d)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
id

Unique mosaic identifier obtained from the generator account's public key and the nonce.
The SDK's can take care of generating this ID for you.

 
 
 
duration

Mosaic duration expressed in blocks. If set to 0, the mosaic never expires.

 
 
 
nonce

Random nonce used to generate the mosaic id.

 
 
 
flags

Mosaic flags.

 
 
 
divisibility
byte[1]

Mosaic divisibility.

EmbeddedMosaicDefinitionTransactionV1

Size: 73 bytes = 0x49
schema

Embedded version of MosaicDefinitionTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_DEFINITION (0x414d)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
id

Unique mosaic identifier obtained from the generator account's public key and the nonce.
The SDK's can take care of generating this ID for you.

 
 
 
duration

Mosaic duration expressed in blocks. If set to 0, the mosaic never expires.

 
 
 
nonce

Random nonce used to generate the mosaic id.

 
 
 
flags

Mosaic flags.

 
 
 
divisibility
byte[1]

Mosaic divisibility.

MosaicSupplyChangeTransactionV1

Size: 148 bytes = 0x94
schema

Change the total supply of a mosaic (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_SUPPLY_CHANGE (0x424d)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
mosaic_id

Affected mosaic identifier.

 
 
 
delta

Change amount. It cannot be negative, use the action field to indicate if this amount should be added or subtracted from the current supply.

 
 
 
action

Supply change action.

EmbeddedMosaicSupplyChangeTransactionV1

Size: 68 bytes = 0x44
schema

Embedded version of MosaicSupplyChangeTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_SUPPLY_CHANGE (0x424d)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
mosaic_id

Affected mosaic identifier.

 
 
 
delta

Change amount. It cannot be negative, use the action field to indicate if this amount should be added or subtracted from the current supply.

 
 
 
action

Supply change action.

MosaicSupplyRevocationTransactionV1

Size: 171 bytes = 0xab
schema

Revoke mosaic (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_SUPPLY_REVOCATION (0x434d)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
source_address

Address from which tokens should be revoked.

 
 
 
mosaic

Revoked mosaic and amount.

EmbeddedMosaicSupplyRevocationTransactionV1

Size: 91 bytes = 0x5b
schema

Embedded version of MosaicSupplyRevocationTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_SUPPLY_REVOCATION (0x434d)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
source_address

Address from which tokens should be revoked.

 
 
 
mosaic

Revoked mosaic and amount.

MultisigAccountModificationTransactionV1

Size: 139+ bytes = 0x8b+ (variable)
schema

Create or modify a multi-signature account (V1, latest).
This transaction allows you to: - Transform a regular account into a multisig account. - Change the configurable properties of a multisig account. - Add or delete cosignatories from a multisig account (removing all cosignatories turns a multisig account into a regular account again).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MULTISIG_ACCOUNT_MODIFICATION (0x4155)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
min_removal_delta
byte[1]

Relative change to the minimum number of cosignatures required when removing a cosignatory.
E.g., when moving from 0 to 2 cosignatures this number would be 2. When moving from 4 to 3 cosignatures, the number would be -1.

 
 
 
min_approval_delta
byte[1]

Relative change to the minimum number of cosignatures required when approving a transaction.
E.g., when moving from 0 to 2 cosignatures this number would be 2. When moving from 4 to 3 cosignatures, the number would be -1.

 
 
 
address_additions_count
byte[1]

Number of cosignatory address additions.

 
 
 
address_deletions_count
byte[1]

Number of cosignatory address deletions.

 
 
 
multisig_​account_​modification_​transaction_​body_​reserved_​1
byte[4]
reserved 0

Reserved padding to align addressAdditions to an 8-byte boundary.

 
 
 
address_additions
UnresolvedAddress​[address_additions_count]

Cosignatory address additions.
All accounts in this list will be able to cosign transactions on behalf of the multisig account. The number of required cosignatures depends on the configured minimum approval and minimum removal values.

 
 
 
address_deletions
UnresolvedAddress​[address_deletions_count]

Cosignatory address deletions.
All accounts in this list will stop being able to cosign transactions on behalf of the multisig account. A transaction containing any address in this array requires a number of cosignatures at least equal to the minimum removal value.

EmbeddedMultisigAccountModificationTransactionV1

Size: 59+ bytes = 0x3b+ (variable)
schema

Embedded version of MultisigAccountModificationTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MULTISIG_ACCOUNT_MODIFICATION (0x4155)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
min_removal_delta
byte[1]

Relative change to the minimum number of cosignatures required when removing a cosignatory.
E.g., when moving from 0 to 2 cosignatures this number would be 2. When moving from 4 to 3 cosignatures, the number would be -1.

 
 
 
min_approval_delta
byte[1]

Relative change to the minimum number of cosignatures required when approving a transaction.
E.g., when moving from 0 to 2 cosignatures this number would be 2. When moving from 4 to 3 cosignatures, the number would be -1.

 
 
 
address_additions_count
byte[1]

Number of cosignatory address additions.

 
 
 
address_deletions_count
byte[1]

Number of cosignatory address deletions.

 
 
 
multisig_​account_​modification_​transaction_​body_​reserved_​1
byte[4]
reserved 0

Reserved padding to align addressAdditions to an 8-byte boundary.

 
 
 
address_additions
UnresolvedAddress​[address_additions_count]

Cosignatory address additions.
All accounts in this list will be able to cosign transactions on behalf of the multisig account. The number of required cosignatures depends on the configured minimum approval and minimum removal values.

 
 
 
address_deletions
UnresolvedAddress​[address_deletions_count]

Cosignatory address deletions.
All accounts in this list will stop being able to cosign transactions on behalf of the multisig account. A transaction containing any address in this array requires a number of cosignatures at least equal to the minimum removal value.

AddressAliasTransactionV1

Size: 164 bytes = 0xa4
schema

Attach or detach a namespace (alias) to an account address (V1, latest).
A namespace can be assigned to any account present in the network (this is, an account which has received at least one transaction).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ADDRESS_ALIAS (0x424e)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
namespace_id

Identifier of the namespace that will become (or stop being) an alias for the address.

 
 
 
address

Aliased address.

 
 
 
alias_action

Alias action.

EmbeddedAddressAliasTransactionV1

Size: 84 bytes = 0x54
schema

Embedded version of AddressAliasTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ADDRESS_ALIAS (0x424e)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
namespace_id

Identifier of the namespace that will become (or stop being) an alias for the address.

 
 
 
address

Aliased address.

 
 
 
alias_action

Alias action.

MosaicAliasTransactionV1

Size: 148 bytes = 0x94
schema

Attach or detach a namespace to a Mosaic.(V1, latest)
Setting an alias to a mosaic is only possible if the account announcing this transaction has also created the namespace and the mosaic involved.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_ALIAS (0x434e)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
namespace_id

Identifier of the namespace that will become (or stop being) an alias for the Mosaic.

 
 
 
mosaic_id

Aliased mosaic identifier.

 
 
 
alias_action

Alias action.

EmbeddedMosaicAliasTransactionV1

Size: 68 bytes = 0x44
schema

Embedded version of MosaicAliasTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_ALIAS (0x434e)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
namespace_id

Identifier of the namespace that will become (or stop being) an alias for the Mosaic.

 
 
 
mosaic_id

Aliased mosaic identifier.

 
 
 
alias_action

Alias action.

NamespaceRegistrationTransactionV1

Size: 141+ bytes = 0x8d+ (variable)
schema

Register (or renew a registration for) a namespace (V1, latest).
Namespaces help keep assets organized.

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const NAMESPACE_REGISTRATION (0x414e)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
duration

Number of confirmed blocks you would like to rent the namespace for. Required for root namespaces.

This field is only present if:
registration_type equals ROOT
 
 
 
parent_id

Parent namespace identifier. Required for sub-namespaces.

This field is only present if:
registration_type equals CHILD
 
 
 
id

Namespace identifier.

 
 
 
registration_type

Namespace registration type.

 
 
 
name_size
byte[1]

Namespace name size in bytes.

 
 
 
name
byte[name_size]

Namespace name.

EmbeddedNamespaceRegistrationTransactionV1

Size: 61+ bytes = 0x3d+ (variable)
schema

Embedded version of NamespaceRegistrationTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const NAMESPACE_REGISTRATION (0x414e)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
duration

Number of confirmed blocks you would like to rent the namespace for. Required for root namespaces.

This field is only present if:
registration_type equals ROOT
 
 
 
parent_id

Parent namespace identifier. Required for sub-namespaces.

This field is only present if:
registration_type equals CHILD
 
 
 
id

Namespace identifier.

 
 
 
registration_type

Namespace registration type.

 
 
 
name_size
byte[1]

Namespace name size in bytes.

 
 
 
name
byte[name_size]

Namespace name.

AccountAddressRestrictionTransactionV1

Size: 139+ bytes = 0x8b+ (variable)
schema

Allow or block incoming and outgoing transactions for a given a set of addresses (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_ADDRESS_RESTRICTION (0x4150)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
restriction_flags

Type of restriction being applied to the listed addresses.

 
 
 
restriction_additions_count
byte[1]

Number of addresses being added.

 
 
 
restriction_deletions_count
byte[1]

Number of addresses being removed.

 
 
 
account_​restriction_​transaction_​body_​reserved_​1
byte[4]
reserved 0

Reserved padding to align restriction_additions to an 8-byte boundary.

 
 
 
restriction_additions
UnresolvedAddress​[restriction_additions_count]

Array of account addresses being added to the restricted list.

 
 
 
restriction_deletions
UnresolvedAddress​[restriction_deletions_count]

Array of account addresses being removed from the restricted list.

EmbeddedAccountAddressRestrictionTransactionV1

Size: 59+ bytes = 0x3b+ (variable)
schema

Embedded version of AccountAddressRestrictionTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_ADDRESS_RESTRICTION (0x4150)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
restriction_flags

Type of restriction being applied to the listed addresses.

 
 
 
restriction_additions_count
byte[1]

Number of addresses being added.

 
 
 
restriction_deletions_count
byte[1]

Number of addresses being removed.

 
 
 
account_​restriction_​transaction_​body_​reserved_​1
byte[4]
reserved 0

Reserved padding to align restriction_additions to an 8-byte boundary.

 
 
 
restriction_additions
UnresolvedAddress​[restriction_additions_count]

Array of account addresses being added to the restricted list.

 
 
 
restriction_deletions
UnresolvedAddress​[restriction_deletions_count]

Array of account addresses being removed from the restricted list.

AccountMosaicRestrictionTransactionV1

Size: 139+ bytes = 0x8b+ (variable)
schema

Allow or block incoming transactions containing a given set of mosaics (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_MOSAIC_RESTRICTION (0x4250)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
restriction_flags

Type of restriction being applied to the listed mosaics.

 
 
 
restriction_additions_count
byte[1]

Number of mosaics being added.

 
 
 
restriction_deletions_count
byte[1]

Number of mosaics being removed.

 
 
 
account_​restriction_​transaction_​body_​reserved_​1
byte[4]
reserved 0

Reserved padding to align restriction_additions to an 8-byte boundary.

 
 
 
restriction_additions
UnresolvedMosaicId​[restriction_additions_count]

Array of mosaics being added to the restricted list.

 
 
 
restriction_deletions
UnresolvedMosaicId​[restriction_deletions_count]

Array of mosaics being removed from the restricted list.

EmbeddedAccountMosaicRestrictionTransactionV1

Size: 59+ bytes = 0x3b+ (variable)
schema

Embedded version of AccountMosaicRestrictionTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_MOSAIC_RESTRICTION (0x4250)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
restriction_flags

Type of restriction being applied to the listed mosaics.

 
 
 
restriction_additions_count
byte[1]

Number of mosaics being added.

 
 
 
restriction_deletions_count
byte[1]

Number of mosaics being removed.

 
 
 
account_​restriction_​transaction_​body_​reserved_​1
byte[4]
reserved 0

Reserved padding to align restriction_additions to an 8-byte boundary.

 
 
 
restriction_additions
UnresolvedMosaicId​[restriction_additions_count]

Array of mosaics being added to the restricted list.

 
 
 
restriction_deletions
UnresolvedMosaicId​[restriction_deletions_count]

Array of mosaics being removed from the restricted list.

AccountOperationRestrictionTransactionV1

Size: 139+ bytes = 0x8b+ (variable)
schema

Allow or block outgoing transactions depending on their transaction type (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_OPERATION_RESTRICTION (0x4350)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
restriction_flags

Type of restriction being applied to the listed transaction types.

 
 
 
restriction_additions_count
byte[1]

Number of transaction types being added.

 
 
 
restriction_deletions_count
byte[1]

Number of transaction types being removed.

 
 
 
account_​restriction_​transaction_​body_​reserved_​1
byte[4]
reserved 0

Reserved padding to align restriction_additions to an 8-byte boundary.

 
 
 
restriction_additions
TransactionType​[restriction_additions_count]

Array of transaction types being added to the restricted list.

 
 
 
restriction_deletions
TransactionType​[restriction_deletions_count]

Array of transaction types being rtemoved from the restricted list.

EmbeddedAccountOperationRestrictionTransactionV1

Size: 59+ bytes = 0x3b+ (variable)
schema

Embedded version of AccountOperationRestrictionTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const ACCOUNT_OPERATION_RESTRICTION (0x4350)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
restriction_flags

Type of restriction being applied to the listed transaction types.

 
 
 
restriction_additions_count
byte[1]

Number of transaction types being added.

 
 
 
restriction_deletions_count
byte[1]

Number of transaction types being removed.

 
 
 
account_​restriction_​transaction_​body_​reserved_​1
byte[4]
reserved 0

Reserved padding to align restriction_additions to an 8-byte boundary.

 
 
 
restriction_additions
TransactionType​[restriction_additions_count]

Array of transaction types being added to the restricted list.

 
 
 
restriction_deletions
TransactionType​[restriction_deletions_count]

Array of transaction types being rtemoved from the restricted list.

MosaicAddressRestrictionTransactionV1

Size: 187 bytes = 0xbb
schema

Set address specific rules to transfer a restrictable mosaic (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_ADDRESS_RESTRICTION (0x4251)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
mosaic_id

Identifier of the mosaic to which the restriction applies.

 
 
 
restriction_key
byte[8]

Restriction key.

 
 
 
previous_restriction_value
byte[8]

Previous restriction value. Set previousRestrictionValue to FFFFFFFFFFFFFFFF if the target address does not have a previous restriction value for this mosaic id and restriction key.

 
 
 
new_restriction_value
byte[8]

New restriction value.

 
 
 
target_address

Address being restricted.

EmbeddedMosaicAddressRestrictionTransactionV1

Size: 107 bytes = 0x6b
schema

Embedded version of MosaicAddressRestrictionTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_ADDRESS_RESTRICTION (0x4251)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
mosaic_id

Identifier of the mosaic to which the restriction applies.

 
 
 
restriction_key
byte[8]

Restriction key.

 
 
 
previous_restriction_value
byte[8]

Previous restriction value. Set previousRestrictionValue to FFFFFFFFFFFFFFFF if the target address does not have a previous restriction value for this mosaic id and restriction key.

 
 
 
new_restriction_value
byte[8]

New restriction value.

 
 
 
target_address

Address being restricted.

MosaicGlobalRestrictionTransactionV1

Size: 173 bytes = 0xad
schema

Set global rules to transfer a restrictable mosaic (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_GLOBAL_RESTRICTION (0x4151)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
mosaic_id

Identifier of the mosaic being restricted. The mosaic creator must be the signer of the transaction.

 
 
 
reference_mosaic_id

Identifier of the mosaic providing the restriction key. The mosaic global restriction for the mosaic identifier depends on global restrictions set on the reference mosaic. Set reference_mosaic_id to 0 if the mosaic giving the restriction equals the mosaic_id.

 
 
 
restriction_key
byte[8]

Restriction key relative to the reference mosaic identifier.

 
 
 
previous_restriction_value
byte[8]

Previous restriction value.

 
 
 
new_restriction_value
byte[8]

New restriction value.

 
 
 
previous_restriction_type

Previous restriction type.

 
 
 
new_restriction_type

New restriction type.

EmbeddedMosaicGlobalRestrictionTransactionV1

Size: 93 bytes = 0x5d
schema

Embedded version of MosaicGlobalRestrictionTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const MOSAIC_GLOBAL_RESTRICTION (0x4151)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
mosaic_id

Identifier of the mosaic being restricted. The mosaic creator must be the signer of the transaction.

 
 
 
reference_mosaic_id

Identifier of the mosaic providing the restriction key. The mosaic global restriction for the mosaic identifier depends on global restrictions set on the reference mosaic. Set reference_mosaic_id to 0 if the mosaic giving the restriction equals the mosaic_id.

 
 
 
restriction_key
byte[8]

Restriction key relative to the reference mosaic identifier.

 
 
 
previous_restriction_value
byte[8]

Previous restriction value.

 
 
 
new_restriction_value
byte[8]

New restriction value.

 
 
 
previous_restriction_type

Previous restriction type.

 
 
 
new_restriction_type

New restriction type.

TransferTransactionV1

Size: 163+ bytes = 0xa3+ (variable)
schema

Send mosaics and messages between two accounts (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const TRANSFER (0x4154)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
verifiable_​entity_​header_​reserved_​1
byte[4]
reserved 0

Reserved padding to align Signature to an 8-byte boundary.

 
 
 
signature

Entity's signature generated by the signing account.

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
fee

transaction fee

 
 
 
deadline

transaction deadline

 
 
 
recipient_address

recipient address

 
 
 
message_size
byte[2]

size of attached message

 
 
 
mosaics_count
byte[1]

number of attached mosaics

 
 
 
transfer_​transaction_​body_​reserved_​1
byte[1]
reserved 0

reserved padding to align mosaics on 8-byte boundary

 
 
 
transfer_​transaction_​body_​reserved_​2
byte[4]
reserved 0

reserved padding to align mosaics on 8-byte boundary

 
 
 
mosaics
UnresolvedMosaic​[mosaics_count]

attached mosaics

 
 
 
message
byte[message_size]

attached message

EmbeddedTransferTransactionV1

Size: 83+ bytes = 0x53+ (variable)
schema

Embedded version of TransferTransactionV1 (V1, latest).

 
 
 
TRANSACTION_VERSION
byte[1]
const 1
 
 
 
TRANSACTION_TYPE
const TRANSFER (0x4154)
 
 
 
size
byte[4]

Entity size in bytes.
This size includes the header and the full payload of the entity. I.e, the size field matches the size reported in the structure documentation (plus the variable part, if there is any).

 
 
 
embedded_​transaction_​header_​reserved_​1
byte[4]
reserved 0

reserved padding to align end of EmbeddedTransactionHeader on 8-byte boundary

 
 
 
signer_public_key

Public key of the signer of the entity.

 
 
 
entity_body_reserved_1
byte[4]
reserved 0

Reserved padding to align end of EntityBody to an 8-byte boundary.

 
 
 
version
byte[1]

Version of this structure.

 
 
 
network

Network on which this entity was created.

 
 
 
type

transaction type

 
 
 
recipient_address

recipient address

 
 
 
message_size
byte[2]

size of attached message

 
 
 
mosaics_count
byte[1]

number of attached mosaics

 
 
 
transfer_​transaction_​body_​reserved_​1
byte[1]
reserved 0

reserved padding to align mosaics on 8-byte boundary

 
 
 
transfer_​transaction_​body_​reserved_​2
byte[4]
reserved 0

reserved padding to align mosaics on 8-byte boundary

 
 
 
mosaics
UnresolvedMosaic​[mosaics_count]

attached mosaics

 
 
 
message
byte[message_size]

attached message

PinnedVotingKey

Size: 40 bytes = 0x28
schema
catapult model

pinned voting key

 
 
 
voting_key

voting key

 
 
 
start_epoch

start finalization epoch

 
 
 
end_epoch

end finalization epoch

ImportanceSnapshot

Size: 16 bytes = 0x10
schema
catapult model

temporal importance information

 
 
 
importance

account importance

 
 
 
height

importance height

HeightActivityBucket

Size: 28 bytes = 0x1c
schema

account activity bucket

 
 
 
start_height

activity start height

 
 
 
total_fees_paid

total fees paid by account

 
 
 
beneficiary_count
byte[4]

number of times account has been used as a beneficiary

 
 
 
raw_score
byte[8]

raw importance score

HeightActivityBuckets

Size: 140 bytes = 0x8c
schema

account activity buckets

 
 
 
buckets

account activity buckets

AccountState

Size: 80+ bytes = 0x50+ (variable)
schema
catapult model

binary layout for non-historical account state

 
 
 
version
byte[2]

serialization version

 
 
 
address

address of account

 
 
 
address_height

height at which address has been obtained

 
 
 
public_key

public key of account

 
 
 
public_key_height

height at which public key has been obtained

 
 
 
account_type

type of account

 
 
 
format

account format

 
 
 
supplemental_public_keys_mask

mask of supplemental public key flags

 
 
 
voting_public_keys_count
byte[1]

number of voting public keys

 
 
 
linked_public_key

linked account public key

This field is only present if:
supplemental_public_keys_mask in LINKED
 
 
 
node_public_key

node public key

This field is only present if:
supplemental_public_keys_mask in NODE
 
 
 
vrf_public_key

vrf public key

This field is only present if:
supplemental_public_keys_mask in VRF
 
 
 
voting_public_keys
PinnedVotingKey​[voting_public_keys_count]

voting public keys

 
 
 
importance_snapshots

current importance snapshot of the account

This field is only present if:
format equals HIGH_VALUE
 
 
 
activity_buckets

activity buckets of the account

This field is only present if:
format equals HIGH_VALUE
 
 
 
balances_count
byte[2]

number of total balances (mosaics)

 
 
 
balances
Mosaic​[balances_count]

balances of account

HashLockInfo

Size: 83 bytes = 0x53
schema
catapult model

binary layout for hash lock transaction info

 
 
 
version
byte[2]

serialization version

 
 
 
owner_address

owner address

 
 
 
mosaic

mosaic associated with lock

 
 
 
end_height

height at which the lock expires

 
 
 
status

flag indicating whether or not the lock was already used

 
 
 
hash

hash

MetadataValue

Size: 2+ bytes = 0x2+ (variable)
schema

binary layout of a metadata entry value

 
 
 
size
byte[2]

size of the value

 
 
 
data
byte[size]

data of the value

MetadataEntry

Size: 69+ bytes = 0x45+ (variable)
schema

binary layout of a metadata entry

 
 
 
version
byte[2]

serialization version

 
 
 
source_address

metadata source address (provider)

 
 
 
target_address

metadata target address

 
 
 
scoped_metadata_key

metadata key scoped to source, target and type

 
 
 
target_id
byte[8]

target id

 
 
 
metadata_type

metadata type

 
 
 
value

value

MosaicProperties

Size: 10 bytes = 0xa
schema

binary layout for mosaic properties

 
 
 
flags

mosaic flags

 
 
 
divisibility
byte[1]

mosaic divisibility

 
 
 
duration

mosaic duration

MosaicDefinition

Size: 46 bytes = 0x2e
schema

binary layout for mosaic definition

 
 
 
start_height

block height

 
 
 
owner_address

mosaic owner

 
 
 
revision
byte[4]

revision

 
 
 
properties

properties

MosaicEntry

Size: 64 bytes = 0x40
schema

binary layout for mosaic entry

 
 
 
version
byte[2]

serialization version

 
 
 
mosaic_id

entry id

 
 
 
supply

total supply amount

 
 
 
definition

definition comprised of entry properties

MultisigEntry

Size: 50+ bytes = 0x32+ (variable)
schema

binary layout for a multisig entry

 
 
 
version
byte[2]

serialization version

 
 
 
min_approval
byte[4]

minimum approval for modifications

 
 
 
min_removal
byte[4]

minimum approval for removal

 
 
 
account_address

account address

 
 
 
cosignatory_addresses_count
byte[8]

number of cosignatories

 
 
 
cosignatory_addresses
Address​[cosignatory_addresses_count]

cosignatories for account

 
 
 
multisig_addresses_count
byte[8]

number of other accounts for which the entry is cosignatory

 
 
 
multisig_addresses
Address​[multisig_addresses_count]

accounts for which the entry is cosignatory

NamespaceLifetime

Size: 16 bytes = 0x10
schema
catapult model

binary layout for namespace lifetime

 
 
 
lifetime_start

start height

 
 
 
lifetime_end

end height

NamespaceAlias

Size: 1+ byte = 0x1+ (variable)
schema

binary layout for alias

 
 
 
namespace_alias_type

namespace alias type

 
 
 
mosaic_alias

mosaic alias

This field is only present if:
namespace_alias_type equals MOSAIC_ID
 
 
 
address_alias

address alias

This field is only present if:
namespace_alias_type equals ADDRESS

NamespacePath

Size: 2+ bytes = 0x2+ (variable)
schema

binary layout for a namespace path

 
 
 
path_size
byte[1]

number of paths (excluding root id)

 
 
 
path
NamespaceId​[path_size]

namespace path (excluding root id)

 
 
 
alias

namespace alias

RootNamespaceHistory

Size: 59+ bytes = 0x3b+ (variable)
schema

binary layout for non-historical root namespace history

 
 
 
version
byte[2]

serialization version

 
 
 
id

id of the root namespace history

 
 
 
owner_address

namespace owner address

 
 
 
lifetime

lifetime in blocks

 
 
 
root_alias

root namespace alias

 
 
 
children_count
byte[8]

number of children

 
 
 
paths
NamespacePath​[children_count]

save child sub-namespace paths

AccountRestrictionAddressValue

Size: 8+ bytes = 0x8+ (variable)
schema

binary layout for address based account restriction

 
 
 
restriction_values_count
byte[8]

number of restrictions for a particular account

 
 
 
restriction_values
Address​[restriction_values_count]

restriction values

AccountRestrictionMosaicValue

Size: 8+ bytes = 0x8+ (variable)
schema

binary layout for mosaic id based account restriction

 
 
 
restriction_values_count
byte[8]

number of restrictions for a particular account

 
 
 
restriction_values
MosaicId​[restriction_values_count]

restriction values

AccountRestrictionTransactionTypeValue

Size: 8+ bytes = 0x8+ (variable)
schema

binary layout for transaction type based account restriction

 
 
 
restriction_values_count
byte[8]

number of restrictions for a particular account

 
 
 
restriction_values
TransactionType​[restriction_values_count]

restriction values

AccountRestrictionsInfo

Size: 2+ bytes = 0x2+ (variable)
schema

binary layout for account restrictions

 
 
 
restriction_flags

raw restriction flags

 
 
 
address_restrictions

address restrictions

This field is only present if:
restriction_flags in ADDRESS
 
 
 
mosaic_id_restrictions

mosaic identifier restrictions

This field is only present if:
restriction_flags in MOSAIC_ID
 
 
 
transaction_type_restrictions

transaction type restrictions

This field is only present if:
restriction_flags in TRANSACTION_TYPE

AccountRestrictions

Size: 34+ bytes = 0x22+ (variable)
schema

binary layout for account restrictions

 
 
 
version
byte[2]

serialization version

 
 
 
address

address on which restrictions are placed

 
 
 
restrictions_count
byte[8]

number of restrictions

 
 
 
restrictions
AccountRestrictionsInfo​[restrictions_count]

account restrictions

AddressKeyValue

Size: 16 bytes = 0x10
schema

layout for mosaic address restriction key-value pair

 
 
 
key

key for value

 
 
 
value
byte[8]

value associated by key

AddressKeyValueSet

Size: 1+ byte = 0x1+ (variable)
schema

binary layout for mosaic address restriction key-value set

 
 
 
key_value_count
byte[1]

number of key value pairs

 
 
 
keys
AddressKeyValue​[key_value_count]

key value array

RestrictionRule

Size: 17 bytes = 0x11
schema
catapult model

binary layout of restriction rule being applied

 
 
 
reference_mosaic_id

identifier of the mosaic providing the restriction key

 
 
 
restriction_value
byte[8]

restriction value

 
 
 
restriction_type

restriction type

GlobalKeyValue

Size: 25 bytes = 0x19
schema

binary layout for a global key-value

 
 
 
key

key associated with a restriction rule

 
 
 
restriction_rule

restriction rule (the value) associated with a key

GlobalKeyValueSet

Size: 1+ byte = 0x1+ (variable)
schema

binary layout for a global restriction key-value set

 
 
 
key_value_count
byte[1]

number of key value pairs

 
 
 
keys
GlobalKeyValue​[key_value_count]

key value array

MosaicAddressRestrictionEntry

Size: 33+ bytes = 0x21+ (variable)
schema

binary layout for a mosaic restriction

 
 
 
mosaic_id

identifier of the mosaic to which the restriction applies

 
 
 
address

address being restricted

 
 
 
key_pairs

address key value restriction set

MosaicGlobalRestrictionEntry

Size: 9+ bytes = 0x9+ (variable)
schema

binary layout for a mosaic restriction

 
 
 
mosaic_id

identifier of the mosaic to which the restriction applies

 
 
 
key_pairs

global key value restriction set

MosaicRestrictionEntry

Size: 3+ bytes = 0x3+ (variable)
schema

binary layout for a mosaic restriction

 
 
 
version
byte[2]

serialization version

 
 
 
entry_type

type of restriction being placed upon the entity

 
 
 
address_entry

address restriction rule

This field is only present if:
entry_type equals ADDRESS
 
 
 
global_entry

global mosaic rule

This field is only present if:
entry_type equals GLOBAL

SecretLockInfo

Size: 108 bytes = 0x6c
schema
catapult model

binary layout for serialized lock transaction

 
 
 
version
byte[2]

serialization version

 
 
 
owner_address

owner address

 
 
 
mosaic

mosaic associated with lock

 
 
 
end_height

height at which the lock expires

 
 
 
status

flag indicating whether or not the lock was already used

 
 
 
hash_algorithm

hash algorithm

 
 
 
secret

transaction secret

 
 
 
recipient

transaction recipient

Inner Structures

These are structures only meant to be included inside other structures. Their description is already present in the containing structures above and is only repeated here for completeness.