Standardized Hooks trigger applications when cPanel & WHM performs an action. Use this system to execute custom code (hook action code) to customize how cPanel & WHM functions in specific scenarios (hookable events). For example, you could use this system to make certain that a script runs each time that a user creates an account.
For a step-by-step tutorial to create and register a hook, read our Tutorial - Create a Standardized Hook documentation.
Each standardized hook is comprised of a hookable event, a hook action, and hook registration.
To create a new standardized hook, perform the following steps:
Select a hookable event. — Hookable events set the action that triggers a hook, and whether the hook triggers before or after the event.
- Write your custom hook action code.
- Register the hook. — Use the
manage_hooksCommand Line Interface (CLI) utility to connect (register) the hook action code with the event.
- The system includes a hooks registry for each hookable event. This allows hooks from your application to coexist with another application's hooks that reference the same event.
cPanel & WHM provides the
/usr/local/cpanel/bin/manage_hooksCLI utility to manage standardized hooks.
Standardized Hook System data
Do not edit this data manually. Instead, manage Standardized Hooks with the
When the system updates to cPanel & WHM version 84, the system will convert and no longer use the following files:
cPanel & WHM version 84 and later
Standardized Hooks System data is in subdirectories within the
/var/cpanel/hooks/data/ directory. This allows the system to isolate individual events for better performance.
- Each subdirectory includes a
.yamlfile and a
- For example, the
/var/cpanel/hooks/data/Passwd/directory could contain the
change_password.yamlfile and the
cPanel & WHM version 82 and earlier
Standardized Hooks System data is in the
/var/cpanel/ directory. This is the authoritative reference for all standardized hook data.
/var/cpanel/hooks.yamlfile contains the hook database.
/var/cpanel/hooks.cachefile contains a cached copy of the database. The cache file regenerates automatically whenever you query the Standardized Hooks System internally or through a management utility.