Hello,
I have been using plugin-update-checker for several years to distribute updates for private plugins hosted on Bitbucket Cloud repositories.
The setup has been stable for years, but starting recently (around early March 2026) all update checks against Bitbucket private repositories started failing with HTTP 401 errors.
Nothing has changed in my plugins or configuration.
Environment
- WordPress: 6.9.4
- plugin-update-checker: latest version from this repository
- Hosting: standard PHP hosting
- Repository provider: Bitbucket Cloud (private repositories)
Code used
I use the Bitbucket integration with OAuth consumer credentials as described in the documentation:
add_action( 'plugins_loaded', 'pandplan_autoload_library', 0 );
function pandplan_autoload_library(){
$myUpdateChecker = PucFactory::buildUpdateChecker(
'https://bitbucket.org/ottomedia/pandora-planning/',
__FILE__,
'pandora-planning'
);
$myUpdateChecker->setAuthentication(array(
'consumer_key' => 'XXXX',
'consumer_secret' => 'YYYY',
));
}
This configuration has worked reliably for years.
Errors ### returned
When checking for updates from the WordPress dashboard, I now get:
BitBucket API error. Base URL: "https://api.bitbucket.org/2.0/repositories/ottomedia/pandora-fattureincloud/src/master/readme.txt", HTTP status code: 401.
BitBucket API error. Base URL: "https://api.bitbucket.org/2.0/repositories/ottomedia/pandora-fattureincloud/refs/tags?sort=-target.date", HTTP status code: 401.
BitBucket API error. Base URL: "https://api.bitbucket.org/2.0/repositories/ottomedia/pandora-fattureincloud/refs/branches/master", HTTP status code: 401.
Could not retrieve version information from the repository.
The problem affects all my plugins hosted on Bitbucket private repositories.
Possible cause
My suspicion is that this is related to Bitbucket Cloud authentication changes.
Bitbucket has recently deprecated OAuth 1.0 / legacy authentication and is transitioning to OAuth 2 and access tokens (brownout period started late February 2026).
Reference:
https://developer.atlassian.com/cloud/bitbucket/changelog/
Since plugin-update-checker currently authenticates to Bitbucket using:
consumer_key
consumer_secret
it may rely on the old OAuth flow that Bitbucket is deprecating.
Questions
Are there plans to update the Bitbucket integration to support the new authentication model?
I would be happy to help test any fixes if needed.
Thanks for maintaining this library — it has been extremely useful for distributing private plugin updates.
Hello,
I have been using plugin-update-checker for several years to distribute updates for private plugins hosted on Bitbucket Cloud repositories.
The setup has been stable for years, but starting recently (around early March 2026) all update checks against Bitbucket private repositories started failing with HTTP 401 errors.
Nothing has changed in my plugins or configuration.
Environment
Code used
I use the Bitbucket integration with OAuth consumer credentials as described in the documentation:
This configuration has worked reliably for years.
Errors ### returned
When checking for updates from the WordPress dashboard, I now get:
The problem affects all my plugins hosted on Bitbucket private repositories.
Possible cause
My suspicion is that this is related to Bitbucket Cloud authentication changes.
Bitbucket has recently deprecated OAuth 1.0 / legacy authentication and is transitioning to OAuth 2 and access tokens (brownout period started late February 2026).
Reference:
https://developer.atlassian.com/cloud/bitbucket/changelog/
Since plugin-update-checker currently authenticates to Bitbucket using:
it may rely on the old OAuth flow that Bitbucket is deprecating.
Questions
Are there plans to update the Bitbucket integration to support the new authentication model?
I would be happy to help test any fixes if needed.
Thanks for maintaining this library — it has been extremely useful for distributing private plugin updates.