diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,10 @@
 # Changelog
 
+## 0.2
+
+* Breaking: `Applicative` and `Monad` constraint on `m` in
+  `apiToHandler'`. See `rest-core-0.37` for more details.
+
 #### 0.1.17.18
 
 * Allow `rest-core 0.36.*`
diff --git a/rest-snap.cabal b/rest-snap.cabal
--- a/rest-snap.cabal
+++ b/rest-snap.cabal
@@ -1,5 +1,5 @@
 name:                rest-snap
-version:             0.1.17.18
+version:             0.2
 description:         Rest driver for Snap.
 synopsis:            Rest driver for Snap.
 maintainer:          code@silk.co
@@ -25,7 +25,7 @@
       base == 4.*
     , bytestring >= 0.9 && < 0.11
     , case-insensitive >= 0.4 && < 1.3
-    , rest-core >= 0.34 && < 0.37
+    , rest-core >= 0.34 && < 0.38
     , safe >= 0.2 && < 0.4
     , snap-core == 0.9.*
     , unordered-containers == 0.2.*
diff --git a/src/Rest/Driver/Snap.hs b/src/Rest/Driver/Snap.hs
--- a/src/Rest/Driver/Snap.hs
+++ b/src/Rest/Driver/Snap.hs
@@ -9,6 +9,7 @@
 import Snap.Core
 import Snap.Util.FileServe (defaultMimeTypes)
 
+import Control.Applicative
 import qualified Data.ByteString.Char8 as Char8
 import qualified Data.ByteString.UTF8  as UTF8
 import qualified Data.CaseInsensitive  as CI
@@ -26,7 +27,7 @@
 apiToHandler :: Api Snap -> Snap ()
 apiToHandler = apiToHandler' id
 
-apiToHandler' :: Run m Snap -> Api m -> Snap ()
+apiToHandler' :: (Applicative m, Monad m) => Run m Snap -> Api m -> Snap ()
 apiToHandler' run api = Rest.apiToHandler' run api >>= writeLBS
 
 instance Rest Snap where
