RemoteTrigger tool returns 401 due to missing beta/version headers
Resolved 💬 3 comments Opened Apr 5, 2026 by BerryKuipers Closed Apr 9, 2026
Bug Description
The RemoteTrigger tool (and related remote features like ultraplan, schedule) returns 401 Unauthorized when called from within a Claude Code session, despite valid authentication.
Root Cause
The tool is not sending the required headers:
anthropic-beta: ccr-triggers-2026-01-30anthropic-version: 2023-06-01
The API returns a 400 Bad Request with the message:
"this API is in beta: add `ccr-triggers-2026-01-30` to the `anthropic-beta` header to use it"
But this error is presented to the user as a generic 401 Authentication failed.
Reproduction
- Have a valid Max subscription with
claudeAiOauthcredentials - Call
RemoteTriggerwithaction: "list"from within a session - Observe:
HTTP 401 {"type":"error","error":{"type":"authentication_error","message":"Authentication failed"}}
Proof that auth works
Calling the same endpoint with curl and the correct headers succeeds:
curl -s \
-H "Authorization: Bearer $TOKEN" \
-H "anthropic-beta: ccr-triggers-2026-01-30" \
-H "anthropic-version: 2023-06-01" \
"https://api.anthropic.com/v1/code/triggers"
# Returns triggers successfully
Environment
- Claude Code version: 2.1.92 (latest as of 2026-04-05)
- Platform: Windows 10 Pro (win32)
- Subscription: Max (5x), confirmed via credentials file (
subscriptionType: max,rateLimitTier: default_claude_max_5x) - OAuth scopes include
user:sessions:claude_code - Token is valid and not expired
Impact
All remote/scheduled features are broken from within sessions:
RemoteTriggertool → 401/ultraplan→ 401/schedule→ 401
Users can work around this by using curl directly with the beta header, but the built-in tools are non-functional.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗