diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,13 @@
 
 All notable changes to the LaunchDarkly Haskell Server-side SDK will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org).
 
+## [4.5.0](https://github.com/launchdarkly/haskell-server-sdk/compare/4.4.1...4.5.0) (2025-04-14)
+
+
+### Features
+
+* Inline context for custom events ([#97](https://github.com/launchdarkly/haskell-server-sdk/issues/97)) ([0ad71aa](https://github.com/launchdarkly/haskell-server-sdk/commit/0ad71aa923ae62403f6762cebd673030a0cad9e5))
+
 ## [4.4.1](https://github.com/launchdarkly/haskell-server-sdk/compare/4.4.0...4.4.1) (2024-12-24)
 
 
diff --git a/launchdarkly-server-sdk.cabal b/launchdarkly-server-sdk.cabal
--- a/launchdarkly-server-sdk.cabal
+++ b/launchdarkly-server-sdk.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           launchdarkly-server-sdk
-version:        4.4.1
+version:        4.5.0
 synopsis:       Server-side SDK for integrating with LaunchDarkly
 description:    Please see the README on GitHub at <https://github.com/launchdarkly/haskell-server-sdk#readme>
 category:       Web
diff --git a/src/LaunchDarkly/Server/Client.hs b/src/LaunchDarkly/Server/Client.hs
--- a/src/LaunchDarkly/Server/Client.hs
+++ b/src/LaunchDarkly/Server/Client.hs
@@ -17,7 +17,7 @@
     , EvaluationReason (..)
     , EvalErrorKind (..)
     , allFlagsState
-    , AllFlagsState
+    , AllFlagsState (..)
     , secureModeHash
     , close
     , flushEvents
@@ -55,7 +55,7 @@
 import LaunchDarkly.Server.Config.HttpConfiguration (HttpConfiguration (..))
 import LaunchDarkly.Server.Config.Internal (ApplicationInfo, Config, getApplicationInfoHeader, shouldSendEvents)
 import LaunchDarkly.Server.Context (getValue)
-import LaunchDarkly.Server.Context.Internal (Context (Invalid), getCanonicalKey, getKey, getKeys, optionallyRedactAnonymous, redactContext)
+import LaunchDarkly.Server.Context.Internal (Context (Invalid), getCanonicalKey, getKey, optionallyRedactAnonymous, redactContext, redactContextRedactAnonymous)
 import LaunchDarkly.Server.DataSource.Internal (DataSource (..), DataSourceFactory, DataSourceUpdates (..), defaultDataSourceUpdates, nullDataSourceFactory)
 import LaunchDarkly.Server.Details (EvalErrorKind (..), EvaluationDetail (..), EvaluationReason (..))
 import LaunchDarkly.Server.Evaluate (evaluateDetail, evaluateTyped)
@@ -293,7 +293,7 @@
         makeBaseEvent $
             CustomEvent
                 { key = key
-                , contextKeys = getKeys context
+                , context = redactContextRedactAnonymous (getField @"config" client) context
                 , metricValue = metric
                 , value = value
                 }
diff --git a/src/LaunchDarkly/Server/Client/Internal.hs b/src/LaunchDarkly/Server/Client/Internal.hs
--- a/src/LaunchDarkly/Server/Client/Internal.hs
+++ b/src/LaunchDarkly/Server/Client/Internal.hs
@@ -21,7 +21,7 @@
 
 -- | The version string for this library.
 clientVersion :: Text
-clientVersion = "4.4.1" -- x-release-please-version
+clientVersion = "4.5.0" -- x-release-please-version
 
 -- |
 -- Client is the LaunchDarkly client. Client instances are thread-safe.
diff --git a/src/LaunchDarkly/Server/Events.hs b/src/LaunchDarkly/Server/Events.hs
--- a/src/LaunchDarkly/Server/Events.hs
+++ b/src/LaunchDarkly/Server/Events.hs
@@ -214,7 +214,7 @@
 
 data CustomEvent = CustomEvent
     { key :: !Text
-    , contextKeys :: !(KeyMap Text)
+    , context :: !Value
     , metricValue :: !(Maybe Double)
     , value :: !(Maybe Value)
     }
@@ -226,7 +226,7 @@
             filter
                 ((/=) Null . snd)
                 [ ("key", toJSON $ getField @"key" ctx)
-                , ("contextKeys", toJSON $ getField @"contextKeys" ctx)
+                , ("context", toJSON $ getField @"context" ctx)
                 , ("metricValue", toJSON $ getField @"metricValue" ctx)
                 , ("data", toJSON $ getField @"value" ctx)
                 ]
