Nothing appearing in site when using Sharepoint Migration Tool

Jason P 166 Reputation points
2023-12-05T15:15:02.9666667+00:00

Hi All,

Got an issue when using the sharepoint migration tool to upload files and folders from a share/local drive.

It logs on ok, and goes through the whole process. Completes with a green ticket, but when I look on the site there is nothing there.

I have even tried uploading from the sharepoint admin page using the migration agent, and that also fails. I am definitely logging on with a global admin account that has owner permissions on the site

These are the errors that I see in the logs:

2023-12-05 15:03:40.5468|ERROR|WF|RETRY|Try to load the web page Microsoft.SharePoint.Migration.Common.Exceptions.WebCredentialException ---> System.Net.WebException: The remote server returned an error: (403) Forbidden.
   at System.Net.HttpWebRequest.GetResponse()
   at Microsoft.SharePoint.MigrationTool.MigrationLib.Common.Net.HttpWebRequestProxy.GetResponse()
   --- End of inner exception stack trace ---
   at Microsoft.SharePoint.Migration.Common.Exceptions.WebExceptionBase.Create(WebException e)
   at Microsoft.SharePoint.Migration.Common.Utilities.ConvertWebException(WebException e, LogWrapperAbstract logger)
   at Microsoft.SharePoint.MigrationTool.MigrationLib.Common.Net.HttpWebRequestProxy.GetResponse()
   at Microsoft.SharePoint.MigrationTool.MigrationLib.SharePoint.SiteAuthChecker.<>c__DisplayClass31_0.<Is404Page>b__0()
   at Microsoft.SharePoint.Migration.Common.Utilities.<>c__DisplayClass13_0.<RunWithRetry>b__0()
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry[T](Func`1 logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, Int64 timeOutSeconds, Int32 retryIntervalMiliSeconds, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry[T](Func`1 logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, Int64 timeOutSeconds, Int32 retryIntervalMiliSeconds, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry(Action logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
   at Microsoft.SharePoint.MigrationTool.MigrationLib.SharePoint.SiteAuthChecker.Is404Page(String pageUrl)
2023-12-05 15:03:40.5468|DEBUG|WF|RETRY|Exception did not match retry types Microsoft.SharePoint.Migration.Common.Exceptions.WebCredentialException 
2023-12-05 15:03:40.5468|ERROR|WF|18|ad027a62|Web https://company.sharepoint.com/sites/itr does not returns 404 Microsoft.SharePoint.Migration.Common.Exceptions.WebCredentialException ---> System.Net.WebException: The remote server returned an error: (403) Forbidden.
   at System.Net.HttpWebRequest.GetResponse()
   at Microsoft.SharePoint.MigrationTool.MigrationLib.Common.Net.HttpWebRequestProxy.GetResponse()
   --- End of inner exception stack trace ---
   at Microsoft.SharePoint.Migration.Common.Exceptions.WebExceptionBase.Create(WebException e)
   at Microsoft.SharePoint.Migration.Common.Utilities.ConvertWebException(WebException e, LogWrapperAbstract logger)
   at Microsoft.SharePoint.MigrationTool.MigrationLib.Common.Net.HttpWebRequestProxy.GetResponse()
   at Microsoft.SharePoint.MigrationTool.MigrationLib.SharePoint.SiteAuthChecker.<>c__DisplayClass31_0.<Is404Page>b__0()
   at Microsoft.SharePoint.Migration.Common.Utilities.<>c__DisplayClass13_0.<RunWithRetry>b__0()
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry[T](Func`1 logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, Int64 timeOutSeconds, Int32 retryIntervalMiliSeconds, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry[T](Func`1 logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, Int64 timeOutSeconds, Int32 retryIntervalMiliSeconds, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry(Action logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
   at Microsoft.SharePoint.MigrationTool.MigrationLib.SharePoint.SiteAuthChecker.Is404Page(String pageUrl)
2023-12-05 15:03:40.8570|INFO|WF|18|ad027a62|Current user is site collection admin for site 'https://company.sharepoint.com/sites/itr'. No need try to set SCA. 
2023-12-05 15:03:40.8909|ERROR|WF|RETRY|Try to load the web page Microsoft.SharePoint.Migration.Common.Exceptions.WebCredentialException ---> System.Net.WebException: The remote server returned an error: (403) Forbidden.
   at System.Net.HttpWebRequest.GetResponse()
   at Microsoft.SharePoint.MigrationTool.MigrationLib.Common.Net.HttpWebRequestProxy.GetResponse()
   --- End of inner exception stack trace ---
   at Microsoft.SharePoint.Migration.Common.Exceptions.WebExceptionBase.Create(WebException e)
   at Microsoft.SharePoint.Migration.Common.Utilities.ConvertWebException(WebException e, LogWrapperAbstract logger)
   at Microsoft.SharePoint.MigrationTool.MigrationLib.Common.Net.HttpWebRequestProxy.GetResponse()
   at Microsoft.SharePoint.MigrationTool.MigrationLib.SharePoint.SiteAuthChecker.<>c__DisplayClass31_0.<Is404Page>b__0()
   at Microsoft.SharePoint.Migration.Common.Utilities.<>c__DisplayClass13_0.<RunWithRetry>b__0()
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry[T](Func`1 logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, Int64 timeOutSeconds, Int32 retryIntervalMiliSeconds, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry[T](Func`1 logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, Int64 timeOutSeconds, Int32 retryIntervalMiliSeconds, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry(Action logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
   at Microsoft.SharePoint.MigrationTool.MigrationLib.SharePoint.SiteAuthChecker.Is404Page(String pageUrl)
2023-12-05 15:03:40.8909|DEBUG|WF|RETRY|Exception did not match retry types Microsoft.SharePoint.Migration.Common.Exceptions.WebCredentialException 
2023-12-05 15:03:40.8909|ERROR|WF|18|ad027a62|Web https://company.sharepoint.com/sites/itr does not returns 404 Microsoft.SharePoint.Migration.Common.Exceptions.WebCredentialException ---> System.Net.WebException: The remote server returned an error: (403) Forbidden.
   at System.Net.HttpWebRequest.GetResponse()
   at Microsoft.SharePoint.MigrationTool.MigrationLib.Common.Net.HttpWebRequestProxy.GetResponse()
   --- End of inner exception stack trace ---
   at Microsoft.SharePoint.Migration.Common.Exceptions.WebExceptionBase.Create(WebException e)
   at Microsoft.SharePoint.Migration.Common.Utilities.ConvertWebException(WebException e, LogWrapperAbstract logger)
   at Microsoft.SharePoint.MigrationTool.MigrationLib.Common.Net.HttpWebRequestProxy.GetResponse()
   at Microsoft.SharePoint.MigrationTool.MigrationLib.SharePoint.SiteAuthChecker.<>c__DisplayClass31_0.<Is404Page>b__0()
   at Microsoft.SharePoint.Migration.Common.Utilities.<>c__DisplayClass13_0.<RunWithRetry>b__0()
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry[T](Func`1 logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, Int64 timeOutSeconds, Int32 retryIntervalMiliSeconds, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry[T](Func`1 logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, Int64 timeOutSeconds, Int32 retryIntervalMiliSeconds, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
   at Microsoft.SharePoint.Migration.Common.Utilities.RunWithRetry(Action logicToRetry, Boolean isSPORequest, LogWrapperAbstract logger, Int32 retryCount, String errorMessage, Type[] retryExceptionTypes, Type[] nonRetryExceptionTypes)
   at Microsoft.SharePoint.MigrationTool.MigrationLib.SharePoint.SiteAuthChecker.Is404Page(String pageUrl)
Microsoft 365 and Office SharePoint For business Windows
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. AllenXu-MSFT 24,941 Reputation points Moderator
    2023-12-06T02:51:17.2133333+00:00

    Hi @Jason P,

    The error message "The remote server returned an error: (403) Forbidden" in the logs doesn't affect the migration because I also found this error in my successful migration.

    User's image

    You should ensure that the files are scanned, packaged, uploaded, and imported correctly. Go to the migration report, check summary reports like "ItemSummary.csv", "ScanSummary.csv" and so on.


    If the answer is helpful, please click "Accept as Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.