Returns the operations from the most recently finalized block. Operations represent one side of a balance change. For example if Alice transfers 100unit to Bob there will be two operations; 1) Alice - 100 2) Bob + 100.
Given account A and A's balance at block k0 (Ak0), if we sum all the operations for A from block k1 through kn against Ak0, we will end up with A's balance at block kn (Akn). Thus, operations can be used to audit that balances change as expected.
This is useful for Substrate based chains because the advanced business logic can make it difficult to ensure auditable balance reconciliation based purely on events. Instead of using events one can use the operations given from this endpoint.
Note - each operation corresponds to a delta of a single field of the
system::AccountData
storage item (i.e free
, reserved
, misc_frozen
and fee_frozen
).
Note - operations are assigned a block execution phase (and extrinsic index
for those in the apply extrinsic phase) based on an "action group". For
example all the operations for 1 extrinsic will be in the same action group.
The action groups can optionally be fetched with the action
query param
for closer auditing.
Note - There are no 0 value operations (e.g. a transfer of 0, or a
transfer to itself)
To learn more about operation and action group creation please consult this diagram
Block identifier, as the block height or block hash.
^0[xX][0-9a-fA-F]{1,64}$|[0-9]{1,12}
successful operation
Block number and hash at which the call was made.