diff --git a/src/Entity/WorkspaceAssociation.php b/src/Entity/WorkspaceAssociation.php
index 099f7a2..de58c45 100644
--- a/src/Entity/WorkspaceAssociation.php
+++ b/src/Entity/WorkspaceAssociation.php
@@ -24,6 +24,7 @@ use Drupal\Core\StringTranslation\TranslatableMarkup;
  *   },
  *   base_table = "workspace_association",
  *   revision_table = "workspace_association_revision",
+ *   internal = TRUE,
  *   entity_keys = {
  *     "id" = "id",
  *     "revision" = "revision_id",
diff --git a/tests/src/Kernel/WorkspaceInternalResourceTest.php b/tests/src/Kernel/WorkspaceInternalResourceTest.php
index f2a859e..1acf66f 100644
--- a/tests/src/Kernel/WorkspaceInternalResourceTest.php
+++ b/tests/src/Kernel/WorkspaceInternalResourceTest.php
@@ -22,7 +22,7 @@ class WorkspaceInternalResourceTest extends KernelTestBase {
   /**
    * Tests enabling workspace associations for REST throws an exception.
    *
-   * @see workspace_rest_resource_alter()
+   * @see \Drupal\workspace\Entity\WorkspaceAssociation
    */
   public function testCreateWorkspaceAssociationResource() {
     $this->setExpectedException(PluginNotFoundException::class, 'The "entity:workspace_association" plugin does not exist.');
diff --git a/workspace.module b/workspace.module
index ca43e86..acd61ff 100644
--- a/workspace.module
+++ b/workspace.module
@@ -119,15 +119,6 @@ function workspace_views_query_alter(ViewExecutable $view, QueryPluginBase $quer
 }
 
 /**
- * Implements hook_rest_resource_alter().
- */
-function workspace_rest_resource_alter(&$definitions) {
-  // WorkspaceAssociation is an internal entity types, therefore it should not
-  // be exposed via REST.
-  unset($definitions['entity:workspace_association']);
-}
-
-/**
  * Implements hook_cron().
  */
 function workspace_cron() {
