diff --git a/rest-core.cabal b/rest-core.cabal
--- a/rest-core.cabal
+++ b/rest-core.cabal
@@ -1,5 +1,5 @@
 Name:             rest-core
-Version:          0.27.0.1
+Version:          0.27.0.2
 Description:      Rest API library.
 Synopsis:         Rest API library.
 Maintainer:       code@silk.co
@@ -14,19 +14,20 @@
   Hs-Source-Dirs:   src
   Build-Depends:
       base                      == 4.*
+    , aeson                     >= 0.7    &&  < 0.8
+    , aeson-utils               == 0.2.*
     , bytestring                >= 0.9    &&  < 0.11
-    , cgi                       == 3001.1.8.101
+    , cgi                       == 3001.1.*
     , containers                >= 0.3    &&  < 0.6
     , either                    >= 3.4    &&  < 4.2
     , errors                    == 1.4.*
     , fclabels                  == 2.0.*
     , hxt                       >= 9.2    &&  < 9.4
-    , aeson                     >= 0.7    &&  < 0.8
-    , aeson-utils               == 0.2.*
+    , hxt-pickle-utils          == 0.1.*
     , json-schema               == 0.4.*
     , mtl                       >= 2.0    &&  < 2.2
+    , multipart                 == 0.1.*
     , random                    == 1.0.*
-    , hxt-pickle-utils          == 0.1.*
     , rest-types                == 1.9.0.1
     , safe                      >= 0.2    &&  < 0.4
     , split                     >= 0.1    &&  < 0.3
diff --git a/src/Rest/Dictionary/Combinators.hs b/src/Rest/Dictionary/Combinators.hs
--- a/src/Rest/Dictionary/Combinators.hs
+++ b/src/Rest/Dictionary/Combinators.hs
@@ -54,7 +54,7 @@
 import Data.JSON.Schema
 import Data.Text.Lazy (Text)
 import Data.Typeable
-import Network.CGI.Multipart (BodyPart)
+import Network.Multipart (BodyPart)
 import Text.XML.HXT.Arrow.Pickle
 import qualified Data.Label.Total as L
 
diff --git a/src/Rest/Dictionary/Types.hs b/src/Rest/Dictionary/Types.hs
--- a/src/Rest/Dictionary/Types.hs
+++ b/src/Rest/Dictionary/Types.hs
@@ -52,7 +52,7 @@
 import Data.Label.Derive
 import Data.Text.Lazy (Text)
 import Data.Typeable
-import Network.CGI.Multipart (BodyPart)
+import Network.Multipart (BodyPart)
 import Text.XML.HXT.Arrow.Pickle
 
 import Rest.Error
diff --git a/src/Rest/Driver/Perform.hs b/src/Rest/Driver/Perform.hs
--- a/src/Rest/Driver/Perform.hs
+++ b/src/Rest/Driver/Perform.hs
@@ -22,7 +22,7 @@
 import Data.Maybe
 import Data.Text.Lazy.Encoding (decodeUtf8)
 import Data.UUID (UUID)
-import Network.CGI.Multipart (showMultipartBody, MultiPart(..), BodyPart (..))
+import Network.Multipart (showMultipartBody, MultiPart(..), BodyPart (..))
 import Safe
 import System.IO.Unsafe
 import System.Random (randomIO)
diff --git a/src/Rest/Driver/Routing.hs b/src/Rest/Driver/Routing.hs
--- a/src/Rest/Driver/Routing.hs
+++ b/src/Rest/Driver/Routing.hs
@@ -25,7 +25,7 @@
 import Control.Monad.Trans.Either
 import Control.Monad.Trans.Maybe
 import Data.ByteString (ByteString)
-import Network.CGI.Multipart (BodyPart (..))
+import Network.Multipart (BodyPart (..))
 import Network.CGI.Protocol  (HeaderName (..))
 import Safe
 import qualified Control.Monad.State       as State
