Error 404 on https://api.sonarcloud.io/analysis/analyses

Hi,

the Sonar scanner on CircleCI recently started failing each run with:

com.sonarsource.scanner.engine.webapi.client.HttpException: Error 404 on https://api.sonarcloud.io/analysis/analyses

The exception handling fails and eventually throws

Error creating bean with name ‘org.sonarsource.scanner.api.internal.IsolatedClassloader@795cd85e-org.sonar.scanner.report.ReportPublisher’: Unsatisfied dependency expressed
  • ALM: GitHub
  • CI: CircleCI
  • Scanner command: (Unchanged since 07/2023)
version: 2.1

orbs:
  sonarcloud: sonarsource/sonarcloud@2.0.0
[...]
jobs:
  sonar:
    executor:
      name: test
      pyversion: "3.10"

    steps:
      [...]
      - sonarcloud/scan
[...]

  • Languages of the repository: Python, JavaScript, HTML
  • Only if the SonarCloud project is public, the URL: Not public, private/paid SonarCloud
    • Fails on all PRs now
  • Error observed (wrap logs/code around with triple quotes ``` for proper formatting)

Full log with stacktrace:

/tmp/cache/scanner/.sonar
INFO: Scanner configuration file: /tmp/cache/scanner/sonar-scanner-5.0.1.3006-linux/conf/sonar-scanner.properties
INFO: Project root configuration file: /home/circleci/project/sonar-project.properties
INFO: SonarScanner 5.0.1.3006
INFO: Java 17.0.7 Eclipse Adoptium (64-bit)
INFO: Linux 6.8.0-1040-aws amd64
INFO: User cache: /tmp/cache/scanner/.sonar/cache
INFO: Analyzing on SonarCloud
INFO: Default locale: "en_US", source code encoding: "UTF-8" (analysis is platform dependent)
INFO: Load global settings
INFO: Load global settings (done) | time=628ms
[...]
INFO: Load project pull requests
INFO: Load project pull requests (done) | time=294ms
INFO: Load branch configuration
INFO: Auto-configuring pull request 1410
INFO: Load branch configuration (done) | time=1464ms
INFO: Load quality profiles
INFO: Load quality profiles (done) | time=821ms
INFO: Inferred api base url 'https://api.sonarcloud.io' from host url 'https://sonarcloud.io'.
INFO: Create analysis
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
INFO: Total time: 7.427s
INFO: Final Memory: 12M/50M
INFO: ------------------------------------------------------------------------
ERROR: Error during SonarScanner execution
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.sonarsource.scanner.api.internal.IsolatedClassloader@795cd85e-org.sonar.scanner.report.ReportPublisher': Unsatisfied dependency expressed through constructor parameter 7: Error creating bean with name 'org.sonarsource.scanner.api.internal.IsolatedClassloader@795cd85e-org.sonar.scanner.report.MetadataPublisher': Unsatisfied dependency expressed through constructor parameter 8: Error creating bean with name 'Analysis' defined in org.sonar.scanner.analysis.AnalysisProvider: Failed to instantiate [org.sonar.scanner.extension.api.Analysis]: Factory method 'provide' threw exception with message: Unable to create analysis
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1395)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1232)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:373)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1221)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1187)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1123)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:987)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:627)
        at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:209)
        at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:189)
        at org.sonar.scanner.bootstrap.SpringGlobalContainer.doAfterStart(SpringGlobalContainer.java:146)
        at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:210)
        at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:189)
        at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:58)
        at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:52)
        at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)
        at jdk.proxy1/jdk.proxy1.$Proxy0.execute(Unknown Source)
        at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189)
        at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138)
        at org.sonarsource.scanner.cli.Main.execute(Main.java:126)
        at org.sonarsource.scanner.cli.Main.execute(Main.java:81)
        at org.sonarsource.scanner.cli.Main.main(Main.java:62)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.sonarsource.scanner.api.internal.IsolatedClassloader@795cd85e-org.sonar.scanner.report.MetadataPublisher': Unsatisfied dependency expressed through constructor parameter 8: Error creating bean with name 'Analysis' defined in org.sonar.scanner.analysis.AnalysisProvider: Failed to instantiate [org.sonar.scanner.extension.api.Analysis]: Factory method 'provide' threw exception with message: Unable to create analysis
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1395)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1232)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:373)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
        at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:2011)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1975)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1814)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1709)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1643)
        at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913)
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
        ... 33 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'Analysis' defined in org.sonar.scanner.analysis.AnalysisProvider: Failed to instantiate [org.sonar.scanner.extension.api.Analysis]: Factory method 'provide' threw exception with message: Unable to create analysis
        at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:657)
        at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:645)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1375)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1205)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:373)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
        at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1760)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1643)
        at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913)
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
        ... 50 more
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.sonar.scanner.extension.api.Analysis]: Factory method 'provide' threw exception with message: Unable to create analysis
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.lambda$instantiate$0(SimpleInstantiationStrategy.java:200)
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiateWithFactoryMethod(SimpleInstantiationStrategy.java:89)
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:169)
        at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
        ... 64 more
Caused by: java.lang.IllegalStateException: Unable to create analysis
        at org.sonar.scanner.analysis.AnalysisCreator.handleAnalysisCreationException(AnalysisCreator.java:140)
        at org.sonar.scanner.analysis.AnalysisCreator.load(AnalysisCreator.java:128)
        at org.sonar.scanner.analysis.AnalysisCreator.createAnalysis(AnalysisCreator.java:100)
        at org.sonar.scanner.analysis.AnalysisCreator.create(AnalysisCreator.java:92)
        at java.base/java.util.Optional.orElseGet(Unknown Source)
        at org.sonar.scanner.analysis.AnalysisProvider.provide(AnalysisProvider.java:18)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.lambda$instantiate$0(SimpleInstantiationStrategy.java:172)
        ... 67 more
Caused by: com.sonarsource.scanner.engine.webapi.client.HttpException: Error 404 on https://api.sonarcloud.io/analysis/analyses : 
        at com.sonarsource.scanner.engine.webapi.client.BaseResponse.failIfNotSuccessful(BaseResponse.java:22)
        at org.sonar.scanner.http.DefaultScannerWsClient.failIfUnauthorized(DefaultScannerWsClient.java:85)
        at org.sonar.scanner.http.DefaultScannerWsClient.call(DefaultScannerWsClient.java:58)
        at org.sonar.scanner.apiclient.DomainApiWsClientAdapter.call(DomainApiWsClientAdapter.java:46)
        at org.sonar.scanner.analysis.AnalysisCreator.load(AnalysisCreator.java:124)
        ... 76 more

  • First known failure: Wednesday, January 21st, 2026 at 06:39:08 UTC
  • Workaround: Cancel SonarCloud subscription (I guess, didn’t try it yet), merge without Sonar checks

My token is fine:

GitHub dropped some of my permissions yesterday by itself, but all of them got restored. Sonar has no trouble accessing GitHub. The error code is 404 Not found, not “Unauthorized”, so it’s probably unrelated.

Best regards,
Sebastian

Hi Sebastian,

Thanks for this report.

In fact, sometimes a 404 is related to permissions because systems return that (“I can’t find it”) rather than 401 (“It exists; try harder”) for security reasons.

Can we have the full analysis log, please?

 
Thx,
Ann

Hi again,

I’ve just confirmed internally that an error in the Create analysis step is indeed about permissions.

 
HTH,
Ann

Hi Ann,

why did Sonar remove the permissions from my token?

How can we restore them? Our GitHub repo admins tried but didn’t find any option in Sonar Cloud to grant any permissions to my account.

Best Regards,
Sebastian

Hi Sebastian,

You said GitHub dropped your permissions. We don’t drop permissions from user accounts, but perhaps the permissions drop was synched over from GitHub? And the restoration was not? Can you double-check that

  • You have the expected permissions in GitHub
  • You don’t have them in SonarQube Cloud

?

 
Thx,
Ann

Hi Ann,

I have full repo permissions in GitHub (as I had before) and I see only limited options in Sonar Cloud.

The Scanner should provide a clear error message if it’s a lack of permissions. It runs fine and suddenly breaks.

Best Regards,

Sebastian

PS: Our GitHub organization admins have the same menu options. No chance to change any permission.

Today is the fifth day we’re paying for a broken product.

Hi Sebastian,

There’s nothing at the bottom of that column?

Can you have your org admins check the permissions on the project and make sure you have analysis rights? Also, are you using a Scoped Organization Token for analysis or one from your own account?

 
Thx,
Ann

Hi Ann,

nothing except “Information” (which doesn’t help).

(Screenshot made by the GitHub admin.)

I guess, we’re using a token of my account (which was fine because I was the project admin). At least, the token in my account refreshes the “last used” time every time we’re running a CircleCI task.

I can send you full screenshots and logs - but not in public.

GitHub shows me as “Admin” of the repository, but not for the organization.

Best Regards,
Sebastian

Hi Sebastian,

You’re going to need to get an org admin to re-grant you permissions on the project. It looks like you have Browse, but you’ll also need Analysis and I suppose Administer.

Do you know what plan you’re on? If it’s Enterprise, they have a UI for that. If not, you’ll need to use the API. This post should help with that.

 
Ann

Hi Ann,

the API says that the project doesn’t exist. I copied the value from the “Information” page and also tried some variations.

I’ve been a huge fan of SonarQube back when we added it. This issue disappointed me a lot because you’re treating paying company customers like community edition/freeware users.

I just removed the SonarScanner Orb from our CI chain. Please cancel our subscription by now. We can’t do it via the cloud web UI because you removed all admin privileges.

What I expected from your company:

  1. Customer reports a service interruption - preferably via a support ticket (what you don’t have) or via email
  2. Someone from Sonar looks at our company account, notices the broken permissions,
    1. fixes them (because they’re logged in the history or change log)
    2. files a ticket why they got lost (unless the reason is already clear)
    3. files a ticket to issue an error instead of badly crashing the scanner on server errrors

That would have been maybe 15 minutes of your time. How long did you spent on this ticket not solving the problem?

Best Regards,
Sebastian

HI Sebastian,

Paid support is available if you’d like to go that route.

I’ve flagged your thread for the team.

 
Ann