diff --git a/modules/authcache_ajax/authcache_ajax.module b/modules/authcache_ajax/authcache_ajax.module
index 8869e81..fb61538 100644
--- a/modules/authcache_ajax/authcache_ajax.module
+++ b/modules/authcache_ajax/authcache_ajax.module
@@ -5,9 +5,9 @@
  */
 
 /**
- * Implements hook_authcache_enum_key_properties().
+ * Implements hook_authcache_enum_key_property_info().
  */
-function authcache_ajax_authcache_enum_key_properties() {
+function authcache_ajax_authcache_enum_key_property_info() {
   return array(
     'ajax' => array(
       'name' => t('Browser is capable of issuing Ajax requests'),
diff --git a/modules/authcache_enum/authcache_enum.api.php b/modules/authcache_enum/authcache_enum.api.php
index 12a898d..c90d50f 100644
--- a/modules/authcache_enum/authcache_enum.api.php
+++ b/modules/authcache_enum/authcache_enum.api.php
@@ -25,14 +25,28 @@ function hook_authcache_enum_anonymous_keys_alter(&$keys) {
 /**
  * Return information about key properties.
  *
+ * This hook is kept for backwards compatibility reasons, but will be removed
+ * in the future. Use hook_authcache_key_property_info() instead.
+ *
+ * @deprecated
+ * @see hook_authcache_enum_key_property_info()
+ */
+function hook_authcache_enum_key_properties() {
+}
+
+/**
+ * Return information about key properties.
+ *
  * @return array
  *   An associative array of key-value pairs. Where keys are the names of
  *   key properties and values are associative arrays of the following
  *   structure:
  *   - name: The translated human readable property name
  *   - choices: An array of all possible values for this property
+ *
+ * @see hook_authcache_enum_key_property_info_alter()
  */
-function hook_authcache_enum_key_properties() {
+function hook_authcache_enum_key_property_info() {
   return array(
     'js' => array(
       'name' => t('Browser supports JavaScript'),
@@ -42,6 +56,14 @@ function hook_authcache_enum_key_properties() {
 }
 
 /**
+ * Modify the key properties used for authcache key enumeration.
+ *
+ * @see hook_authcache_enum_key_property_info().
+ */
+function hook_authcache_enum_key_property_info_alter(&$info) {
+}
+
+/**
  * Modify available keys and property info records.
  *
  * @param array &$properties_info
diff --git a/modules/authcache_enum/authcache_enum.module b/modules/authcache_enum/authcache_enum.module
index eb6940d..6c39dbe 100644
--- a/modules/authcache_enum/authcache_enum.module
+++ b/modules/authcache_enum/authcache_enum.module
@@ -12,7 +12,7 @@
  * values represent the property record the key is derived from.
  *
  * A nested structure containing information about key properties is
- * returned by implementations of hook_authcache_enum_key_properties:
+ * returned by implementations of hook_authcache_enum_key_property_info:
  *
  * @code
  * $properties_info = array(
@@ -82,7 +82,12 @@ function authcache_enum_user_keys() {
   $info = &drupal_static(__FUNCTION__);
 
   if (!isset($info)) {
-    $properties_info = module_invoke_all('authcache_enum_key_properties');
+    $properties_info = module_invoke_all('authcache_enum_key_property_info');
+
+    // Invoke hook_authcache_enum_key_properties() for backwards compatibility.
+    $properties_info += module_invoke_all('authcache_enum_key_properties');
+
+    drupal_alter('authcache_enum_key_property_info', $properties_info);
 
     $sets = array();
     foreach ($properties_info as $key => $definition) {
@@ -179,9 +184,9 @@ function authcache_enum_authcache_enum_anonymous_keys() {
 }
 
 /**
- * Implements hook_authcache_enum_key_properties().
+ * Implements hook_authcache_enum_key_property_info().
  */
-function authcache_enum_authcache_enum_key_properties() {
+function authcache_enum_authcache_enum_key_property_info() {
   global $base_root;
 
   $func = variable_get('authcache_enum_role_combine', '_authcache_enum_default_role_combine');
diff --git a/modules/authcache_esi/authcache_esi.module b/modules/authcache_esi/authcache_esi.module
index d3851e0..68f88e8 100644
--- a/modules/authcache_esi/authcache_esi.module
+++ b/modules/authcache_esi/authcache_esi.module
@@ -5,9 +5,9 @@
  */
 
 /**
- * Implements hook_authcache_enum_key_properties().
+ * Implements hook_authcache_enum_key_property_info().
  */
-function authcache_esi_authcache_enum_key_properties() {
+function authcache_esi_authcache_enum_key_property_info() {
   return array(
     'esi' => array(
       'name' => t('Request issued by ESI enabled reverse proxy'),
