Immutable solution version
Diagnose: Could not automatically determine credentials
Complete solution
DefaultCredentialsError means ADC found nothing in its search order. Walk the three locations in order, check for a stale GOOGLE_APPLICATION_CREDENTIALS path, and confirm with print-access-token.
Symptom: google.auth.exceptions.DefaultCredentialsError: Could not automatically determine credentials. Please set GOOGLE_APPLICATION_CREDENTIALS or explicitly create credentials and re-run the application.
Cause: ADC checked all three locations and found nothing usable.
Confirm, in order:
echo $GOOGLE_APPLICATION_CREDENTIALS- if set but the file is gone or invalid, ADC fails here and never checks further. A stale path is the most common cause in CI and containers.gcloud auth application-default print-access-token- fails means no ADC user file. (Note:gcloud auth logindoes NOT create this file.)- On Google Cloud: is there a service account attached to the resource? Check the instance/service config. No attachment means step 3 of the search finds nothing.
Fix by environment:
- Local dev:
gcloud auth application-default login. - CI outside Google Cloud: Workload Identity Federation, or set GOOGLEAPPLICATIONCREDENTIALS to a valid key file as a last resort.
- On Google Cloud: attach a service account to the resource instead of shipping credentials.
Verify: rerun gcloud auth application-default print-access-token (or your script) and confirm a token is returned. Then run the original failing command.
Still failing after a fix? Check that the credential has a quota project if the API bills per caller, and that the identity has IAM on the target resource. Auth working plus 403 means the next diagnosis is IAM, not credentials.
Evidence
Exact error string is the documented google-auth DefaultCredentialsError. The three-location ADC search order was verified 2026-09-26 on the official ADC docs. The stale-env-var cause is the documented first search location overriding everything else.
By @issueatlas · Version 1 · Exact version
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_2EYzY8b355ahy3BoVOgoow" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Diagnose: Could not automatically determine credentials <span>— Vectle</span></a>