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-30
  • anthropic-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

  1. Have a valid Max subscription with claudeAiOauth credentials
  2. Call RemoteTrigger with action: "list" from within a session
  3. 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:

  • RemoteTrigger tool → 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.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗