diff --git a/config/routes.rb b/config/routes.rb
index c4eeaebc94a53f4aa78b3b9aef9097a4341045a2..fb3427696f4e5687f41ce637498b15a03ecc3e3b 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -273,15 +273,7 @@
       end
     end
 
-    resources(:groups, only: [:index, :new, :create]) do
-      # The constraints ensure that the `group_id` parameter in the URL allows for multiple levels
-      # of subgroups, permitting both regular and encoded slashes (%2F).
-      # Deprecated in favor of /groups/*group_id/-/preview_markdown
-      # https://gitlab.com/gitlab-org/gitlab/-/issues/442218
-      post :preview_markdown,
-        as: :preview_markdown_deprecated,
-        constraints: { group_id: %r{#{Gitlab::PathRegex.full_namespace_route_regex.source}(%2F#{Gitlab::PathRegex.full_namespace_route_regex.source})*} }
-    end
+    resources :groups, only: [:index, :new, :create]
 
     draw :group
 
diff --git a/config/routes/project.rb b/config/routes/project.rb
index 4c92e3b26d6968816b73036da028aba43477e917..7f1c6f6a237223d7d02a30fe305ddacc0090801d 100644
--- a/config/routes/project.rb
+++ b/config/routes/project.rb
@@ -671,7 +671,6 @@
         post :unarchive
         post :housekeeping
         post :toggle_star
-        post :preview_markdown, as: :preview_markdown_deprecated
         post :export
         post :remove_export
         post :generate_new_export
diff --git a/glfm_specification/input/gitlab_flavored_markdown/glfm_example_metadata.yml b/glfm_specification/input/gitlab_flavored_markdown/glfm_example_metadata.yml
index 84ce1d7a36805d09d7e05786ce6f430738377b6c..efddf75f0e9092f2595e3625f32be512bda68abc 100644
--- a/glfm_specification/input/gitlab_flavored_markdown/glfm_example_metadata.yml
+++ b/glfm_specification/input/gitlab_flavored_markdown/glfm_example_metadata.yml
@@ -1,10 +1,10 @@
 ---
 08_03_00__gitlab_internal_extension_markdown__markdown_preview_api_request_overrides__001:
-  api_request_override_path: /groups/glfm_group/preview_markdown
+  api_request_override_path: /groups/glfm_group/-/preview_markdown
 08_03_00__gitlab_internal_extension_markdown__markdown_preview_api_request_overrides__002:
-  api_request_override_path: /glfm_group/glfm_project/preview_markdown
+  api_request_override_path: /glfm_group/glfm_project/-/preview_markdown
 08_03_00__gitlab_internal_extension_markdown__markdown_preview_api_request_overrides__003:
-  api_request_override_path: /glfm_group/glfm_project/preview_markdown
+  api_request_override_path: /glfm_group/glfm_project/-/preview_markdown
 08_03_00__gitlab_internal_extension_markdown__markdown_preview_api_request_overrides__004:
   api_request_override_path: /-/snippets/preview_markdown
 08_03_00__gitlab_internal_extension_markdown__markdown_preview_api_request_overrides__005:
@@ -13,15 +13,15 @@
   ee: true
   api_request_override_path: /groups/glfm_group/-/wikis/new_page/preview_markdown
 08_04_01__gitlab_internal_extension_markdown__migrated_golden_master_examples__attachment_image_for_group__001:
-  api_request_override_path: /groups/glfm_group/preview_markdown
+  api_request_override_path: /groups/glfm_group/-/preview_markdown
 08_04_02__gitlab_internal_extension_markdown__migrated_golden_master_examples__attachment_image_for_project__001:
-  api_request_override_path: /glfm_group/glfm_project/preview_markdown
+  api_request_override_path: /glfm_group/glfm_project/-/preview_markdown
 08_04_03__gitlab_internal_extension_markdown__migrated_golden_master_examples__attachment_image_for_project_wiki__001:
   api_request_override_path: /glfm_group/glfm_project/-/wikis/new_page/preview_markdown
 08_04_04__gitlab_internal_extension_markdown__migrated_golden_master_examples__attachment_link_for_group__001:
-  api_request_override_path: /groups/glfm_group/preview_markdown
+  api_request_override_path: /groups/glfm_group/-/preview_markdown
 08_04_05__gitlab_internal_extension_markdown__migrated_golden_master_examples__attachment_link_for_project__001:
-  api_request_override_path: /glfm_group/glfm_project/preview_markdown
+  api_request_override_path: /glfm_group/glfm_project/-/preview_markdown
 08_04_06__gitlab_internal_extension_markdown__migrated_golden_master_examples__attachment_link_for_project_wiki__001:
   api_request_override_path: /glfm_group/glfm_project/-/wikis/new_page/preview_markdown
 08_04_07__gitlab_internal_extension_markdown__migrated_golden_master_examples__attachment_link_for_group_wiki__001:
diff --git a/spec/controllers/projects_controller_spec.rb b/spec/controllers/projects_controller_spec.rb
index da08d1dddf8ecb4f4d605186f907a196d7a7a78e..ca5b30031b7ef976b997c3132287fc526a9ed7bc 100644
--- a/spec/controllers/projects_controller_spec.rb
+++ b/spec/controllers/projects_controller_spec.rb
@@ -1340,7 +1340,7 @@ def update_project_feature
     end
 
     it 'renders json in a correct format' do
-      post :preview_markdown, params: { namespace_id: public_project.namespace, id: public_project, text: '*Markdown* text' }
+      post :preview_markdown, params: { namespace_id: public_project.namespace, project_id: public_project, text: '*Markdown* text' }
 
       expect(json_response.keys).to match_array(%w[body references])
     end
@@ -1349,7 +1349,7 @@ def update_project_feature
       let(:private_project) { create(:project, :private) }
 
       it 'returns 404' do
-        post :preview_markdown, params: { namespace_id: private_project.namespace, id: private_project, text: '*Markdown* text' }
+        post :preview_markdown, params: { namespace_id: private_project.namespace, project_id: private_project, text: '*Markdown* text' }
 
         expect(response).to have_gitlab_http_status(:not_found)
       end
@@ -1363,7 +1363,7 @@ def update_project_feature
       it 'renders JSON body with state filter for issues' do
         post :preview_markdown, params: {
                                   namespace_id: public_project.namespace,
-                                  id: public_project,
+                                  project_id: public_project,
                                   text: issue.to_reference
                                 }
 
@@ -1373,7 +1373,7 @@ def update_project_feature
       it 'renders JSON body with state filter for MRs' do
         post :preview_markdown, params: {
                                   namespace_id: public_project.namespace,
-                                  id: public_project,
+                                  project_id: public_project,
                                   text: merge_request.to_reference
                                 }
 
@@ -1385,8 +1385,8 @@ def update_project_feature
       let(:project_with_repo) { create(:project, :repository) }
       let(:preview_markdown_params) do
         {
-          namespace_id: project_with_repo.namespace,
-          id: project_with_repo,
+          namespace_id: project_with_repo.namespace.full_path,
+          project_id: project_with_repo.path,
           text: "![](./logo-white.png)\n",
           path: 'files/images/README.md'
         }
@@ -1409,8 +1409,8 @@ def update_project_feature
       let(:project_with_repo) { create(:project, :repository) }
       let(:preview_markdown_params) do
         {
-          namespace_id: project_with_repo.namespace,
-          id: project_with_repo,
+          namespace_id: project_with_repo.namespace.full_path,
+          project_id: project_with_repo.path,
           text: "![](./logo-white.png)\n",
           ref: 'other_branch',
           path: 'files/images/README.md'
diff --git a/spec/scripts/lib/glfm/update_example_snapshots_spec.rb b/spec/scripts/lib/glfm/update_example_snapshots_spec.rb
index a90a82784f90e39d837e9423d2ade758f88efb3d..82a398ea204a050b95cb60164dab42450179933e 100644
--- a/spec/scripts/lib/glfm/update_example_snapshots_spec.rb
+++ b/spec/scripts/lib/glfm/update_example_snapshots_spec.rb
@@ -262,11 +262,11 @@
     <<~YAML
       ---
       06_01_00__api_request_overrides__group_upload_link__001:
-        api_request_override_path: /groups/glfm_group/preview_markdown
+        api_request_override_path: /groups/glfm_group/-/preview_markdown
       06_02_00__api_request_overrides__project_repo_link__001:
-        api_request_override_path: /glfm_group/glfm_project/preview_markdown
+        api_request_override_path: /glfm_group/glfm_project/-/preview_markdown
       06_03_00__api_request_overrides__project_snippet_ref__001:
-        api_request_override_path: /glfm_group/glfm_project/preview_markdown
+        api_request_override_path: /glfm_group/glfm_project/-/preview_markdown
       06_04_00__api_request_overrides__personal_snippet_ref__001:
         api_request_override_path: /-/snippets/preview_markdown
       06_05_00__api_request_overrides__project_wiki_link__001: