Statement

A public statement made by an account. The meaning is defined by the statement type.

The statement transaction is part of the Titanium release.

JSON

{
  "type": 23,
  "version": 3,
  "id": "1uZqDjRjaehEceSxrVxz6WD6wt8su8TBHyDLQ1KFnJo",
  "sender": "3NBcx7AQqDopBj3WfwCVARNYuZyt1L9xEVM",
  "senderKeyType": "ed25519",
  "senderPublicKey": "7gghhSwKRvshZwwh6sG97mzo1qoFtHEQK7iM4vGcnEt7",
  "recipient": "3N9ChkxWXqgdWLLErWFrSwjqARB6NtYsvZh",
  "statementType": 1,
  "subject": "3yMApqCuCjXDWPrbjfR5mjCPTHqFG8Pux1TxQrEM35jj",
  "data": [
    {
      "type": "boolean",
      "value": true,
      "key": "bool"
    },
    {
      "type": "binary",
      "value": "base64:SGVsbG8gV2F2ZXM=",
      "key": "bin"
    },
    {
      "type": "integer",
      "value": 1234567,
      "key": "int"
    },
    {
      "type": "string",
      "value": "some text",
      "key": "str"
    }
  ],  
  "timestamp": 1610404930000,
  "expires": 1641961856000,
  "fee": 100000000,
  "proofs": [
    "2jQMruoLoshfKe6FAUbA9vmVVvAt8bVpCFyM75Z2PLJiuRmjmLzFpM2UmgQ6E73qn46AVQprQJPBhQe92S7iSXbZ"
  ],
  "height": 1225712
}
  • id and height should be omitted when broadcasting. These fields are set by the node.

  • recipient andsubject are optional.

  • Binary strings are base58 encoded.

  • timestamp is in microseconds since epoch.

  • fee includes 8 digits, so LTO * 10^8

Data entries

Statement transactions can have data entries. These are similar to those of the data transaction.

Binary schema

The binary data structure of the unsigned transaction.

#Field NameTypeLength

1

Transaction type

Byte (constant, value=16)

1

2

Version

Byte (constant, value=3)

1

3

Network id

Byte

1

4

Timestamp

Long

8

5

Sender's key type

KeyType (Byte)

1

6

Sender's public key

PublicKey (Array[Byte])

32 | 33

7

Fee

Long

8

8

Has recipient

Boolean (Byte)

1

9

Recipient

Address (Array[Byte])

26

10

Statement type

Int

4

11

Subject length (N)

Short

2

12

Subject

Array[Byte]

N

13

Number of entries

Short

2

14

Entry 1

...

  • Network id can be obtained by taking the 2nd byte from the sender address.

  • Each key type has a numeric id in addition to the reference from the JSON.

  • Integers (short, int, long) have a big endian byte order.

The encoding of a data entry depends on the type. For more information see "Binary schema of data entries".

Last updated