diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,8 @@
+## 2.2.2.1
+
+* setRequestBodyJSON works with aeson's toEncoding function (>= 0.11)
+  [#230](https://github.com/snoyberg/http-client/pull/230)
+
 ## 2.2.2
 
 * Add `httpNoBody` to `Network.HTTP.Simple`
diff --git a/Network/HTTP/Simple.hs b/Network/HTTP/Simple.hs
--- a/Network/HTTP/Simple.hs
+++ b/Network/HTTP/Simple.hs
@@ -303,7 +303,7 @@
     req { H.requestHeaders
             = (H.hContentType, "application/json; charset=utf-8")
             : filter (\(y, _) -> y /= H.hContentType) (H.requestHeaders req)
-        , H.requestBody = H.RequestBodyLBS $ A.encode $ A.toJSON x
+        , H.requestBody = H.RequestBodyLBS $ A.encode x
         }
 
 -- | Set the request body as a lazy @ByteString@
diff --git a/http-conduit.cabal b/http-conduit.cabal
--- a/http-conduit.cabal
+++ b/http-conduit.cabal
@@ -1,5 +1,5 @@
 name:            http-conduit
-version:         2.2.2
+version:         2.2.2.1
 license:         BSD3
 license-file:    LICENSE
 author:          Michael Snoyman <michael@snoyman.com>
