Safe Haskell | None |
---|---|
Language | Haskell98 |
- 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' :: (Functor m, 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
.
TwilioT (Monad m => (Credentials, AccountSID) -> RequestT m a) |
MonadTrans TwilioT Source # | |
Monad m => Monad (TwilioT m) Source # | |
Functor (TwilioT m) Source # | |
Applicative m => Applicative (TwilioT m) Source # | |
MonadIO m => MonadIO (TwilioT m) Source # | |
MonadThrow m => MonadThrow (TwilioT m) Source # | |
Monad m => MonadRequest (TwilioT m) Source # | |
(MonadThrow m, Delete1 a) => Delete (a -> TwilioT m ()) Source # | |
(MonadThrow m, Post3 a b c r) => Post (a -> b -> c -> TwilioT m r) Source # | |
(MonadThrow m, Post2 a b r) => Post (a -> b -> TwilioT m r) Source # | |
(MonadThrow m, Post1 a r) => Post (a -> TwilioT m r) Source # | |
(MonadThrow m, Post0 r) => Post (TwilioT m r) Source # | |
(MonadThrow m, Get2 a b r) => Get (a -> b -> TwilioT m r) Source # | |
(MonadThrow m, Get1 a r) => Get (a -> TwilioT m r) Source # | |
(MonadThrow m, Get0 r) => Get (TwilioT m r) Source # | |
Monad m => MonadReader (Credentials, AccountSID) (TwilioT m) Source # | |
runTwilioT :: MonadIO m => Credentials -> TwilioT m a -> m a Source #
Run zero or more REST API requests to Twilio, unwrapping the inner monad
m
.
:: (Functor m, 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.