The End of Life (EOL) date of Rules and Hooks will be November 18, 2026, and they are no longer available to new tenants created as of October 16, 2023. Existing tenants with active Hooks will retain Hooks product access through end of life.We highly recommend that you use Actions to extend Auth0. With Actions, you have access to rich type information, inline documentation, and public npm packages, and can connect external integrations that enhance your overall extensibility experience. To learn more about what Actions offer, read Understand How Auth0 Actions Work.To help with your migration, we offer guides that will help you migrate from Rules to Actions and migrate from Hooks to Actions. We also have a dedicated Move to Actions page that highlights feature comparisons, an Actions demo, and other resources to help you on your migration journey.To read more about the Rules and Hooks deprecation, read our blog post: Preparing for Rules and Hooks End of Life.
Because we plan to remove Rules and Hooks functions in 2026, you should create new Rules or Hooks only in your Development environment and only to test migration to Actions.To learn how to migrate your Rules to Actions, read Migrate from Rules to Actions. To learn how to migrate your Hooks to Actions, read Migrate from Hooks to Actions.
You can create multiple Hook Secrets for any Hook using the Dashboard or . Hook Secrets may also be imported and exported using the Deploy Command-Line Interface (CLI) Tool.
You may create up to 20 secrets for any given Hook.

Create Hook Secrets using the Dashboard

  1. Navigate to the Hooks page in the Auth0 Dashboard, and click the pencil icon next to the Hook you want to edit.
  2. In the Hook editor, click the wrench icon, and click Secrets.
  3. Click Add Secret.
  4. Enter a descriptive name and value for your secret, and click Save.

Create Hook Secrets using the Management API

Make a POST call to the Add Hook Secrets endpoint. Be sure to replace MGMT_API_ACCESS_TOKEN, HOOK_ID, HOOK_SECRET_KEY, and HOOK_SECRET_VALUE placeholder values with your Management API , Hook ID, and Hook key-value pair(s), respectively.
curl --request POST \
  --url 'https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets' \
  --header 'authorization: Bearer MGMT_API_ACCESS_TOKEN' \
  --header 'cache-control: no-cache' \
  --header 'content-type: application/json' \
  --data '{ [ "HOOK_SECRET_KEY", "HOOK_SECRET_VALUE" ], [ "HOOK_SECRET_KEY", "HOOK_SECRET_VALUE" ] }'
ValueDescription
MGMT_API_ACCESS_TOKENAccess Token for the Management API with the create:hooks.
HOOK_IDID of the hook for which you would like to add secrets.
HOOK_SECRET_KEYName of the secret that you would like to add to the specified hook. This endpoint accepts an object of key-value pairs.
HOOK_SECRET_VALUEValue of the secret that you would like to add to the specified hook. This endpoint accepts an object of key-value pairs.