diff --git a/servant-purescript.cabal b/servant-purescript.cabal
--- a/servant-purescript.cabal
+++ b/servant-purescript.cabal
@@ -1,5 +1,5 @@
 name:                servant-purescript
-version:             0.7.0.0
+version:             0.8.0.0
 synopsis:            Generate PureScript accessor functions for you servant API
 description:         Please see README.md
 homepage:            https://github.com/eskimor/servant-purescript#readme
diff --git a/src/Servant/PureScript/CodeGen.hs b/src/Servant/PureScript/CodeGen.hs
--- a/src/Servant/PureScript/CodeGen.hs
+++ b/src/Servant/PureScript/CodeGen.hs
@@ -88,7 +88,7 @@
 
 
 genSignature :: Text -> [PSType] -> Maybe PSType -> Doc
-genSignature = genSignatureBuilder $ "forall eff m." <+/> "(MonadAsk (SPSettings_ SPParams_) m, MonadError AjaxError m, MonadAff ( ajax :: AJAX | eff) m)" <+/> "=>"
+genSignature = genSignatureBuilder $ "forall eff m." <+/> "MonadAsk (SPSettings_ SPParams_) m => MonadError AjaxError m => MonadAff ( ajax :: AJAX | eff) m" <+/> "=>"
 
 genSignatureBuilder :: Doc -> Text -> [PSType] -> Maybe PSType -> Doc
 genSignatureBuilder constraint fnName params mRet = fName <+> "::" <+> align (constraint <+/> parameterString)
@@ -121,7 +121,7 @@
         </> ", headers =" <+> "defaultRequest.headers <> reqHeaders"
         </> case req ^. reqBody of
               Nothing -> "}"
-              Just _  -> ", content =" <+> "toNullable <<< Just <<< printJson <<< encodeJson $ reqBody" </> "}"
+              Just _  -> ", content =" <+> "toNullable <<< Just <<< stringify <<< encodeJson $ reqBody" </> "}"
       )
       </> "affResp <- affjax affReq"
       </> "getResult affReq decodeJson affResp" <> line
diff --git a/src/Servant/PureScript/Internal.hs b/src/Servant/PureScript/Internal.hs
--- a/src/Servant/PureScript/Internal.hs
+++ b/src/Servant/PureScript/Internal.hs
@@ -96,17 +96,16 @@
   , _standardImports = importsFromList
         [ ImportLine "Control.Monad.Reader.Class" (Set.fromList [ "class MonadAsk", "ask" ])
         , ImportLine "Control.Monad.Error.Class" (Set.fromList [ "class MonadError" ])
-        , ImportLine "Control.Monad.Aff.Class" (Set.fromList [ "class MonadAff", "liftAff" ])
+        , ImportLine "Control.Monad.Aff.Class" (Set.fromList [ "class MonadAff" ])
         , ImportLine "Network.HTTP.Affjax" (Set.fromList [ "AJAX" ])
-        , ImportLine "Global" (Set.fromList [ "encodeURIComponent" ]) -- from package globals
-        , ImportLine "Data.Nullable" (Set.fromList [ "Nullable()", "toNullable" ])
-        , ImportLine "Servant.PureScript.Affjax" (Set.fromList [ "defaultRequest", "affjax", "AjaxError(..)" ])
+        , ImportLine "Data.Nullable" (Set.fromList [ "toNullable" ])
+        , ImportLine "Servant.PureScript.Affjax" (Set.fromList [ "AjaxError", "defaultRequest", "affjax" ])
         , ImportLine "Servant.PureScript.Settings" (Set.fromList [ "SPSettings_(..)", "gDefaultToURLPiece" ])
         , ImportLine "Servant.PureScript.Util" (Set.fromList [ "encodeListQuery", "encodeURLPiece", "encodeQueryItem", "getResult", "encodeHeader" ])
         , ImportLine "Prim" (Set.fromList [ "String" ]) -- For baseURL!
         , ImportLine "Data.Argonaut.Generic.Aeson" (Set.fromList [ "encodeJson", "decodeJson" ]) -- Should not be necessary - compiler bug!
         , ImportLine "Data.Maybe" (Set.fromList [ "Maybe(..)"])
-        , ImportLine "Data.Argonaut.Printer" (Set.fromList [ "printJson" ])
+        , ImportLine "Data.Argonaut.Core" (Set.fromList [ "stringify" ])
         ]
   , _generateSubscriberAPI = False
   }
diff --git a/src/Servant/PureScript/MakeRequests.hs b/src/Servant/PureScript/MakeRequests.hs
--- a/src/Servant/PureScript/MakeRequests.hs
+++ b/src/Servant/PureScript/MakeRequests.hs
@@ -11,16 +11,18 @@
 
 import           Control.Lens                       hiding (List)
 import           Data.Map                           (Map)
-import           Data.Maybe                         (mapMaybe, maybeToList)
 import           Data.Proxy                         (Proxy (Proxy))
 import qualified Data.Set                           as Set
 import           Data.Text                          (Text)
 import qualified Data.Text                          as T
 import qualified Data.Text.Encoding                 as T
-import           Language.PureScript.Bridge
-import           Language.PureScript.Bridge         (buildBridge, defaultBridge)
-import           Language.PureScript.Bridge.PSTypes (psString, psUnit)
-import           Network.HTTP.Types.URI             (urlEncode)
+import           Language.PureScript.Bridge         (ImportLine (..),
+                                                     PSType,
+                                                     buildBridge,
+                                                     defaultBridge,
+                                                     importsFromList,
+                                                     mergeImportLines,
+                                                     mkTypeInfo)
 import           Servant.Foreign
 import           Servant.PureScript.CodeGen         hiding (genBuildHeader,
                                                      genBuildHeaders,
@@ -106,7 +108,7 @@
                                </> ", httpQuery:" <+> "reqQuery"
                                </> ", httpBody:" <+> case req ^. reqBody of
                                        Nothing -> "\"\""
-                                       Just _ -> "printJson <<< encodeJson $ reqBody"
+                                       Just _ -> "stringify <<< encodeJson $ reqBody"
                                </> "}")
       </> "pure spReq"
     ) <> "\n"
