claude-code - 💡(How to fix) Fix [BUG] Claude Code on macOS does not recognize active iOS Apple-billed Max subscription, login succeeds but CLI says account has no access [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#46847Fetched 2026-04-12 13:31:29
View on GitHub
Comments
1
Participants
2
Timeline
5
Reactions
0
Timeline (top)
labeled ×4commented ×1

Error Message

$ claude --version Claude Code v2.1.101

$ claude auth status { "loggedIn": true, "authMethod": "claude.ai", "apiProvider": "firstParty", "email": "[email protected]", "orgId": "3c5a99e3-55fa-48de-b073-f4852bd3e820", "orgName": "[email protected]'s Organization", "subscriptionType": "max" }

$ python3 - <<'PY' import json, os p = os.path.expanduser("~/.claude.json") with open(p) as f: data = json.load(f)

print("hasAvailableSubscription =", data.get("hasAvailableSubscription"))

oauth = data.get("oauthAccount", {}) print("billingType =", oauth.get("billingType")) print("subscriptionCreatedAt =", oauth.get("subscriptionCreatedAt")) print("organizationName =", oauth.get("organizationName")) PY

hasAvailableSubscription = False billingType = apple_subscription subscriptionCreatedAt = 2026-03-06T02:02:42.966595Z organizationName = [email protected]'s Organization

Interactive CLI behavior:

$ claude Claude Code v2.1.101

❯ hi

⏺ Your account does not have access to Claude Code. Please run /login.

I also previously saw:

Please run /login · API Error: 401 {"type":"error","error":{"type":"authentication_error","message":"Invalid authentication credentials"}}

even though a subsequent login reported success.

Code Example

$ claude --version
Claude Code v2.1.101

$ claude auth status
{
  "loggedIn": true,
  "authMethod": "claude.ai",
  "apiProvider": "firstParty",
  "email": "[email protected]",
  "orgId": "3c5a99e3-55fa-48de-b073-f4852bd3e820",
  "orgName": "[email protected]'s Organization",
  "subscriptionType": "max"
}

$ python3 - <<'PY'
import json, os
p = os.path.expanduser("~/.claude.json")
with open(p) as f:
    data = json.load(f)

print("hasAvailableSubscription =", data.get("hasAvailableSubscription"))

oauth = data.get("oauthAccount", {})
print("billingType =", oauth.get("billingType"))
print("subscriptionCreatedAt =", oauth.get("subscriptionCreatedAt"))
print("organizationName =", oauth.get("organizationName"))
PY

hasAvailableSubscription = False
billingType = apple_subscription
subscriptionCreatedAt = 2026-03-06T02:02:42.966595Z
organizationName = user@email.com's Organization

Interactive CLI behavior:

$ claude
Claude Code v2.1.101

❯ hi

Your account does not have access to Claude Code. Please run /login.

I also previously saw:

Please run /login · API Error: 401 {"type":"error","error":{"type":"authentication_error","message":"Invalid authentication credentials"}}

even though a subsequent login reported success.

---

CLAUDE_CODE_OAUTH_TOKEN
CLAUDE_CODE_OAUTH_REFRESH_TOKEN
CLAUDE_CODE_OAUTH_SCOPES
ANTHROPIC_API_KEY
RAW_BUFFERClick to expand / collapse

Preflight Checklist

  • I have searched existing issues and this hasn't been reported yet
  • This is a single bug report (please file separate reports for different bugs)
  • I am using the latest version of Claude Code

What's Wrong?

Claude Code on macOS CLI does not recognize my active Claude Max subscription that is billed through iOS Apple subscription.

I can successfully log in with claude auth login, and claude auth status shows that I am logged in with a valid Claude.ai account and that my subscriptionType is max. However, when I open claude interactively, it immediately says:

Your account does not have access to Claude Code. Please run /login.

I verified that the local state is contradictory:

claude auth status shows:

  • loggedIn: true
  • authMethod: "claude.ai"
  • apiProvider: "firstParty"
  • subscriptionType: "max"
  • but ~/.claude.json shows:
  • hasAvailableSubscription: false
  • oauthAccount.billingType: "apple_subscription"

This looks like an entitlement recognition mismatch. Authentication succeeds, but Claude Code does not honor the active Max subscription.

Important context: My subscription is through iOS App Store billing, specifically Claude Pro Max 20x, and I am using Claude Code CLI on macOS.

What Should Happen?

After a successful claude auth login, Claude Code should recognize my active Max subscription and allow me to use the CLI normally.

If claude auth status shows I am logged in and subscriptionType is max, the interactive CLI should not tell me that my account does not have access.

Error Messages/Logs

$ claude --version
Claude Code v2.1.101

$ claude auth status
{
  "loggedIn": true,
  "authMethod": "claude.ai",
  "apiProvider": "firstParty",
  "email": "[email protected]",
  "orgId": "3c5a99e3-55fa-48de-b073-f4852bd3e820",
  "orgName": "[email protected]'s Organization",
  "subscriptionType": "max"
}

$ python3 - <<'PY'
import json, os
p = os.path.expanduser("~/.claude.json")
with open(p) as f:
    data = json.load(f)

print("hasAvailableSubscription =", data.get("hasAvailableSubscription"))

oauth = data.get("oauthAccount", {})
print("billingType =", oauth.get("billingType"))
print("subscriptionCreatedAt =", oauth.get("subscriptionCreatedAt"))
print("organizationName =", oauth.get("organizationName"))
PY

hasAvailableSubscription = False
billingType = apple_subscription
subscriptionCreatedAt = 2026-03-06T02:02:42.966595Z
organizationName = [email protected]'s Organization

Interactive CLI behavior:

$ claude
Claude Code v2.1.101

❯ hi

⏺ Your account does not have access to Claude Code. Please run /login.

I also previously saw:

Please run /login · API Error: 401 {"type":"error","error":{"type":"authentication_error","message":"Invalid authentication credentials"}}

even though a subsequent login reported success.

Steps to Reproduce

Use a Claude account with an active iOS App Store billed subscription, specifically Claude Pro Max 20x. Install and use Claude Code CLI on macOS.

Run:

claude auth login

Complete browser login successfully.

Verify auth state:

claude auth status

Open Claude Code interactively:

claude

Observe that Claude Code says:

Your account does not have access to Claude Code. Please run /login.

Inspect local state in ~/.claude.json and observe: hasAvailableSubscription: false billingType: apple_subscription

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

No response

Claude Code Version

2.1.101

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

I already tried the common troubleshooting steps and they did not resolve the problem:

updated Claude Code to the latest version logged out and logged back in verified Keychain entry exists deleted and recreated Claude Code-credentials unlocked macOS login keychain checked claude doctor checked environment variables unset:

CLAUDE_CODE_OAUTH_TOKEN
CLAUDE_CODE_OAUTH_REFRESH_TOKEN
CLAUDE_CODE_OAUTH_SCOPES
ANTHROPIC_API_KEY

reviewed ~/.claude/settings.json reviewed ~/.claude.json

Relevant detail: claude auth status consistently shows a healthy authenticated Max account, but the local entitlement state still says hasAvailableSubscription: false.

This makes it look like a subscription entitlement bug, possibly specific to Apple App Store billed Pro/Max subscriptions being used with Claude Code CLI on macOS.

extent analysis

TL;DR

The issue is likely due to a mismatch in recognizing the active Claude Max subscription billed through the iOS App Store, and a potential fix involves ensuring consistent subscription entitlement recognition across different platforms.

Guidance

  • Verify that the Claude Code version is up-to-date, as the issue might be resolved in a newer version, although the user is already on version 2.1.101.
  • Check the ~/.claude.json file for any inconsistencies in the subscription information, particularly the hasAvailableSubscription and billingType fields.
  • Try resetting the Claude Code configuration by deleting the ~/.claude.json file and then logging in again with claude auth login to see if the issue persists.
  • If the problem is specific to Apple App Store billed subscriptions, consider reaching out to the Claude support team for further assistance, as this might be a known issue or require additional troubleshooting steps specific to this billing method.

Example

No specific code snippet is provided as the issue seems related to configuration and subscription recognition rather than a code-level problem.

Notes

The issue appears to be specific to the interaction between Claude Code CLI on macOS and subscriptions billed through the iOS App Store. The fact that claude auth status shows a valid subscription but the local state does not recognize it as available suggests a potential bug in handling subscription entitlements across different platforms.

Recommendation

Apply a workaround by trying to reset the configuration and re-login, as this might temporarily resolve the issue until a more permanent fix is available. If the problem persists, contacting the Claude support team for further assistance is recommended, especially since this issue seems specific to a particular billing method and platform combination.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING