Hi,
I am trying to migrate a project from Jira to Azure DevOps using Solidify's Jira to Azure DevOps migrator
The Jira export command was running successfully till Friday and started failing with this error from today i.e. Monday. Earlier the version was v3.0.542
Jira-export command failing with the error The requested API has been removed.". Below is the complete error description.
[I][17:48:22] Retrieving Jira link types...
[E][17:48:24] Failed to get item count using query: 'project = [HIDDEN QUERY]'
[System.AggregateException] System.AggregateException: One or more errors occurred. (Response Status Code: 410. Response Content: {"errorMessages":["The requested API has been removed. Please migrate to the /rest/api/3/search/jql API. A full migration guideline is available at https://developer.atlassian.com/changelog/#CHANGE-2046"],"errors":{}})
---> System.InvalidOperationException: Response Status Code: 410. Response Content: {"errorMessages":["The requested API has been removed. Please migrate to the /rest/api/3/search/jql API. A full migration guideline is available at https://developer.atlassian.com/changelog/#CHANGE-2046"],"errors":{}}
at Atlassian.Jira.Remote.JiraRestClient.GetValidJsonFromResponse(IRestRequest request, IRestResponse response)
at Atlassian.Jira.Remote.JiraRestClient.ExecuteRequestAsync(Method method, String resource, Object requestBody, CancellationToken token)
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
at System.Threading.Tasks.Task`1.get_Result()
at JiraExport.JiraProvider.GetItemCount(String jql):
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
at System.Threading.Tasks.Task`1.get_Result()
at JiraExport.JiraProvider.GetItemCount(String jql)
[I][17:48:25] Export started. Selecting 0 items.
[W][17:48:26] User mapping file 'C:\Temp\JiraExport\users.txt' not found, ignoring mapping user identities.
[I][17:48:26] Initializing Jira field mapping...
[E][17:48:27] Failed to retrieve issues
[System.AggregateException] System.AggregateException: One or more errors occurred. (Response Status Code: 410. Response Content: {"errorMessages":["The requested API has been removed. Please migrate to the /rest/api/3/search/jql API. A full migration guideline is available at https://developer.atlassian.com/changelog/#CHANGE-2046"],"errors":{}})
---> System.InvalidOperationException: Response Status Code: 410. Response Content: {"errorMessages":["The requested API has been removed. Please migrate to the /rest/api/3/search/jql API. A full migration guideline is available at https://developer.atlassian.com/changelog/#CHANGE-2046"],"errors":{}}
at Atlassian.Jira.Remote.JiraRestClient.GetValidJsonFromResponse(IRestRequest request, IRestResponse response)
at Atlassian.Jira.Remote.JiraRestClient.ExecuteRequestAsync(Method method, String resource, Object requestBody, CancellationToken token)
--- End of inner exception stack trace ---
at JiraExport.JiraProvider.EnumerateIssues(String jql, HashSet`1 skipList, DownloadOptions downloadOptions)+MoveNext():
at JiraExport.JiraProvider.EnumerateIssues(String jql, HashSet`1 skipList, DownloadOptions downloadOptions)+MoveNext(
Then I tried downloading the latest release from https://github.com/solidify/jira-azuredevops-migrator/releases and the latest verion is v3.0.550
It is still failing with the latest version withe the same error. Request you to help me to proceed with this. Thank you!
Best regards,
Devadatta Gadre
Hey @Devadatta Gadre ,
Welcome to Atlassian Community :)
The 410 status code means the JVIS API you were using has been removed. This is a planned change we have been announcing since August 2024.
Please migrate to the new, enhanced search-based API. You can find full details and migration guidance in our https://developer.atlassian.com/changelog/#CHANGE-2046
Here are the deprecated JVIS Endpoints and Their Replacements
GET /rest/api/3/search → GET /rest/api/3/search/jql
POST /rest/api/3/search → POST /rest/api/3/search/jql
POST /rest/api/3/search/id → Jira Cloud platform REST API
I hope this will help fix the issue, have a good day!
Regards
Chitra Nagdeo
Hi @Devadatta Gadre ,
Welcome to the Community! I did a check with Cursor which indicated that the issue is in this part of the code, in jira-azuredevops-migrator-3.0.550/src/WorkItemMigrator/JiraExport/JiraProvider.cs
We'd need t. make this change to refer to the new API:
// OLD (causing 410 error):
response = _jiraServiceWrapper.RestClient.ExecuteRequestAsync(Method.GET, $"{JiraApiV2}/search?jql={jql}...").Result;
// NEW (fixed):
response = _jiraServiceWrapper.RestClient.ExecuteRequestAsync(Method.GET, $"{JiraApiV3Search}?jql={jql}...").Result;
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Thank you for the quick response.
How do I make that change in the code or script? I have downloaded the tool "Solidify's Jira to Azure DevOps migrator" from GitHub.. Can you please help me to incorporate the above fix in the code that you have mentioned?
Best regards,
Devadatta Gadre
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.