diff --git a/src/TDLib/Effect.hs b/src/TDLib/Effect.hs
--- a/src/TDLib/Effect.hs
+++ b/src/TDLib/Effect.hs
@@ -11,7 +11,7 @@
 import TDLib.Types.Common
 
 data TDLib (m :: Type -> Type) a where
-  RunCmd :: (ToJSON cmd, FromJSON res, FromJSON err) => cmd -> TDLib m (err ∪ res)
+  RunCmd :: (ToJSON cmd, FromJSON res) => cmd -> TDLib m res
   SetVerbosity :: Verbosity -> TDLib m ()
   SetFatalErrorCallback :: (ByteString -> IO ()) -> TDLib m ()
   SetLogPath :: ByteString -> TDLib m Bool
@@ -19,12 +19,13 @@
 
 makeSem_ ''TDLib
 
+-- | runs a command and waits fot its result
 runCmd ::
-  forall cmd res err r.
-  (ToJSON cmd, FromJSON res, FromJSON err, Member TDLib r) =>
+  forall cmd res r.
+  (ToJSON cmd, FromJSON res, Member TDLib r) =>
   -- | Command
   cmd ->
-  Sem r (err ∪ res)
+  Sem r res
 
 setVerbosity :: forall r. Member TDLib r => Verbosity -> Sem r ()
 
diff --git a/src/TDLib/Types/Common.hs b/src/TDLib/Types/Common.hs
--- a/src/TDLib/Types/Common.hs
+++ b/src/TDLib/Types/Common.hs
@@ -3,6 +3,7 @@
 import Control.Applicative
 import Data.Aeson
 
+-- | Tagged union that parses to either a or b
 data a ∪ b
   = Inl a
   | Inr b
diff --git a/tdlib-types.cabal b/tdlib-types.cabal
--- a/tdlib-types.cabal
+++ b/tdlib-types.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 9255fc3f1ac432242f78cd7ed9fa25433881d860321d6c1084a91deb36010f44
+-- hash: 156083fe4b26a17a51638ae744bb44c52532bbb8ac3819f6bb6be205f09c4d00
 
 name:           tdlib-types
-version:        0.1.0
+version:        0.2.0
 synopsis:       Types and Functions generated from tdlib api spec
 description:    Please see the README on GitHub at <https://github.com/poscat0x04/tdlib-types#readme>
 category:       Web
