Copyright | (C) 2017- Mark Andrus Roberts |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Mark Andrus Roberts <[email protected]> |
Stability | provisional |
Safe Haskell | None |
Language | Haskell98 |
Control.Monad.Twilio
Description
Synopsis
- type Twilio = TwilioT IO
- runTwilio :: Credentials -> Twilio a -> IO a
- runTwilio' :: IO String -> IO String -> Twilio a -> IO a
- newtype TwilioT m a = TwilioT (Monad m => (Credentials, AccountSID) -> RequestT m a)
- runTwilioT :: MonadIO m => Credentials -> TwilioT m a -> m a
- runTwilioT' :: (MonadThrow m, MonadIO m) => m String -> m String -> TwilioT m a -> m a
- type Credentials = (AccountSID, AuthToken)
- data TwilioException
The Twilio monad
type Twilio = TwilioT IO Source #
This monad allows you to make authenticated REST API requests to Twilio
using your AccountSID
and AuthToken
.
Parse an AccountSID
and AuthToken
before running zero or more REST API
requests to Twilio.
For example, you can fetch the Calls
resource in the IO
monad as follows:
module Main where import Control.Monad.IO.Class (liftIO) import System.Environment (getEnv) import Twilio.Calls as Calls import Twilio.Types -- | Print calls. main :: IO () main = runTwilio' (getEnv "ACCOUNT_SID") (getEnv "AUTH_TOKEN") $ Calls.get >>= liftIO . print
The Twilio monad transformer
This monad transformer allows you to make authenticated REST API requests
to Twilio using your AccountSID
and AuthToken
.
Constructors
TwilioT (Monad m => (Credentials, AccountSID) -> RequestT m a) |
Instances
runTwilioT :: MonadIO m => Credentials -> TwilioT m a -> m a Source #
Run zero or more REST API requests to Twilio, unwrapping the inner monad
m
.
Arguments
:: (MonadThrow m, MonadIO m) | |
=> m String | Account SID |
-> m String | Authentication Token |
-> TwilioT m a | |
-> m a |
Parse an AccountSID
and AuthToken
before running zero or more REST API
requests to Twilio, unwrapping the inner monad m
.
Types
type Credentials = (AccountSID, AuthToken) Source #
Your AccountSID
and AuthToken
are used to make authenticated REST API
requests to Twilio.
data TwilioException Source #
The set of Exception
s that may be thrown when attempting to make
requests against Twilio's REST API.
Constructors
InvalidSID !Text | |
InvalidAuthToken !Text | |
InvalidCredentials | |
UnexpectedResponse !(Response ByteString) |
Instances
Eq TwilioException Source # | |
Defined in Control.Monad.Twilio Methods (==) :: TwilioException -> TwilioException -> Bool # (/=) :: TwilioException -> TwilioException -> Bool # | |
Show TwilioException Source # | |
Defined in Control.Monad.Twilio Methods showsPrec :: Int -> TwilioException -> ShowS # show :: TwilioException -> String # showList :: [TwilioException] -> ShowS # | |
Exception TwilioException Source # | |
Defined in Control.Monad.Twilio Methods toException :: TwilioException -> SomeException # |