# Upgrade to clerk-sdk-ruby v4

In January 2025, version 4.0 of the Clerk Ruby SDK was released. This guide covers the breaking changes that were introduced.

## `Clerk.configure` updates

Previously, `Clerk.configure` accepted `api_key` as a parameter. Now, it accepts `secret_key` instead.

```ruby
require 'clerk'

Clerk.configure do |c|
  c.api_key = `{{secret}}`
  c.secret_key = `{{secret}}`
end
```

## `middleware_cache_store` updates

Previously, if Rails was detected, the `middleware_cache_store` was set to `Rails.cache`. Otherwise, it was set to `nil`.

Now, if Rails is not detected, the `middleware_cache_store` attempts to use `ActiveSupport::Cache::MemoryStore` before defaulting to `nil`.

## Available methods updates

With the introduction of our generated Ruby HTTP Client, the `Clerk::SDK` class methods have all been overhauled to align with the [Clerk OpenAPI specification](https://github.com/clerk/openapi-specs){{ target: '_blank' }}.

Refer to the [Ruby HTTP Client documentation](https://github.com/clerk/clerk-http-client-ruby/tree/main/.generated#documentation-for-api-endpoints){{ target: '_blank' }} for more information on what methods are available via the `Clerk::SDK` class or the `clerk.sdk` helper method.

---

## Sitemap

[Overview of all docs pages](https://clerk.com/docs/llms.txt)
