SonarLint sync with SonarQube 2026.1 fails due to deprecated API parameters

Operating system: macOS Tahoe Version 26.3.1
SonarQube for IntelliJ plugin version: 12.0.1.84418
IntelliJ version: IntelliJ IDEA 2026.1
Programming language: Java
Connected mode: yes
SonarQube Server version: v2026.1

When syncing with the server, I get the following error:

 [2026-04-02T08:29:32.429] [sonarlint-server-tracking-issue-updater] DEBUG sonarlint - GET 410 https://sonar.mycompany.com/sonar/api/hotspots/search.protobuf?projectKey=com.example.project&branch=main&ps=500&p=1 | response time=14ms
 [2026-04-02T08:29:32.429] [sonarlint-server-tracking-issue-updater] ERROR sonarlint - Error parsing JSON error
com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Use JsonReader.setStrictness(Strictness.LENIENT) to accept malformed JSON at line 1 column 6 path $
See https://github.com/google/gson/blob/main/Troubleshooting.md#malformed-json
	at com.google.gson.JsonParser.parseReader(JsonParser.java:116)
	at com.google.gson.JsonParser.parseString(JsonParser.java:92)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.tryParseAsJsonError(ServerApiHelper.java:266)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.handleError(ServerApiHelper.java:250)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.processPage(ServerApiHelper.java:332)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.lambda$getPaginatedBaseUrl$2(ServerApiHelper.java:321)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.lambda$consumeTimed$4(ServerApiHelper.java:381)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.processTimed(ServerApiHelper.java:370)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.consumeTimed(ServerApiHelper.java:380)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.getPaginatedBaseUrl(ServerApiHelper.java:319)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.getPaginated(ServerApiHelper.java:295)
	at org.sonarsource.sonarlint.core.serverapi.ServerApiHelper.getPaginated(ServerApiHelper.java:288)
	at org.sonarsource.sonarlint.core.serverapi.hotspot.HotspotApi.searchHotspots(HotspotApi.java:146)
	at org.sonarsource.sonarlint.core.serverapi.hotspot.HotspotApi.getAll(HotspotApi.java:81)
	at org.sonarsource.sonarlint.core.serverconnection.ServerHotspotUpdater.updateAll(ServerHotspotUpdater.java:46)
	at org.sonarsource.sonarlint.core.sync.HotspotSynchronizationService.downloadAllServerHotspots(HotspotSynchronizationService.java:81)
	at org.sonarsource.sonarlint.core.sync.HotspotSynchronizationService.lambda$fetchProjectHotspots$0(HotspotSynchronizationService.java:73)
	at org.sonarsource.sonarlint.core.connection.SonarQubeClient.withClientApi(SonarQubeClient.java:76)
	at org.sonarsource.sonarlint.core.SonarQubeClientManager.lambda$withActiveClient$1(SonarQubeClientManager.java:80)
	at java.base/java.util.Optional.ifPresent(Optional.java:178)
	at org.sonarsource.sonarlint.core.SonarQubeClientManager.withActiveClient(SonarQubeClientManager.java:80)
	at org.sonarsource.sonarlint.core.sync.HotspotSynchronizationService.fetchProjectHotspots(HotspotSynchronizationService.java:72)
	at org.sonarsource.sonarlint.core.sync.FindingsSynchronizationService.lambda$refreshServerSecurityHotspots$3(FindingsSynchronizationService.java:98)
	at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1825)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
	at java.base/java.lang.Thread.run(Thread.java:1474)
Caused by: com.google.gson.stream.MalformedJsonException: Use JsonReader.setStrictness(Strictness.LENIENT) to accept malformed JSON at line 1 column 6 path $
See https://github.com/google/gson/blob/main/Troubleshooting.md#malformed-json
	at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1817)
	at com.google.gson.stream.JsonReader.checkLenient(JsonReader.java:1613)
	at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:672)
	at com.google.gson.stream.JsonReader.peek(JsonReader.java:547)
	at com.google.gson.JsonParser.parseReader(JsonParser.java:111)
	... 26 more

After clicking the “Open in IDE” button, I get the same error when calling:
https://sonar.mycompany.com/sonar/api/issues/search.protobuf?issues=7f3c9a12-5b44-4e2d-9a7f-1c8e6d4b2f90&componentKeys=com.example.project&ps=1&p=1&pullRequest=77

When opening the page in a browser, I get the following response:


You are seeing this page because you have accessed a URL that is deprecated or a deprecated parameter has been specified.

See: https://sonar.mycompany.com/sonar/web_api

API Calls

=======================================================================================================================

GET /sonar/api/hotspots/search

GET /sonar/api/hotspots/search.protobuf

    - Parameter 'projectKey' is deprecated since 10.2 and will be removed in a future version.


GET /sonar/api/issues/search

    - Parameter 'componentKeys' is deprecated since 10.2 and will be removed in a future version.


GET /sonar/api/users/search

    - Web service is deprecated since 10.4 and will be removed in a future version.

When I change the componentKeys to components in the URL I get the protobuf-file.

It seems that the plugin still uses deprecated parameters that are no longer supported by the server. Is this a known compatibility issue between SonarQube 2026.1 and SonarLint 12.0.1? Or is there a workaround?

Hello @SonarUser26 , thanks for reaching out.

This error typically happens when the HTTP client tries to parse as JSON a response that is definitely not JSON - usually, it’s a HTML page with the proxy authentication error.

Does your SonarQube Server instance has a SSO page when you access it?

Regarding the endpoint, componentKeys - while being deprecated - should still work, even on the latest version.

What I would suggest:

  • Verify that your token is valid (USER token)

  • Make sure the IntelliJ proxy settings are set correctly

  • Perhaps try with without /sonar in the URL, if there’s a redirection it may interfere with SQ:IDE

  • If you can try to track the request via WireShark, for example, that would be the best to investigate what happens

Let me know how it goes, thanks!

I deleted the .sonarlint folder from my home directory and got the error during synchronisation. 404 for the call made to api/settings/values.protobuf?component=