diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+0.4.3
+-----
+* docsWith will no longer eat your documentation (https://github.com/haskell-servant/servant/pull/124)
+
 0.4
 ---
 * `Delete` now is like `Get`, `Post`, `Put`, and `Patch` and returns a response body
diff --git a/servant-docs.cabal b/servant-docs.cabal
--- a/servant-docs.cabal
+++ b/servant-docs.cabal
@@ -1,5 +1,5 @@
 name:                servant-docs
-version:             0.4.2
+version:             0.4.3
 synopsis:            generate API docs for your servant webservice
 description:
   Library for generating API docs from a servant API definition.
@@ -70,6 +70,7 @@
       base
     , aeson
     , hspec
+    , lens
     , servant
     , servant-docs
     , string-conversions
diff --git a/src/Servant/Docs/Internal.hs b/src/Servant/Docs/Internal.hs
--- a/src/Servant/Docs/Internal.hs
+++ b/src/Servant/Docs/Internal.hs
@@ -338,7 +338,7 @@
 docsWith :: HasDocs layout => [DocIntro] -> ExtraInfo layout -> Proxy layout -> API
 docsWith intros (ExtraInfo endpoints) p =
     docs p & apiIntros <>~ intros
-           & apiEndpoints %~ HM.unionWith combineAction endpoints
+           & apiEndpoints %~ HM.unionWith (flip combineAction) endpoints
 
 
 -- | Generate the docs for a given API that implements 'HasDocs' with with any
