diff --git a/qa/qa/specs/features/api/1_manage/import/import_large_github_repo_spec.rb b/qa/qa/specs/features/api/1_manage/import/import_large_github_repo_spec.rb
index e5c617738f0c347017fcf2130d4a0e6213e6b4e6..1b79c65efc333f5789814d9d7430b20d74462b5b 100644
--- a/qa/qa/specs/features/api/1_manage/import/import_large_github_repo_spec.rb
+++ b/qa/qa/specs/features/api/1_manage/import/import_large_github_repo_spec.rb
@@ -45,7 +45,7 @@ module QA
       let(:logger) { Runtime::Logger.logger }
       let(:gitlab_address) { QA::Runtime::Scenario.gitlab_address.chomp("/") }
       let(:dummy_url) { "https://example.com" } # this is used to replace all dynamic urls in descriptions and comments
-      let(:api_request_params) { { auto_paginate: true, attempts: 2 } }
+      let(:api_request_params) { { auto_paginate: true, attempts: 3 } }
 
       let(:created_by_pattern) { /\*Created by: \S+\*\n\n/ }
       let(:suggestion_pattern) { /suggestion:-\d+\+\d+/ }
@@ -536,7 +536,7 @@ def verify_comments_and_events(type, actual, expected)
       def gl_branches
         @gl_branches ||= begin
           logger.debug("= Fetching branches =")
-          imported_project.repository_branches(auto_paginate: true).map { |b| b[:name] }
+          imported_project.repository_branches(auto_paginate: true, attempts: 3).map { |b| b[:name] }
         end
       end
 
@@ -546,7 +546,7 @@ def gl_branches
       def gl_commits
         @gl_commits ||= begin
           logger.debug("= Fetching commits =")
-          imported_project.commits(auto_paginate: true, attempts: 2).map { |c| c[:id] }
+          imported_project.commits(auto_paginate: true, attempts: 3).map { |c| c[:id] }
         end
       end
 
@@ -556,7 +556,7 @@ def gl_commits
       def gl_labels
         @gl_labels ||= begin
           logger.debug("= Fetching labels =")
-          imported_project.labels(auto_paginate: true).map { |label| label.slice(:name, :color) }
+          imported_project.labels(auto_paginate: true, attempts: 3).map { |label| label.slice(:name, :color) }
         end
       end
 
@@ -566,7 +566,7 @@ def gl_labels
       def gl_milestones
         @gl_milestones ||= begin
           logger.debug("= Fetching milestones =")
-          imported_project.milestones(auto_paginate: true).map { |ms| ms.slice(:title, :description) }
+          imported_project.milestones(auto_paginate: true, attempts: 3).map { |ms| ms.slice(:title, :description) }
         end
       end
 
diff --git a/qa/qa/specs/features/api/1_manage/migration/gitlab_migration_large_project_spec.rb b/qa/qa/specs/features/api/1_manage/migration/gitlab_migration_large_project_spec.rb
index 8761f0958b125c87fa69eb45ded6bcb81b8907f0..6426872e76ddacfb57ae3739fb6d385294baef61 100644
--- a/qa/qa/specs/features/api/1_manage/migration/gitlab_migration_large_project_spec.rb
+++ b/qa/qa/specs/features/api/1_manage/migration/gitlab_migration_large_project_spec.rb
@@ -85,16 +85,16 @@ module QA
 
       # Imported objects
       #
-      let(:imported_project) { imported_group.projects(auto_paginate: true).find { |project| project.name == gitlab_source_project }.reload! }
-      let(:branches) { imported_project.repository_branches(auto_paginate: true).map { |b| b[:name] } }
-      let(:commits) { imported_project.commits(auto_paginate: true).map { |c| c[:id] } }
-      let(:labels) { imported_project.labels(auto_paginate: true).map { |l| l.except(:id, :description_html) } }
-      let(:milestones) { imported_project.milestones(auto_paginate: true).map { |ms| ms.except(:id, :web_url, :project_id) } }
+      let(:imported_project) { imported_group.projects(auto_paginate: true, attempts: 3).find { |project| project.name == gitlab_source_project }.reload! }
+      let(:branches) { imported_project.repository_branches(auto_paginate: true, attempts: 3).map { |b| b[:name] } }
+      let(:commits) { imported_project.commits(auto_paginate: true, attempts: 3).map { |c| c[:id] } }
+      let(:labels) { imported_project.labels(auto_paginate: true, attempts: 3).map { |l| l.except(:id, :description_html) } }
+      let(:milestones) { imported_project.milestones(auto_paginate: true, attempts: 3).map { |ms| ms.except(:id, :web_url, :project_id) } }
       let(:mrs) { fetch_mrs(imported_project, api_client) }
       let(:issues) { fetch_issues(imported_project, api_client) }
       let(:pipelines) do
         imported_project
-          .pipelines(auto_paginate: true)
+          .pipelines(auto_paginate: true, attempts: 3)
           .sort_by { |pipeline| pipeline[:created_at] }
           .map { |pipeline| pipeline.except(:id, :web_url, :project_id) }
       end
@@ -353,7 +353,7 @@ def verify_comments(type, actual, expected)
       # @param [Boolean] transform_urls
       # @return [Hash]
       def fetch_mrs(project, client, transform_urls: false)
-        imported_mrs = project.merge_requests(auto_paginate: true, attempts: 2)
+        imported_mrs = project.merge_requests(auto_paginate: true, attempts: 3)
 
         Parallel.map(imported_mrs, in_threads: api_parallel_threads) do |mr|
           resource = build(:merge_request, project: project, iid: mr[:iid], api_client: client)
@@ -364,7 +364,7 @@ def fetch_mrs(project, client, transform_urls: false)
             body: sanitize_description(mr[:description], transform_urls) || '',
             state: mr[:state],
             comments: resource
-              .comments(auto_paginate: true, attempts: 2)
+              .comments(auto_paginate: true, attempts: 3)
               .map { |c| sanitize_comment(c[:body], transform_urls) }
           }]
         end.to_h
@@ -377,7 +377,7 @@ def fetch_mrs(project, client, transform_urls: false)
       # @param [Boolean] transform_urls
       # @return [Hash]
       def fetch_issues(project, client, transform_urls: false)
-        imported_issues = project.issues(auto_paginate: true, attempts: 2)
+        imported_issues = project.issues(auto_paginate: true, attempts: 3)
 
         Parallel.map(imported_issues, in_threads: api_parallel_threads) do |issue|
           resource = build(:issue, project: project, iid: issue[:iid], api_client: client)
@@ -388,7 +388,7 @@ def fetch_issues(project, client, transform_urls: false)
             state: issue[:state],
             body: sanitize_description(issue[:description], transform_urls) || '',
             comments: resource
-              .comments(auto_paginate: true, attempts: 2)
+              .comments(auto_paginate: true, attempts: 3)
               .map { |c| sanitize_comment(c[:body], transform_urls) }
           }]
         end.to_h
diff --git a/qa/qa/support/api.rb b/qa/qa/support/api.rb
index 2ffd4e5d7afc6c9e439f8b37b2e53f5fe26683b7..6431511e6c4010b0e364250f5e5ae68824937d12 100644
--- a/qa/qa/support/api.rb
+++ b/qa/qa/support/api.rb
@@ -159,7 +159,7 @@ def with_paginated_response_body(url, attempts: 0)
 
         loop do
           response = if attempts > 0
-                       Retrier.retry_on_exception(max_attempts: attempts, log: false) do
+                       Retrier.retry_on_exception(max_attempts: attempts, log: false, sleep_interval: 1) do
                          get(url).tap { |resp| not_ok_error.call(resp) if resp.code != HTTP_STATUS_OK }
                        end
                      else