diff --git a/core/includes/entity.api.php b/core/includes/entity.api.php
index 2aa96a9..fb74eaa 100644
--- a/core/includes/entity.api.php
+++ b/core/includes/entity.api.php
@@ -141,12 +141,20 @@
  *       by default (e.g. right after the module exposing the view mode is
  *       enabled), but administrators can later use the Field UI to apply custom
  *       display settings specific to the view mode.
- *   - menu base path: The base menu router path to which the administration
- *     user interface will be attached. Defaults to ENTITY_TYPE/%ENTITY_TYPE.
- *   - menu view path: The menu router path to be used to view the entity.
- *     Defaults to the base path.
- *   - menu edit path: The menu router path to be used to edit the entity.
- *     Defaults to "$base_path/edit".
+ *   - menu base path: Optional. The base menu router path to which the entity
+ *     administration user interface responds. It can be used to generate UI
+ *     links and to attach additional router items to the entity UI in a generic
+ *     fashion.
+ *   - menu view path: Optional. The menu router path to be used to view the
+ *     entity.
+ *   - menu edit path: Optional. The menu router path to be used to edit the
+ *     entity.
+ *   - menu path wildcard: Optional. A string identifying the menu loader in
+ *     the router path.
+ *   - translation controller class: Optional. The name of the translation
+ *     controller class that should be used to handle the translation process.
+ *     See Drupal\translation_entity\EntityTranslationControllerInterface for
+ *     more information.
  *
  * @see entity_load()
  * @see entity_load_multiple()
diff --git a/core/modules/translation_entity/lib/Drupal/translation_entity/EntityTranslationControllerInterface.php b/core/modules/translation_entity/lib/Drupal/translation_entity/EntityTranslationControllerInterface.php
index fd597d8..8b68970 100644
--- a/core/modules/translation_entity/lib/Drupal/translation_entity/EntityTranslationControllerInterface.php
+++ b/core/modules/translation_entity/lib/Drupal/translation_entity/EntityTranslationControllerInterface.php
@@ -14,6 +14,69 @@
  *
  * Defines a set of methods to allow any entity to be processed by the entity
  * translation UI.
+ *
+ * The entity translation UI relies on the entity info to provide its features.
+ * See the documentation of hook_entity_info() in the Entity API documentation
+ * for more details on all the entity info keys that may be defined.
+ *
+ * To make Entity Translation automatically support an entity type some keys
+ * may need to be defined, but none of them is required unless the entity path
+ * is different from ENTITY_TYPE/%ENTITY_TYPE (e.g. taxonomy/term/1), in which
+ * case at least the 'menu base path' key must be defined. This is used to
+ * determine the view and edit paths if they follow the standard path patterns,
+ * otherwise the 'menu view path' and 'menu edit path' key must be defined. If
+ * an entity type is enabled for translation and no menu path key is defined,
+ * the following defaults will be assumed:
+ * - menu base path: ENTITY_TYPE/%ENTITY_TYPE
+ * - menu view path: ENTITY_TYPE/%ENTITY_TYPE
+ * - menu edit path: ENTITY_TYPE/%ENTITY_TYPE/edit
+ * The menu base path is also used to reliably alter menu router information to
+ * provide the translation overview page for any entity.
+ * If the entity uses a menu loader different from %ENTITY_TYPE also the 'menu
+ * path wildcard' info key needs to be defined.
+ *
+ * Every entity type needs a translation controller to be translated. This can
+ * be specified through the 'translation controller class' key in the entity
+ * info. If an entity type is enabled for translation and no translation
+ * controller is defined, Drupal\translation_entity\EntityTranslationController
+ * will be assumed. Every translation controller class must implement
+ * Drupal\translation_entity\EntityTranslationControllerInterface.
+ *
+ * If the entity paths match the default patterns above and there is no need for
+ * an entity-specific translation controller class, Entity Translation will
+ * provide built-in support for the entity. It will still be required to enable
+ * translation for each translatable bundle.
+ *
+ * Additionally some more entity info keys can be defined to further customize
+ * the translation UI. The entity translation info is an associative array that
+ * has to match the following structure. Two nested arrays keyed respectively
+ * by the 'translation' key and the 'entity_translation' key: the first one is
+ * the key defined by the core entity system, while the second one registers
+ * Entity Tanslation as a field translation handler. Elements:
+ * - access callback: The access callback for the translation pages. Defaults to
+ *   'entity_translation_translate_access'.
+ * - access arguments: The access arguments for the translation pages. By
+ *   default only the entity object is passed to the access callback.
+ *
+ * This is how entity info would look for a module defining a new translatable
+ * entity type:
+ * @code
+ *   function mymodule_entity_info() {
+ *     $info['myentity'] = array(
+ *       // ...
+ *       'menu base path' => 'mymodule/myentity/%my_entity_loader',
+ *       'menu path widlcard' => '%my_entity_loader',
+ *       'translation controller class' => 'Drupal\mymodule\MyEntityTranslationController',
+ *       'translation' => array(
+ *         'translation_entity' => array(
+ *           'access callback' => 'mymodule_myentity_translate_access',
+ *           'access arguments' => array(2),
+ *         ),
+ *       ),
+ *     );
+ *     return $info;
+ *   }
+ * @endcode
  */
 interface EntityTranslationControllerInterface {
 
diff --git a/core/modules/translation_entity/translation_entity.api.php b/core/modules/translation_entity/translation_entity.api.php
deleted file mode 100644
index a95f25a..0000000
--- a/core/modules/translation_entity/translation_entity.api.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-
-/**
- * @file
- * API documentation for the Entity Translation module.
- */
-
-/**
- * Allows modules to define their own translation info.
- *
- * Entity Translation relies on the entity info to provide its translation
- * features. See the documentation of hook_entity_info() in the Entity API
- * documentation for more details on all the entity info keys that may be
- * defined.
- *
- * To make Entity Translation automatically support an entity type some keys
- * may need to be defined, but none of them is required unless the entity path
- * is different from ENTITY_TYPE/%ENTITY_TYPE (e.g. taxonomy/term/1), in which
- * case the 'menu base path' key must be defined. The 'menu base path' key is
- * used to determine the view and edit paths, if they follow the default path
- * patterns and to reliably alter menu information to provide the translation
- * UI. If the entity path matches the default pattern above, and there is no
- * need for an entity-specific translation controller class, Entity Translation
- * will provide built-in support for the entity.
- *
- * An alternative translation controller class can be defined through:
- * - translation controller class: The name of the translation controller class,
- *   that should be used to handle the translation process. Defaults to
- *   Drupal\translation_entity\EntityTranslationController'. This class must
- *   implement Drupal\translation_entity\EntityTranslationControllerInterface.
- *
- * The entity translation info is an associative array that has to match the
- * following structure. Three nested sub-arrays keyed respectively by entity
- * type, the 'translation' key and the 'entity_translation' key: the second one
- * is the key defined by the core entity system while the third one registers
- * Entity Tanslation as a field translation handler. Elements:
- * - access callback: The access callback for the translation pages. Defaults to
- *   'entity_translation_translate_access'.
- * - access arguments: The access arguments for the translation pages. Defaults
- *   to 'array($entity_position)'.
- */
-function custom_module_entity_info() {
-  $info['custom_entity'] = array(
-    // ...
-    'menu base path' => 'custom/entity/%custom_entity',
-    'translation controller class' => 'Drupal\custom_module\CustomEntityTranslationController',
-    'translation' => array(
-      'translation_entity' => array(
-        'access callback' => 'custom_entity_translate_access',
-        'access arguments' => array(2),
-      ),
-    ),
-  );
-  return $info;
-}
