Hedera · Schema

Hook

Distributed LedgerBlockchainDLTHashgraphTransactionsTokensNFTsSmart ContractsEnterprise

Properties

Name Type Description
admin_key object
contract_id object The contract entity that contains the hook's executing bytecode
created_timestamp object The consensus timestamp when the hook was created
deleted boolean Whether the hook has been deleted
extension_point string The extension point this hook implements
hook_id integer The unique identifier for the hook within the owner's scope
owner_id object The entity that owns the hook
timestamp_range object
type string The type of the hook implementation
View JSON Schema on GitHub

JSON Schema

Hook.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/hedera/refs/heads/main/json-schema/Hook.json",
  "title": "Hook",
  "type": "object",
  "required": [
    "admin_key",
    "contract_id",
    "created_timestamp",
    "deleted",
    "extension_point",
    "hook_id",
    "owner_id",
    "timestamp_range",
    "type"
  ],
  "properties": {
    "admin_key": {
      "$ref": "#/components/schemas/Key"
    },
    "contract_id": {
      "allOf": [
        {
          "$ref": "#/components/schemas/EntityId"
        }
      ],
      "description": "The contract entity that contains the hook's executing bytecode"
    },
    "created_timestamp": {
      "allOf": [
        {
          "$ref": "#/components/schemas/TimestampNullable"
        }
      ],
      "description": "The consensus timestamp when the hook was created"
    },
    "deleted": {
      "description": "Whether the hook has been deleted",
      "example": false,
      "type": "boolean"
    },
    "extension_point": {
      "description": "The extension point this hook implements",
      "enum": [
        "ACCOUNT_ALLOWANCE_HOOK"
      ],
      "example": "ACCOUNT_ALLOWANCE_HOOK",
      "type": "string"
    },
    "hook_id": {
      "description": "The unique identifier for the hook within the owner's scope",
      "example": 1,
      "format": "int64",
      "type": "integer"
    },
    "owner_id": {
      "allOf": [
        {
          "$ref": "#/components/schemas/EntityId"
        }
      ],
      "description": "The entity that owns the hook"
    },
    "timestamp_range": {
      "$ref": "#/components/schemas/TimestampRangeNullable"
    },
    "type": {
      "description": "The type of the hook implementation",
      "enum": [
        "EVM"
      ],
      "example": "EVM",
      "type": "string"
    }
  }
}