diff --git a/servant-aeson-specs.cabal b/servant-aeson-specs.cabal
--- a/servant-aeson-specs.cabal
+++ b/servant-aeson-specs.cabal
@@ -3,7 +3,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           servant-aeson-specs
-version:        0.3
+version:        0.4
 synopsis:       generic tests for aeson serialization in servant
 description:    tests for aeson serialization in servant
 category:       Web
diff --git a/src/Servant/Aeson/Internal.hs b/src/Servant/Aeson/Internal.hs
--- a/src/Servant/Aeson/Internal.hs
+++ b/src/Servant/Aeson/Internal.hs
@@ -59,6 +59,21 @@
     collectRoundtripSpecs (Proxy :: Proxy a) ++
     collectRoundtripSpecs (Proxy :: Proxy b)
 
+-- * http methods
+
+#if MIN_VERSION_servant(0, 5, 0)
+instance {-# OVERLAPPABLE #-}
+  (MkTypeSpecs response) =>
+  HasGenericSpecs (Verb (method :: StdMethod) returnStatus contentTypes response) where
+
+  collectRoundtripSpecs Proxy = do
+    mkTypeSpecs (Proxy :: Proxy response)
+
+instance {-# OVERLAPPING #-}
+  HasGenericSpecs (Verb (method :: StdMethod) returnStatus contentTypes NoContent) where
+
+  collectRoundtripSpecs Proxy = []
+#else
 instance (MkTypeSpecs response) =>
   HasGenericSpecs (Get contentTypes response) where
 
@@ -69,6 +84,9 @@
   HasGenericSpecs (Post contentTypes response) where
 
   collectRoundtripSpecs Proxy = mkTypeSpecs (Proxy :: Proxy response)
+#endif
+
+-- * combinators
 
 instance (MkTypeSpecs body, HasGenericSpecs api) =>
   HasGenericSpecs (ReqBody contentTypes body :> api) where
diff --git a/test/Servant/Aeson/RoundtripSpecsSpec.hs b/test/Servant/Aeson/RoundtripSpecsSpec.hs
--- a/test/Servant/Aeson/RoundtripSpecsSpec.hs
+++ b/test/Servant/Aeson/RoundtripSpecsSpec.hs
@@ -85,14 +85,22 @@
     it "returns types sorted by name" $ do
       usedTypes reqBodyFailApi `shouldBe` [boolRep, faultyRoundtripRep]
 
+    it "works for Post" $ do
+      usedTypes postApi `shouldBe` [boolRep]
+
     matrixParamTest
 
+    noContentTest
+
 reqBodyFailApi :: Proxy (ReqBody '[JSON] FaultyRoundtrip :> Get '[JSON] Bool)
 reqBodyFailApi = Proxy
 
 getFailApi :: Proxy (Get '[JSON] FaultyRoundtrip)
 getFailApi = Proxy
 
+postApi :: Proxy (Post '[JSON] Bool)
+postApi = Proxy
+
 getListOfBool :: Proxy (Get '[JSON] [Bool])
 getListOfBool = Proxy
 
@@ -115,4 +123,16 @@
 matrixParamApi = Proxy
 #else
 matrixParamTest = return ()
+#endif
+
+noContentTest :: Spec
+#if MIN_VERSION_servant(0, 5, 0)
+noContentTest = do
+  it "works for Apis containing NoContent" $ do
+    usedTypes noContentApi `shouldBe` [boolRep]
+
+noContentApi :: Proxy (ReqBody '[JSON] Bool :> GetNoContent '[JSON] NoContent)
+noContentApi = Proxy
+#else
+noContentTest = return ()
 #endif
