{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "HooksListResponse", "type": "object", "required": [ "data" ], "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/HooksListEntry" } } }, "definitions": { "AbsolutePathBuf": { "description": "A path that is guaranteed to be absolute and normalized (though it is not guaranteed to be canonicalized or exist on the filesystem).\n\nIMPORTANT: When deserializing an `AbsolutePathBuf`, a base path must be set using [AbsolutePathBufGuard::new]. If no base path is set, the deserialization will fail unless the path being deserialized is already absolute.", "type": "string" }, "HookErrorInfo": { "type": "object", "required": [ "message", "path" ], "properties": { "message": { "type": "string" }, "path": { "type": "string" } } }, "HookEventName": { "type": "string", "enum": [ "preToolUse", "permissionRequest", "postToolUse", "preCompact", "postCompact", "sessionStart", "userPromptSubmit", "subagentStart", "subagentStop", "stop" ] }, "HookHandlerType": { "type": "string", "enum": [ "command", "prompt", "agent" ] }, "HookMetadata": { "type": "object", "required": [ "currentHash", "displayOrder", "enabled", "eventName", "handlerType", "isManaged", "key", "source", "sourcePath", "timeoutSec", "trustStatus" ], "properties": { "command": { "type": [ "string", "null" ] }, "currentHash": { "type": "string" }, "displayOrder": { "type": "integer", "format": "int64" }, "enabled": { "type": "boolean" }, "eventName": { "$ref": "#/definitions/HookEventName" }, "handlerType": { "$ref": "#/definitions/HookHandlerType" }, "isManaged": { "type": "boolean" }, "key": { "type": "string" }, "matcher": { "type": [ "string", "null" ] }, "pluginId": { "type": [ "string", "null" ] }, "source": { "$ref": "#/definitions/HookSource" }, "sourcePath": { "$ref": "#/definitions/AbsolutePathBuf" }, "statusMessage": { "type": [ "string", "null" ] }, "timeoutSec": { "type": "integer", "format": "uint64", "minimum": 0.0 }, "trustStatus": { "$ref": "#/definitions/HookTrustStatus" } } }, "HookSource": { "type": "string", "enum": [ "system", "user", "project", "mdm", "sessionFlags", "plugin", "cloudRequirements", "legacyManagedConfigFile", "legacyManagedConfigMdm", "unknown" ] }, "HookTrustStatus": { "type": "string", "enum": [ "managed", "untrusted", "trusted", "modified" ] }, "HooksListEntry": { "type": "object", "required": [ "cwd", "errors", "hooks", "warnings" ], "properties": { "cwd": { "type": "string" }, "errors": { "type": "array", "items": { "$ref": "#/definitions/HookErrorInfo" } }, "hooks": { "type": "array", "items": { "$ref": "#/definitions/HookMetadata" } }, "warnings": { "type": "array", "items": { "type": "string" } } } } } }