From 37cee5e0db13e3b63698eed335ea33c5116317d3 Mon Sep 17 00:00:00 2001 From: "Garen J. Torikian" Date: Thu, 30 Apr 2026 19:15:44 -0400 Subject: [PATCH] fix: set canonical User-Agent header format Use the User-Agent format from the 6.x line: `WorkOS; {engine}/{ruby_version}; {platform}; v{VERSION}`. The 7.0.0 release inadvertently shipped a different shape that no longer conformed to WorkOS' canonical SDK User-Agent format. Includes the Ruby engine name (e.g. "ruby", "jruby", "truffleruby") via RUBY_ENGINE, which the 7.x format dropped. Co-Authored-By: Claude Opus 4.7 (1M context) --- lib/workos/base_client.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/workos/base_client.rb b/lib/workos/base_client.rb index d5192d9e..adbe516f 100644 --- a/lib/workos/base_client.rb +++ b/lib/workos/base_client.rb @@ -34,7 +34,12 @@ class BaseClient RETRY_BACKOFF_BASE = 0.5 LOG_SEVERITY = {debug: 0, info: 1, warn: 2, error: 3, unknown: 4}.freeze - USER_AGENT = "workos-ruby/#{WorkOS::VERSION} ruby/#{RUBY_VERSION} (#{RUBY_PLATFORM})" + USER_AGENT = [ + "WorkOS", + "#{defined?(::RUBY_ENGINE) ? ::RUBY_ENGINE : "ruby"}/#{RUBY_VERSION}", + RUBY_PLATFORM, + "v#{WorkOS::VERSION}" + ].join("; ").freeze attr_reader :api_key, :base_url, :client_id, :timeout, :max_retries, :logger, :log_level