{"version":"2.1.227","anchor":"apikeyhelper-output-is-validated-before-it-is-sent","canonical_anchor":"apikeyhelper-output-is-validated-before-it-is-sent","heading":"apiKeyHelper output is validated before it is sent","tier":"notice","area":"Auth","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.227\/e\/apikeyhelper-output-is-validated-before-it-is-sent","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.227","markdown":"### apiKeyHelper output is validated before it is sent\n\nYour apiKeyHelper output is now checked for junk characters and length before being used.\n\n**What**\n\nIf you use an `apiKeyHelper` script to supply your API key, its output is now checked for characters that cannot appear in a key and for a maximum length. Bad output makes Claude Code stop with an error telling you the script must print only the key. Previously any non-empty output was sent as-is.\n\n**Details**\n\n- The rejection message is \"apiKeyHelper output rejected: not a printable-ASCII token\".\n- Failure throws rather than falling back to an unauthenticated request, so a script that prints logs or a prompt alongside the key now fails loudly instead of causing a confusing auth error.\n\n**Evidence**\n\n`apiKeyHelper output rejected: not a printable-ASCII token`\n\n- Area: Auth\n- Names: `apiKeyHelper`\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 2\/5"}