Hook Definition
(Added by the [Hooks amendment][].)
A HookDefinition
object describes a hook, which is a piece of code that is executed in response to certain transactions. The hook can modify the transaction, emit new transactions, or perform other actions.
Example JSON
Fields
A HookDefinition
object has the following fields:
Field | JSON Type | [Internal Type][] | Required? | Description |
---|---|---|---|---|
| String | Hash256 | Yes | The unique identifier of the hook. |
| String | Hash256 | Yes | The account that the hook is attached to. |
| String | Hash256 | Yes | The namespace of the hook. |
| String | Vector | Yes | The parameters that the hook accepts. |
| Number | UInt16 | Yes | The version of the hook API that the hook uses. |
| String | VL | Yes | The code that is executed when the hook is created. |
| String | Hash256 | Yes | The ID of the transaction that set the hook. |
| String | UInt64 | Yes | The number of references to the hook. |
| String | Amount | Yes | The fee for executing the hook. |
| String | Amount | No | The fee for executing the hook's callback function. |
| String | UInt16 | Yes | The value |
Hook Definition ID Format
The ID of a HookDefinition
object is the [SHA-512Half][] of the following values, concatenated in order:
The HookDefinition space key (
0x0044
)The
HookHash
of the hook
Last updated