aws-0.20: Amazon Web Services (AWS) for Haskell

Safe HaskellNone
LanguageHaskell2010

Aws.Core

Contents

Synopsis

Logging

class Loggable a where #

Types that can be logged (textually).

Minimal complete definition

toLogText

Methods

toLogText :: a -> Text #

Instances
Loggable IamMetadata # 
Instance details

Defined in Aws.Iam.Core

Loggable DdbResponse # 
Instance details

Defined in Aws.DynamoDb.Core

Loggable S3Metadata # 
Instance details

Defined in Aws.S3.Core

Methods

toLogText :: S3Metadata -> Text #

Loggable SesMetadata # 
Instance details

Defined in Aws.Ses.Core

Loggable SdbMetadata # 
Instance details

Defined in Aws.SimpleDb.Core

Loggable SqsMetadata # 
Instance details

Defined in Aws.Sqs.Core

Response

Metadata in responses

data Response m a #

A response with metadata. Can also contain an error response, or an internal error, via Attempt.

Response forms a Writer-like monad.

Instances
Monoid m => Monad (Response m) # 
Instance details

Defined in Aws.Core

Methods

(>>=) :: Response m a -> (a -> Response m b) -> Response m b #

(>>) :: Response m a -> Response m b -> Response m b #

return :: a -> Response m a #

fail :: String -> Response m a #

Functor (Response m) # 
Instance details

Defined in Aws.Core

Methods

fmap :: (a -> b) -> Response m a -> Response m b #

(<$) :: a -> Response m b -> Response m a #

Monoid m => Applicative (Response m) # 
Instance details

Defined in Aws.Core

Methods

pure :: a -> Response m a #

(<*>) :: Response m (a -> b) -> Response m a -> Response m b #

liftA2 :: (a -> b -> c) -> Response m a -> Response m b -> Response m c #

(*>) :: Response m a -> Response m b -> Response m b #

(<*) :: Response m a -> Response m b -> Response m a #

Monoid m => MonadThrow (Response m) # 
Instance details

Defined in Aws.Core

Methods

throwM :: Exception e => e -> Response m a #

(Show m, Show a) => Show (Response m a) # 
Instance details

Defined in Aws.Core

Methods

showsPrec :: Int -> Response m a -> ShowS #

show :: Response m a -> String #

showList :: [Response m a] -> ShowS #

readResponse :: MonadThrow n => Response m a -> n a #

Read a response result (if it's a success response, fail otherwise).

readResponseIO :: MonadIO io => Response m a -> io a #

Read a response result (if it's a success response, fail otherwise). In MonadIO.

tellMetadata :: m -> Response m () #

An empty response with some metadata.

tellMetadataRef :: Monoid m => IORef m -> m -> IO () #

Add metadata to an IORef (using mappend).

mapMetadata :: (m -> n) -> Response m a -> Response n a #

Apply a function to the metadata.

Response data consumers

type HTTPResponseConsumer a = Response (ConduitM () ByteString (ResourceT IO) ()) -> ResourceT IO a #

A full HTTP response parser. Takes HTTP status, response headers, and response body.

class Monoid (ResponseMetadata resp) => ResponseConsumer req resp where #

Class for types that AWS HTTP responses can be parsed into.

The request is also passed for possibly required additional metadata.

Note that for debugging, there is an instance for ByteString.

Minimal complete definition

responseConsumer

Associated Types

type ResponseMetadata resp #

Metadata associated with a response. Typically there is one metadata type for each AWS service.

Methods

responseConsumer :: Request -> req -> IORef (ResponseMetadata resp) -> HTTPResponseConsumer resp #

Response parser. Takes the corresponding AWS request, the derived http-client request (for error reporting), an IORef for metadata, and HTTP response data.

Instances
ResponseConsumer r UpdateItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.UpdateItem

Associated Types

type ResponseMetadata UpdateItemResponse :: * #

ResponseConsumer r ListTablesResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ResponseMetadata ListTablesResult :: * #

ResponseConsumer r DeleteTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ResponseMetadata DeleteTableResult :: * #

ResponseConsumer r UpdateTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ResponseMetadata UpdateTableResult :: * #

ResponseConsumer r DescribeTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ResponseMetadata DescribeTableResult :: * #

ResponseConsumer r CreateTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ResponseMetadata CreateTableResult :: * #

ResponseConsumer r ScanResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.Scan

Associated Types

type ResponseMetadata ScanResponse :: * #

ResponseConsumer r QueryResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.Query

Associated Types

type ResponseMetadata QueryResponse :: * #

ResponseConsumer r PutItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.PutItem

Associated Types

type ResponseMetadata PutItemResponse :: * #

ResponseConsumer r GetItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.GetItem

Associated Types

type ResponseMetadata GetItemResponse :: * #

ResponseConsumer r DeleteItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.DeleteItem

Associated Types

type ResponseMetadata DeleteItemResponse :: * #

ResponseConsumer r BatchWriteItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.BatchWriteItem

Associated Types

type ResponseMetadata BatchWriteItemResponse :: * #

ResponseConsumer r BatchGetItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.BatchGetItem

Associated Types

type ResponseMetadata BatchGetItemResponse :: * #

ResponseConsumer r PutBucketResponse # 
Instance details

Defined in Aws.S3.Commands.PutBucket

Associated Types

type ResponseMetadata PutBucketResponse :: * #

ResponseConsumer r AbortMultipartUploadResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

ResponseConsumer r CompleteMultipartUploadResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

ResponseConsumer r InitiateMultipartUploadResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

ResponseConsumer r GetServiceResponse # 
Instance details

Defined in Aws.S3.Commands.GetService

Associated Types

type ResponseMetadata GetServiceResponse :: * #

ResponseConsumer r GetBucketObjectVersionsResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucketObjectVersions

ResponseConsumer r GetBucketLocationResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucketLocation

ResponseConsumer r GetBucketResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucket

Associated Types

type ResponseMetadata GetBucketResponse :: * #

ResponseConsumer r SelectResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Select

Associated Types

type ResponseMetadata SelectResponse :: * #

ResponseConsumer r ListDomainsResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type ResponseMetadata ListDomainsResponse :: * #

ResponseConsumer r DomainMetadataResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type ResponseMetadata DomainMetadataResponse :: * #

ResponseConsumer r DeleteDomainResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type ResponseMetadata DeleteDomainResponse :: * #

ResponseConsumer r CreateDomainResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type ResponseMetadata CreateDomainResponse :: * #

ResponseConsumer r BatchDeleteAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

ResponseConsumer r BatchPutAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

ResponseConsumer r DeleteAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

ResponseConsumer r PutAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type ResponseMetadata PutAttributesResponse :: * #

ResponseConsumer r GetAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type ResponseMetadata GetAttributesResponse :: * #

ResponseConsumer r SetQueueAttributesResponse # 
Instance details

Defined in Aws.Sqs.Commands.QueueAttributes

ResponseConsumer r GetQueueAttributesResponse # 
Instance details

Defined in Aws.Sqs.Commands.QueueAttributes

ResponseConsumer r ListQueuesResponse # 
Instance details

Defined in Aws.Sqs.Commands.Queue

Associated Types

type ResponseMetadata ListQueuesResponse :: * #

ResponseConsumer r DeleteQueueResponse # 
Instance details

Defined in Aws.Sqs.Commands.Queue

Associated Types

type ResponseMetadata DeleteQueueResponse :: * #

ResponseConsumer r CreateQueueResponse # 
Instance details

Defined in Aws.Sqs.Commands.Queue

Associated Types

type ResponseMetadata CreateQueueResponse :: * #

ResponseConsumer r RemovePermissionResponse # 
Instance details

Defined in Aws.Sqs.Commands.Permission

ResponseConsumer r AddPermissionResponse # 
Instance details

Defined in Aws.Sqs.Commands.Permission

Associated Types

type ResponseMetadata AddPermissionResponse :: * #

ResponseConsumer r ChangeMessageVisibilityResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

ResponseConsumer r ReceiveMessageResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type ResponseMetadata ReceiveMessageResponse :: * #

ResponseConsumer r DeleteMessageResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type ResponseMetadata DeleteMessageResponse :: * #

ResponseConsumer r SendMessageResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type ResponseMetadata SendMessageResponse :: * #

ResponseConsumer UpdateUser UpdateUserResponse # 
Instance details

Defined in Aws.Iam.Commands.UpdateUser

Associated Types

type ResponseMetadata UpdateUserResponse :: * #

ResponseConsumer UpdateAccessKey UpdateAccessKeyResponse # 
Instance details

Defined in Aws.Iam.Commands.UpdateAccessKey

ResponseConsumer PutUserPolicy PutUserPolicyResponse # 
Instance details

Defined in Aws.Iam.Commands.PutUserPolicy

Associated Types

type ResponseMetadata PutUserPolicyResponse :: * #

ResponseConsumer ListUsers ListUsersResponse # 
Instance details

Defined in Aws.Iam.Commands.ListUsers

Associated Types

type ResponseMetadata ListUsersResponse :: * #

ResponseConsumer ListUserPolicies ListUserPoliciesResponse # 
Instance details

Defined in Aws.Iam.Commands.ListUserPolicies

ResponseConsumer ListMfaDevices ListMfaDevicesResponse # 
Instance details

Defined in Aws.Iam.Commands.ListMfaDevices

Associated Types

type ResponseMetadata ListMfaDevicesResponse :: * #

ResponseConsumer ListAccessKeys ListAccessKeysResponse # 
Instance details

Defined in Aws.Iam.Commands.ListAccessKeys

Associated Types

type ResponseMetadata ListAccessKeysResponse :: * #

ResponseConsumer GetUserPolicy GetUserPolicyResponse # 
Instance details

Defined in Aws.Iam.Commands.GetUserPolicy

Associated Types

type ResponseMetadata GetUserPolicyResponse :: * #

ResponseConsumer GetUser GetUserResponse # 
Instance details

Defined in Aws.Iam.Commands.GetUser

Associated Types

type ResponseMetadata GetUserResponse :: * #

ResponseConsumer DeleteUserPolicy DeleteUserPolicyResponse # 
Instance details

Defined in Aws.Iam.Commands.DeleteUserPolicy

ResponseConsumer DeleteUser DeleteUserResponse # 
Instance details

Defined in Aws.Iam.Commands.DeleteUser

Associated Types

type ResponseMetadata DeleteUserResponse :: * #

ResponseConsumer DeleteAccessKey DeleteAccessKeyResponse # 
Instance details

Defined in Aws.Iam.Commands.DeleteAccessKey

ResponseConsumer CreateUser CreateUserResponse # 
Instance details

Defined in Aws.Iam.Commands.CreateUser

Associated Types

type ResponseMetadata CreateUserResponse :: * #

ResponseConsumer CreateAccessKey CreateAccessKeyResponse # 
Instance details

Defined in Aws.Iam.Commands.CreateAccessKey

ResponseConsumer PutObject PutObjectResponse # 
Instance details

Defined in Aws.S3.Commands.PutObject

Associated Types

type ResponseMetadata PutObjectResponse :: * #

ResponseConsumer UploadPart UploadPartResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

Associated Types

type ResponseMetadata UploadPartResponse :: * #

ResponseConsumer HeadObject HeadObjectResponse # 
Instance details

Defined in Aws.S3.Commands.HeadObject

Associated Types

type ResponseMetadata HeadObjectResponse :: * #

ResponseConsumer GetObject GetObjectResponse # 
Instance details

Defined in Aws.S3.Commands.GetObject

Associated Types

type ResponseMetadata GetObjectResponse :: * #

ResponseConsumer DeleteObjects DeleteObjectsResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteObjects

Associated Types

type ResponseMetadata DeleteObjectsResponse :: * #

ResponseConsumer DeleteObjectVersion DeleteObjectVersionResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteObjectVersion

ResponseConsumer DeleteObject DeleteObjectResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteObject

Associated Types

type ResponseMetadata DeleteObjectResponse :: * #

ResponseConsumer DeleteBucket DeleteBucketResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteBucket

Associated Types

type ResponseMetadata DeleteBucketResponse :: * #

ResponseConsumer CopyObject CopyObjectResponse # 
Instance details

Defined in Aws.S3.Commands.CopyObject

Associated Types

type ResponseMetadata CopyObjectResponse :: * #

ResponseConsumer VerifyEmailIdentity VerifyEmailIdentityResponse # 
Instance details

Defined in Aws.Ses.Commands.VerifyEmailIdentity

ResponseConsumer VerifyDomainIdentity VerifyDomainIdentityResponse # 
Instance details

Defined in Aws.Ses.Commands.VerifyDomainIdentity

ResponseConsumer VerifyDomainDkim VerifyDomainDkimResponse # 
Instance details

Defined in Aws.Ses.Commands.VerifyDomainDkim

ResponseConsumer SetIdentityNotificationTopic SetIdentityNotificationTopicResponse # 
Instance details

Defined in Aws.Ses.Commands.SetIdentityNotificationTopic

ResponseConsumer SetIdentityFeedbackForwardingEnabled SetIdentityFeedbackForwardingEnabledResponse # 
Instance details

Defined in Aws.Ses.Commands.SetIdentityFeedbackForwardingEnabled

ResponseConsumer SetIdentityDkimEnabled SetIdentityDkimEnabledResponse # 
Instance details

Defined in Aws.Ses.Commands.SetIdentityDkimEnabled

ResponseConsumer SendRawEmail SendRawEmailResponse # 
Instance details

Defined in Aws.Ses.Commands.SendRawEmail

Associated Types

type ResponseMetadata SendRawEmailResponse :: * #

ResponseConsumer ListIdentities ListIdentitiesResponse # 
Instance details

Defined in Aws.Ses.Commands.ListIdentities

Associated Types

type ResponseMetadata ListIdentitiesResponse :: * #

ResponseConsumer GetIdentityVerificationAttributes GetIdentityVerificationAttributesResponse # 
Instance details

Defined in Aws.Ses.Commands.GetIdentityVerificationAttributes

ResponseConsumer GetIdentityNotificationAttributes GetIdentityNotificationAttributesResponse # 
Instance details

Defined in Aws.Ses.Commands.GetIdentityNotificationAttributes

ResponseConsumer GetIdentityDkimAttributes GetIdentityDkimAttributesResponse # 
Instance details

Defined in Aws.Ses.Commands.GetIdentityDkimAttributes

ResponseConsumer DeleteIdentity DeleteIdentityResponse # 
Instance details

Defined in Aws.Ses.Commands.DeleteIdentity

Associated Types

type ResponseMetadata DeleteIdentityResponse :: * #

ResponseConsumer r (Response ByteString) #

Does not parse response. For debugging.

Instance details

Defined in Aws.Core

Associated Types

type ResponseMetadata (Response ByteString) :: * #

Memory response

class AsMemoryResponse resp where #

Class for responses that are fully loaded into memory

Minimal complete definition

loadToMemory

Associated Types

type MemoryResponse resp :: * #

Methods

loadToMemory :: resp -> ResourceT IO (MemoryResponse resp) #

Instances
AsMemoryResponse UpdateUserResponse # 
Instance details

Defined in Aws.Iam.Commands.UpdateUser

Associated Types

type MemoryResponse UpdateUserResponse :: * #

AsMemoryResponse UpdateAccessKeyResponse # 
Instance details

Defined in Aws.Iam.Commands.UpdateAccessKey

Associated Types

type MemoryResponse UpdateAccessKeyResponse :: * #

AsMemoryResponse PutUserPolicyResponse # 
Instance details

Defined in Aws.Iam.Commands.PutUserPolicy

Associated Types

type MemoryResponse PutUserPolicyResponse :: * #

AsMemoryResponse ListUsersResponse # 
Instance details

Defined in Aws.Iam.Commands.ListUsers

Associated Types

type MemoryResponse ListUsersResponse :: * #

AsMemoryResponse ListUserPoliciesResponse # 
Instance details

Defined in Aws.Iam.Commands.ListUserPolicies

Associated Types

type MemoryResponse ListUserPoliciesResponse :: * #

AsMemoryResponse ListMfaDevicesResponse # 
Instance details

Defined in Aws.Iam.Commands.ListMfaDevices

Associated Types

type MemoryResponse ListMfaDevicesResponse :: * #

AsMemoryResponse ListAccessKeysResponse # 
Instance details

Defined in Aws.Iam.Commands.ListAccessKeys

Associated Types

type MemoryResponse ListAccessKeysResponse :: * #

AsMemoryResponse GetUserPolicyResponse # 
Instance details

Defined in Aws.Iam.Commands.GetUserPolicy

Associated Types

type MemoryResponse GetUserPolicyResponse :: * #

AsMemoryResponse GetUserResponse # 
Instance details

Defined in Aws.Iam.Commands.GetUser

Associated Types

type MemoryResponse GetUserResponse :: * #

AsMemoryResponse DeleteUserPolicyResponse # 
Instance details

Defined in Aws.Iam.Commands.DeleteUserPolicy

Associated Types

type MemoryResponse DeleteUserPolicyResponse :: * #

AsMemoryResponse DeleteUserResponse # 
Instance details

Defined in Aws.Iam.Commands.DeleteUser

Associated Types

type MemoryResponse DeleteUserResponse :: * #

AsMemoryResponse DeleteAccessKeyResponse # 
Instance details

Defined in Aws.Iam.Commands.DeleteAccessKey

Associated Types

type MemoryResponse DeleteAccessKeyResponse :: * #

AsMemoryResponse CreateUserResponse # 
Instance details

Defined in Aws.Iam.Commands.CreateUser

Associated Types

type MemoryResponse CreateUserResponse :: * #

AsMemoryResponse CreateAccessKeyResponse # 
Instance details

Defined in Aws.Iam.Commands.CreateAccessKey

Associated Types

type MemoryResponse CreateAccessKeyResponse :: * #

AsMemoryResponse UpdateItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.UpdateItem

Associated Types

type MemoryResponse UpdateItemResponse :: * #

AsMemoryResponse ListTablesResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type MemoryResponse ListTablesResult :: * #

AsMemoryResponse DeleteTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type MemoryResponse DeleteTableResult :: * #

AsMemoryResponse UpdateTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type MemoryResponse UpdateTableResult :: * #

AsMemoryResponse DescribeTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type MemoryResponse DescribeTableResult :: * #

AsMemoryResponse CreateTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type MemoryResponse CreateTableResult :: * #

AsMemoryResponse ScanResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.Scan

Associated Types

type MemoryResponse ScanResponse :: * #

AsMemoryResponse QueryResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.Query

Associated Types

type MemoryResponse QueryResponse :: * #

AsMemoryResponse PutItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.PutItem

Associated Types

type MemoryResponse PutItemResponse :: * #

AsMemoryResponse GetItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.GetItem

Associated Types

type MemoryResponse GetItemResponse :: * #

AsMemoryResponse DeleteItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.DeleteItem

Associated Types

type MemoryResponse DeleteItemResponse :: * #

AsMemoryResponse BatchWriteItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.BatchWriteItem

Associated Types

type MemoryResponse BatchWriteItemResponse :: * #

AsMemoryResponse BatchGetItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.BatchGetItem

Associated Types

type MemoryResponse BatchGetItemResponse :: * #

AsMemoryResponse PutObjectResponse # 
Instance details

Defined in Aws.S3.Commands.PutObject

Associated Types

type MemoryResponse PutObjectResponse :: * #

AsMemoryResponse PutBucketResponse # 
Instance details

Defined in Aws.S3.Commands.PutBucket

Associated Types

type MemoryResponse PutBucketResponse :: * #

AsMemoryResponse AbortMultipartUploadResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

AsMemoryResponse CompleteMultipartUploadResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

AsMemoryResponse UploadPartResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

Associated Types

type MemoryResponse UploadPartResponse :: * #

AsMemoryResponse InitiateMultipartUploadResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

AsMemoryResponse HeadObjectResponse # 
Instance details

Defined in Aws.S3.Commands.HeadObject

Associated Types

type MemoryResponse HeadObjectResponse :: * #

AsMemoryResponse GetServiceResponse # 
Instance details

Defined in Aws.S3.Commands.GetService

Associated Types

type MemoryResponse GetServiceResponse :: * #

AsMemoryResponse GetObjectResponse # 
Instance details

Defined in Aws.S3.Commands.GetObject

Associated Types

type MemoryResponse GetObjectResponse :: * #

AsMemoryResponse GetBucketObjectVersionsResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucketObjectVersions

AsMemoryResponse GetBucketLocationResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucketLocation

AsMemoryResponse GetBucketResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucket

Associated Types

type MemoryResponse GetBucketResponse :: * #

AsMemoryResponse DeleteObjectsResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteObjects

Associated Types

type MemoryResponse DeleteObjectsResponse :: * #

AsMemoryResponse DeleteObjectVersionResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteObjectVersion

AsMemoryResponse DeleteObjectResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteObject

Associated Types

type MemoryResponse DeleteObjectResponse :: * #

AsMemoryResponse DeleteBucketResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteBucket

Associated Types

type MemoryResponse DeleteBucketResponse :: * #

AsMemoryResponse CopyObjectResponse # 
Instance details

Defined in Aws.S3.Commands.CopyObject

Associated Types

type MemoryResponse CopyObjectResponse :: * #

AsMemoryResponse VerifyEmailIdentityResponse # 
Instance details

Defined in Aws.Ses.Commands.VerifyEmailIdentity

AsMemoryResponse VerifyDomainIdentityResponse # 
Instance details

Defined in Aws.Ses.Commands.VerifyDomainIdentity

AsMemoryResponse VerifyDomainDkimResponse # 
Instance details

Defined in Aws.Ses.Commands.VerifyDomainDkim

Associated Types

type MemoryResponse VerifyDomainDkimResponse :: * #

AsMemoryResponse SetIdentityNotificationTopicResponse # 
Instance details

Defined in Aws.Ses.Commands.SetIdentityNotificationTopic

AsMemoryResponse SetIdentityFeedbackForwardingEnabledResponse # 
Instance details

Defined in Aws.Ses.Commands.SetIdentityFeedbackForwardingEnabled

AsMemoryResponse SetIdentityDkimEnabledResponse # 
Instance details

Defined in Aws.Ses.Commands.SetIdentityDkimEnabled

AsMemoryResponse SendRawEmailResponse # 
Instance details

Defined in Aws.Ses.Commands.SendRawEmail

Associated Types

type MemoryResponse SendRawEmailResponse :: * #

AsMemoryResponse ListIdentitiesResponse # 
Instance details

Defined in Aws.Ses.Commands.ListIdentities

Associated Types

type MemoryResponse ListIdentitiesResponse :: * #

AsMemoryResponse GetIdentityVerificationAttributesResponse # 
Instance details

Defined in Aws.Ses.Commands.GetIdentityVerificationAttributes

AsMemoryResponse GetIdentityNotificationAttributesResponse # 
Instance details

Defined in Aws.Ses.Commands.GetIdentityNotificationAttributes

AsMemoryResponse GetIdentityDkimAttributesResponse # 
Instance details

Defined in Aws.Ses.Commands.GetIdentityDkimAttributes

AsMemoryResponse DeleteIdentityResponse # 
Instance details

Defined in Aws.Ses.Commands.DeleteIdentity

Associated Types

type MemoryResponse DeleteIdentityResponse :: * #

AsMemoryResponse SelectResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Select

Associated Types

type MemoryResponse SelectResponse :: * #

AsMemoryResponse ListDomainsResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type MemoryResponse ListDomainsResponse :: * #

AsMemoryResponse DomainMetadataResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type MemoryResponse DomainMetadataResponse :: * #

AsMemoryResponse DeleteDomainResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type MemoryResponse DeleteDomainResponse :: * #

AsMemoryResponse CreateDomainResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type MemoryResponse CreateDomainResponse :: * #

AsMemoryResponse BatchDeleteAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

AsMemoryResponse BatchPutAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

AsMemoryResponse DeleteAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type MemoryResponse DeleteAttributesResponse :: * #

AsMemoryResponse PutAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type MemoryResponse PutAttributesResponse :: * #

AsMemoryResponse GetAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type MemoryResponse GetAttributesResponse :: * #

AsMemoryResponse SetQueueAttributesResponse # 
Instance details

Defined in Aws.Sqs.Commands.QueueAttributes

AsMemoryResponse GetQueueAttributesResponse # 
Instance details

Defined in Aws.Sqs.Commands.QueueAttributes

AsMemoryResponse ListQueuesResponse # 
Instance details

Defined in Aws.Sqs.Commands.Queue

Associated Types

type MemoryResponse ListQueuesResponse :: * #

AsMemoryResponse DeleteQueueResponse # 
Instance details

Defined in Aws.Sqs.Commands.Queue

Associated Types

type MemoryResponse DeleteQueueResponse :: * #

AsMemoryResponse CreateQueueResponse # 
Instance details

Defined in Aws.Sqs.Commands.Queue

Associated Types

type MemoryResponse CreateQueueResponse :: * #

AsMemoryResponse RemovePermissionResponse # 
Instance details

Defined in Aws.Sqs.Commands.Permission

Associated Types

type MemoryResponse RemovePermissionResponse :: * #

AsMemoryResponse AddPermissionResponse # 
Instance details

Defined in Aws.Sqs.Commands.Permission

Associated Types

type MemoryResponse AddPermissionResponse :: * #

AsMemoryResponse ChangeMessageVisibilityResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

AsMemoryResponse ReceiveMessageResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type MemoryResponse ReceiveMessageResponse :: * #

AsMemoryResponse DeleteMessageResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type MemoryResponse DeleteMessageResponse :: * #

AsMemoryResponse SendMessageResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type MemoryResponse SendMessageResponse :: * #

List response

class ListResponse resp item | resp -> item where #

Responses that have one main list in them, and perhaps some decoration.

Minimal complete definition

listResponse

Methods

listResponse :: resp -> [item] #

Exception types

newtype XmlException #

An error that occurred during XML parsing / validation.

Constructors

XmlException 

newtype HeaderException #

An error that occurred during header parsing / validation.

Constructors

HeaderException 

newtype FormException #

An error that occurred during form parsing / validation.

Constructors

FormException 

Response deconstruction helpers

readHex2 :: [Char] -> Maybe Word8 #

Parse a two-digit hex number.

XML

elContent :: Text -> Cursor -> [Text] #

A specific element (case-insensitive, ignoring namespace - sadly necessary), extracting only the textual contents.

elCont :: Text -> Cursor -> [String] #

Like elContent, but extracts Strings instead of Text.

force :: MonadThrow m => String -> [a] -> m a #

Extract the first element from a parser result list, and throw an XmlException if the list is empty.

forceM :: MonadThrow m => String -> [m a] -> m a #

Extract the first element from a monadic parser result list, and throw an XmlException if the list is empty.

textReadBool :: MonadThrow m => Text -> m Bool #

Read a boolean from a Text, throwing an XmlException on failure.

textReadInt :: (MonadThrow m, Num a) => Text -> m a #

Read an integer from a Text, throwing an XmlException on failure.

readInt :: (MonadThrow m, Num a) => String -> m a #

Read an integer from a String, throwing an XmlException on failure.

xmlCursorConsumer :: Monoid m => (Cursor -> Response m a) -> IORef m -> HTTPResponseConsumer a #

Create a complete HTTPResponseConsumer from a simple function that takes a Cursor to XML in the response body.

This function is highly recommended for any services that parse relatively short XML responses. (If status and response headers are required, simply take them as function parameters, and pass them through to this function.)

Query

data SignedQuery #

A pre-signed medium-level request object.

Constructors

SignedQuery 

Fields

queryToHttpRequest :: SignedQuery -> IO Request #

Create a HTTP request from a SignedQuery object.

queryToUri :: SignedQuery -> ByteString #

Create a URI fro a SignedQuery object.

Unused / incompatible fields will be silently ignored.

Expiration

data TimeInfo #

Whether to restrict the signature validity with a plain timestamp, or with explicit expiration (absolute or relative).

Constructors

Timestamp

Use a simple timestamp to let AWS check the request validity.

ExpiresAt

Let requests expire at a specific fixed time.

ExpiresIn

Let requests expire a specific number of seconds after they were generated.

Instances
Show TimeInfo # 
Instance details

Defined in Aws.Core

data AbsoluteTimeInfo #

Like TimeInfo, but with all relative times replaced by absolute UTC.

Instances
Show AbsoluteTimeInfo # 
Instance details

Defined in Aws.Core

fromAbsoluteTimeInfo :: AbsoluteTimeInfo -> UTCTime #

Just the UTC time value.

makeAbsoluteTimeInfo :: TimeInfo -> UTCTime -> AbsoluteTimeInfo #

Convert TimeInfo to AbsoluteTimeInfo given the current UTC time.

Signature

data SignatureData #

Data that is always required for signing requests.

Constructors

SignatureData 

Fields

signatureData :: TimeInfo -> Credentials -> IO SignatureData #

Create signature data using the current system time.

class SignQuery request where #

A "signable" request object. Assembles together the Query, and signs it in one go.

Minimal complete definition

signQuery

Associated Types

type ServiceConfiguration request :: * -> * #

Additional information, like API endpoints and service-specific preferences.

Methods

signQuery :: request -> ServiceConfiguration request queryType -> SignatureData -> SignedQuery #

Create a SignedQuery from a request, additional Info, and SignatureData.

Instances
SignQuery UpdateUser # 
Instance details

Defined in Aws.Iam.Commands.UpdateUser

Associated Types

type ServiceConfiguration UpdateUser :: * -> * #

SignQuery UpdateAccessKey # 
Instance details

Defined in Aws.Iam.Commands.UpdateAccessKey

Associated Types

type ServiceConfiguration UpdateAccessKey :: * -> * #

SignQuery PutUserPolicy # 
Instance details

Defined in Aws.Iam.Commands.PutUserPolicy

Associated Types

type ServiceConfiguration PutUserPolicy :: * -> * #

SignQuery ListUsers # 
Instance details

Defined in Aws.Iam.Commands.ListUsers

Associated Types

type ServiceConfiguration ListUsers :: * -> * #

SignQuery ListUserPolicies # 
Instance details

Defined in Aws.Iam.Commands.ListUserPolicies

Associated Types

type ServiceConfiguration ListUserPolicies :: * -> * #

SignQuery ListMfaDevices # 
Instance details

Defined in Aws.Iam.Commands.ListMfaDevices

Associated Types

type ServiceConfiguration ListMfaDevices :: * -> * #

SignQuery ListAccessKeys # 
Instance details

Defined in Aws.Iam.Commands.ListAccessKeys

Associated Types

type ServiceConfiguration ListAccessKeys :: * -> * #

SignQuery GetUserPolicy # 
Instance details

Defined in Aws.Iam.Commands.GetUserPolicy

Associated Types

type ServiceConfiguration GetUserPolicy :: * -> * #

SignQuery GetUser # 
Instance details

Defined in Aws.Iam.Commands.GetUser

Associated Types

type ServiceConfiguration GetUser :: * -> * #

SignQuery DeleteUserPolicy # 
Instance details

Defined in Aws.Iam.Commands.DeleteUserPolicy

Associated Types

type ServiceConfiguration DeleteUserPolicy :: * -> * #

SignQuery DeleteUser # 
Instance details

Defined in Aws.Iam.Commands.DeleteUser

Associated Types

type ServiceConfiguration DeleteUser :: * -> * #

SignQuery DeleteAccessKey # 
Instance details

Defined in Aws.Iam.Commands.DeleteAccessKey

Associated Types

type ServiceConfiguration DeleteAccessKey :: * -> * #

SignQuery CreateUser # 
Instance details

Defined in Aws.Iam.Commands.CreateUser

Associated Types

type ServiceConfiguration CreateUser :: * -> * #

SignQuery CreateAccessKey # 
Instance details

Defined in Aws.Iam.Commands.CreateAccessKey

Associated Types

type ServiceConfiguration CreateAccessKey :: * -> * #

SignQuery UpdateItem # 
Instance details

Defined in Aws.DynamoDb.Commands.UpdateItem

Associated Types

type ServiceConfiguration UpdateItem :: * -> * #

SignQuery ListTables #

ServiceConfiguration: DdbConfiguration

Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ServiceConfiguration ListTables :: * -> * #

SignQuery DeleteTable #

ServiceConfiguration: DdbConfiguration

Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ServiceConfiguration DeleteTable :: * -> * #

SignQuery UpdateTable #

ServiceConfiguration: DdbConfiguration

Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ServiceConfiguration UpdateTable :: * -> * #

SignQuery DescribeTable #

ServiceConfiguration: DdbConfiguration

Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ServiceConfiguration DescribeTable :: * -> * #

SignQuery CreateTable #

ServiceConfiguration: DdbConfiguration

Instance details

Defined in Aws.DynamoDb.Commands.Table

Associated Types

type ServiceConfiguration CreateTable :: * -> * #

SignQuery Scan # 
Instance details

Defined in Aws.DynamoDb.Commands.Scan

Associated Types

type ServiceConfiguration Scan :: * -> * #

SignQuery Query # 
Instance details

Defined in Aws.DynamoDb.Commands.Query

Associated Types

type ServiceConfiguration Query :: * -> * #

SignQuery PutItem # 
Instance details

Defined in Aws.DynamoDb.Commands.PutItem

Associated Types

type ServiceConfiguration PutItem :: * -> * #

SignQuery GetItem # 
Instance details

Defined in Aws.DynamoDb.Commands.GetItem

Associated Types

type ServiceConfiguration GetItem :: * -> * #

SignQuery DeleteItem # 
Instance details

Defined in Aws.DynamoDb.Commands.DeleteItem

Associated Types

type ServiceConfiguration DeleteItem :: * -> * #

SignQuery BatchWriteItem # 
Instance details

Defined in Aws.DynamoDb.Commands.BatchWriteItem

Associated Types

type ServiceConfiguration BatchWriteItem :: * -> * #

SignQuery BatchGetItem # 
Instance details

Defined in Aws.DynamoDb.Commands.BatchGetItem

Associated Types

type ServiceConfiguration BatchGetItem :: * -> * #

SignQuery PutObject #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.PutObject

Associated Types

type ServiceConfiguration PutObject :: * -> * #

SignQuery PutBucket #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.PutBucket

Associated Types

type ServiceConfiguration PutBucket :: * -> * #

SignQuery AbortMultipartUpload #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.Multipart

Associated Types

type ServiceConfiguration AbortMultipartUpload :: * -> * #

SignQuery CompleteMultipartUpload #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.Multipart

Associated Types

type ServiceConfiguration CompleteMultipartUpload :: * -> * #

SignQuery UploadPart #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.Multipart

Associated Types

type ServiceConfiguration UploadPart :: * -> * #

SignQuery InitiateMultipartUpload #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.Multipart

Associated Types

type ServiceConfiguration InitiateMultipartUpload :: * -> * #

SignQuery HeadObject #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.HeadObject

Associated Types

type ServiceConfiguration HeadObject :: * -> * #

SignQuery GetService #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.GetService

Associated Types

type ServiceConfiguration GetService :: * -> * #

SignQuery GetObject #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.GetObject

Associated Types

type ServiceConfiguration GetObject :: * -> * #

SignQuery GetBucketObjectVersions #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.GetBucketObjectVersions

Associated Types

type ServiceConfiguration GetBucketObjectVersions :: * -> * #

SignQuery GetBucketLocation # 
Instance details

Defined in Aws.S3.Commands.GetBucketLocation

Associated Types

type ServiceConfiguration GetBucketLocation :: * -> * #

SignQuery GetBucket #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.GetBucket

Associated Types

type ServiceConfiguration GetBucket :: * -> * #

SignQuery DeleteObjects #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.DeleteObjects

Associated Types

type ServiceConfiguration DeleteObjects :: * -> * #

SignQuery DeleteObjectVersion #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.DeleteObjectVersion

Associated Types

type ServiceConfiguration DeleteObjectVersion :: * -> * #

SignQuery DeleteObject #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.DeleteObject

Associated Types

type ServiceConfiguration DeleteObject :: * -> * #

SignQuery DeleteBucket #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.DeleteBucket

Associated Types

type ServiceConfiguration DeleteBucket :: * -> * #

SignQuery CopyObject #

ServiceConfiguration: S3Configuration

Instance details

Defined in Aws.S3.Commands.CopyObject

Associated Types

type ServiceConfiguration CopyObject :: * -> * #

SignQuery VerifyEmailIdentity #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.VerifyEmailIdentity

Associated Types

type ServiceConfiguration VerifyEmailIdentity :: * -> * #

SignQuery VerifyDomainIdentity #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.VerifyDomainIdentity

Associated Types

type ServiceConfiguration VerifyDomainIdentity :: * -> * #

SignQuery VerifyDomainDkim #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.VerifyDomainDkim

Associated Types

type ServiceConfiguration VerifyDomainDkim :: * -> * #

SignQuery SetIdentityNotificationTopic #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.SetIdentityNotificationTopic

SignQuery SetIdentityFeedbackForwardingEnabled #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.SetIdentityFeedbackForwardingEnabled

SignQuery SetIdentityDkimEnabled #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.SetIdentityDkimEnabled

Associated Types

type ServiceConfiguration SetIdentityDkimEnabled :: * -> * #

SignQuery SendRawEmail #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.SendRawEmail

Associated Types

type ServiceConfiguration SendRawEmail :: * -> * #

SignQuery ListIdentities #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.ListIdentities

Associated Types

type ServiceConfiguration ListIdentities :: * -> * #

SignQuery GetIdentityVerificationAttributes #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.GetIdentityVerificationAttributes

SignQuery GetIdentityNotificationAttributes #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.GetIdentityNotificationAttributes

SignQuery GetIdentityDkimAttributes #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.GetIdentityDkimAttributes

SignQuery DeleteIdentity #

ServiceConfiguration: SesConfiguration

Instance details

Defined in Aws.Ses.Commands.DeleteIdentity

Associated Types

type ServiceConfiguration DeleteIdentity :: * -> * #

SignQuery Select #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Select

Associated Types

type ServiceConfiguration Select :: * -> * #

SignQuery ListDomains #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type ServiceConfiguration ListDomains :: * -> * #

SignQuery DomainMetadata #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type ServiceConfiguration DomainMetadata :: * -> * #

SignQuery DeleteDomain #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type ServiceConfiguration DeleteDomain :: * -> * #

SignQuery CreateDomain #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Domain

Associated Types

type ServiceConfiguration CreateDomain :: * -> * #

SignQuery BatchDeleteAttributes #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type ServiceConfiguration BatchDeleteAttributes :: * -> * #

SignQuery BatchPutAttributes #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type ServiceConfiguration BatchPutAttributes :: * -> * #

SignQuery DeleteAttributes #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type ServiceConfiguration DeleteAttributes :: * -> * #

SignQuery PutAttributes #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type ServiceConfiguration PutAttributes :: * -> * #

SignQuery GetAttributes #

ServiceConfiguration: SdbConfiguration

Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Associated Types

type ServiceConfiguration GetAttributes :: * -> * #

SignQuery SetQueueAttributes #

ServiceConfiguration: SqsConfiguration

Instance details

Defined in Aws.Sqs.Commands.QueueAttributes

Associated Types

type ServiceConfiguration SetQueueAttributes :: * -> * #

SignQuery GetQueueAttributes #

ServiceConfiguration: SqsConfiguration

Instance details

Defined in Aws.Sqs.Commands.QueueAttributes

Associated Types

type ServiceConfiguration GetQueueAttributes :: * -> * #

SignQuery ListQueues #

ServiceConfiguration: SqsConfiguration

Instance details

Defined in Aws.Sqs.Commands.Queue

Associated Types

type ServiceConfiguration ListQueues :: * -> * #

SignQuery DeleteQueue #

ServiceConfiguration: SqsConfiguration

Instance details

Defined in Aws.Sqs.Commands.Queue

Associated Types

type ServiceConfiguration DeleteQueue :: * -> * #

SignQuery CreateQueue #

ServiceConfiguration: SqsConfiguration

Instance details

Defined in Aws.Sqs.Commands.Queue

Associated Types

type ServiceConfiguration CreateQueue :: * -> * #

SignQuery RemovePermission #

ServiceConfiguration: SqsConfiguration

Instance details

Defined in Aws.Sqs.Commands.Permission

Associated Types

type ServiceConfiguration RemovePermission :: * -> * #

SignQuery AddPermission #

ServiceConfiguration: SqsConfiguration

Instance details

Defined in Aws.Sqs.Commands.Permission

Associated Types

type ServiceConfiguration AddPermission :: * -> * #

SignQuery ChangeMessageVisibility #

ServiceConfiguration: SqsConfiguration

Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type ServiceConfiguration ChangeMessageVisibility :: * -> * #

SignQuery ReceiveMessage # 
Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type ServiceConfiguration ReceiveMessage :: * -> * #

SignQuery DeleteMessage # 
Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type ServiceConfiguration DeleteMessage :: * -> * #

SignQuery SendMessage # 
Instance details

Defined in Aws.Sqs.Commands.Message

Associated Types

type ServiceConfiguration SendMessage :: * -> * #

data AuthorizationHash #

Supported crypto hashes for the signature.

Constructors

HmacSHA1 
HmacSHA256 

amzHash :: AuthorizationHash -> ByteString #

Authorization hash identifier as expected by Amazon.

signature :: Credentials -> AuthorizationHash -> ByteString -> ByteString #

Create a signature. Usually, AWS wants a specifically constructed string to be signed.

The signature is a HMAC-based hash of the string and the secret access key.

credentialV4 #

Arguments

:: SignatureData 
-> ByteString

region, e.g. us-east-1

-> ByteString

service, e.g. dynamodb

-> ByteString 

Generates the Credential string, required for V4 signatures.

authorizationV4 #

Arguments

:: SignatureData 
-> AuthorizationHash 
-> ByteString

region, e.g. us-east-1

-> ByteString

service, e.g. dynamodb

-> ByteString

SignedHeaders, e.g. content-type;host;x-amz-date;x-amz-target

-> ByteString

canonicalRequest (before hashing)

-> IO ByteString 

Use this to create the Authorization header to set into sqAuthorization. See http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html: you must create the canonical request as explained by Step 1 and this function takes care of Steps 2 and 3.

authorizationV4' #

Arguments

:: SignatureData 
-> AuthorizationHash 
-> ByteString

region, e.g. us-east-1

-> ByteString

service, e.g. dynamodb

-> ByteString

SignedHeaders, e.g. content-type;host;x-amz-date;x-amz-target

-> ByteString

canonicalRequest (before hashing)

-> ByteString 

IO free version of authorizationV4, use this if you need to compute the signature outside of IO.

signatureV4 #

Arguments

:: SignatureData 
-> AuthorizationHash 
-> ByteString

region, e.g. us-east-1

-> ByteString

service, e.g. dynamodb

-> ByteString

canonicalRequest (before hashing)

-> ByteString 

Query construction helpers

queryList :: (a -> [(ByteString, ByteString)]) -> ByteString -> [a] -> [(ByteString, ByteString)] #

queryList f prefix xs constructs a query list from a list of elements xs, using a common prefix prefix, and a transformer function f.

A dot (.) is interspersed between prefix and generated key.

Example:

queryList swap "pfx" [("a", "b"), ("c", "d")] evaluates to [("pfx.b", "a"), ("pfx.d", "c")] (except with ByteString instead of String, of course).

awsBool :: Bool -> ByteString #

A "true"/"false" boolean as requested by some services.

fmtTime :: String -> UTCTime -> ByteString #

Format time according to a format string, as a ByteString.

fmtRfc822Time :: UTCTime -> ByteString #

Format time in RFC 822 format.

fmtAmzTime :: UTCTime -> ByteString #

Format time in yyyy-mm-ddThh-mm-ss format.

fmtTimeEpochSeconds :: UTCTime -> ByteString #

Format time as seconds since the Unix epoch.

parseHttpDate :: String -> Maybe UTCTime #

Parse HTTP-date (section 3.3.1 of RFC 2616)

httpDate1 :: String #

HTTP-date (section 3.3.1 of RFC 2616, first type - RFC1123-style)

textHttpDate :: UTCTime -> Text #

Format (as Text) HTTP-date (section 3.3.1 of RFC 2616, first type - RFC1123-style)

Transactions

class (SignQuery r, ResponseConsumer r a, Loggable (ResponseMetadata a)) => Transaction r a | r -> a #

Associates a request type and a response type in a bi-directional way.

This allows the type-checker to infer the response type when given the request type and vice versa.

Note that the actual request generation and response parsing resides in SignQuery and ResponseConsumer respectively.

Instances
Transaction UpdateUser UpdateUserResponse # 
Instance details

Defined in Aws.Iam.Commands.UpdateUser

Transaction UpdateAccessKey UpdateAccessKeyResponse # 
Instance details

Defined in Aws.Iam.Commands.UpdateAccessKey

Transaction PutUserPolicy PutUserPolicyResponse # 
Instance details

Defined in Aws.Iam.Commands.PutUserPolicy

Transaction ListUsers ListUsersResponse # 
Instance details

Defined in Aws.Iam.Commands.ListUsers

Transaction ListUserPolicies ListUserPoliciesResponse # 
Instance details

Defined in Aws.Iam.Commands.ListUserPolicies

Transaction ListMfaDevices ListMfaDevicesResponse # 
Instance details

Defined in Aws.Iam.Commands.ListMfaDevices

Transaction ListAccessKeys ListAccessKeysResponse # 
Instance details

Defined in Aws.Iam.Commands.ListAccessKeys

Transaction GetUserPolicy GetUserPolicyResponse # 
Instance details

Defined in Aws.Iam.Commands.GetUserPolicy

Transaction GetUser GetUserResponse # 
Instance details

Defined in Aws.Iam.Commands.GetUser

Transaction DeleteUserPolicy DeleteUserPolicyResponse # 
Instance details

Defined in Aws.Iam.Commands.DeleteUserPolicy

Transaction DeleteUser DeleteUserResponse # 
Instance details

Defined in Aws.Iam.Commands.DeleteUser

Transaction DeleteAccessKey DeleteAccessKeyResponse # 
Instance details

Defined in Aws.Iam.Commands.DeleteAccessKey

Transaction CreateUser CreateUserResponse # 
Instance details

Defined in Aws.Iam.Commands.CreateUser

Transaction CreateAccessKey CreateAccessKeyResponse # 
Instance details

Defined in Aws.Iam.Commands.CreateAccessKey

Transaction UpdateItem UpdateItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.UpdateItem

Transaction ListTables ListTablesResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Transaction DeleteTable DeleteTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Transaction UpdateTable UpdateTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Transaction DescribeTable DescribeTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Transaction CreateTable CreateTableResult # 
Instance details

Defined in Aws.DynamoDb.Commands.Table

Transaction Scan ScanResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.Scan

Transaction Query QueryResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.Query

Transaction PutItem PutItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.PutItem

Transaction GetItem GetItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.GetItem

Transaction DeleteItem DeleteItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.DeleteItem

Transaction BatchWriteItem BatchWriteItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.BatchWriteItem

Transaction BatchGetItem BatchGetItemResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.BatchGetItem

Transaction PutObject PutObjectResponse # 
Instance details

Defined in Aws.S3.Commands.PutObject

Transaction PutBucket PutBucketResponse # 
Instance details

Defined in Aws.S3.Commands.PutBucket

Transaction AbortMultipartUpload AbortMultipartUploadResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

Transaction CompleteMultipartUpload CompleteMultipartUploadResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

Transaction UploadPart UploadPartResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

Transaction InitiateMultipartUpload InitiateMultipartUploadResponse # 
Instance details

Defined in Aws.S3.Commands.Multipart

Transaction HeadObject HeadObjectResponse # 
Instance details

Defined in Aws.S3.Commands.HeadObject

Transaction GetService GetServiceResponse # 
Instance details

Defined in Aws.S3.Commands.GetService

Transaction GetObject GetObjectResponse # 
Instance details

Defined in Aws.S3.Commands.GetObject

Transaction GetBucketObjectVersions GetBucketObjectVersionsResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucketObjectVersions

Transaction GetBucketLocation GetBucketLocationResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucketLocation

Transaction GetBucket GetBucketResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucket

Transaction DeleteObjects DeleteObjectsResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteObjects

Transaction DeleteObjectVersion DeleteObjectVersionResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteObjectVersion

Transaction DeleteObject DeleteObjectResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteObject

Transaction DeleteBucket DeleteBucketResponse # 
Instance details

Defined in Aws.S3.Commands.DeleteBucket

Transaction CopyObject CopyObjectResponse # 
Instance details

Defined in Aws.S3.Commands.CopyObject

Transaction VerifyEmailIdentity VerifyEmailIdentityResponse # 
Instance details

Defined in Aws.Ses.Commands.VerifyEmailIdentity

Transaction VerifyDomainIdentity VerifyDomainIdentityResponse # 
Instance details

Defined in Aws.Ses.Commands.VerifyDomainIdentity

Transaction VerifyDomainDkim VerifyDomainDkimResponse # 
Instance details

Defined in Aws.Ses.Commands.VerifyDomainDkim

Transaction SetIdentityNotificationTopic SetIdentityNotificationTopicResponse # 
Instance details

Defined in Aws.Ses.Commands.SetIdentityNotificationTopic

Transaction SetIdentityFeedbackForwardingEnabled SetIdentityFeedbackForwardingEnabledResponse # 
Instance details

Defined in Aws.Ses.Commands.SetIdentityFeedbackForwardingEnabled

Transaction SetIdentityDkimEnabled SetIdentityDkimEnabledResponse # 
Instance details

Defined in Aws.Ses.Commands.SetIdentityDkimEnabled

Transaction SendRawEmail SendRawEmailResponse # 
Instance details

Defined in Aws.Ses.Commands.SendRawEmail

Transaction ListIdentities ListIdentitiesResponse # 
Instance details

Defined in Aws.Ses.Commands.ListIdentities

Transaction GetIdentityVerificationAttributes GetIdentityVerificationAttributesResponse # 
Instance details

Defined in Aws.Ses.Commands.GetIdentityVerificationAttributes

Transaction GetIdentityNotificationAttributes GetIdentityNotificationAttributesResponse # 
Instance details

Defined in Aws.Ses.Commands.GetIdentityNotificationAttributes

Transaction GetIdentityDkimAttributes GetIdentityDkimAttributesResponse # 
Instance details

Defined in Aws.Ses.Commands.GetIdentityDkimAttributes

Transaction DeleteIdentity DeleteIdentityResponse # 
Instance details

Defined in Aws.Ses.Commands.DeleteIdentity

Transaction Select SelectResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Select

Transaction ListDomains ListDomainsResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Transaction DomainMetadata DomainMetadataResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Transaction DeleteDomain DeleteDomainResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Transaction CreateDomain CreateDomainResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Transaction BatchDeleteAttributes BatchDeleteAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Transaction BatchPutAttributes BatchPutAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Transaction DeleteAttributes DeleteAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Transaction PutAttributes PutAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Transaction GetAttributes GetAttributesResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Attributes

Transaction SetQueueAttributes SetQueueAttributesResponse # 
Instance details

Defined in Aws.Sqs.Commands.QueueAttributes

Transaction GetQueueAttributes GetQueueAttributesResponse # 
Instance details

Defined in Aws.Sqs.Commands.QueueAttributes

Transaction ListQueues ListQueuesResponse # 
Instance details

Defined in Aws.Sqs.Commands.Queue

Transaction DeleteQueue DeleteQueueResponse # 
Instance details

Defined in Aws.Sqs.Commands.Queue

Transaction CreateQueue CreateQueueResponse # 
Instance details

Defined in Aws.Sqs.Commands.Queue

Transaction RemovePermission RemovePermissionResponse # 
Instance details

Defined in Aws.Sqs.Commands.Permission

Transaction AddPermission AddPermissionResponse # 
Instance details

Defined in Aws.Sqs.Commands.Permission

Transaction ChangeMessageVisibility ChangeMessageVisibilityResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

Transaction ReceiveMessage ReceiveMessageResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

Transaction DeleteMessage DeleteMessageResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

Transaction SendMessage SendMessageResponse # 
Instance details

Defined in Aws.Sqs.Commands.Message

class Transaction r a => IteratedTransaction r a | r -> a where #

A transaction that may need to be split over multiple requests, for example because of upstream response size limits.

Minimal complete definition

nextIteratedRequest

Methods

nextIteratedRequest :: r -> a -> Maybe r #

Instances
IteratedTransaction ListUsers ListUsersResponse # 
Instance details

Defined in Aws.Iam.Commands.ListUsers

IteratedTransaction ListUserPolicies ListUserPoliciesResponse # 
Instance details

Defined in Aws.Iam.Commands.ListUserPolicies

IteratedTransaction ListMfaDevices ListMfaDevicesResponse # 
Instance details

Defined in Aws.Iam.Commands.ListMfaDevices

IteratedTransaction ListAccessKeys ListAccessKeysResponse # 
Instance details

Defined in Aws.Iam.Commands.ListAccessKeys

IteratedTransaction Scan ScanResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.Scan

IteratedTransaction Query QueryResponse # 
Instance details

Defined in Aws.DynamoDb.Commands.Query

IteratedTransaction GetBucketObjectVersions GetBucketObjectVersionsResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucketObjectVersions

IteratedTransaction GetBucket GetBucketResponse # 
Instance details

Defined in Aws.S3.Commands.GetBucket

IteratedTransaction Select SelectResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Select

IteratedTransaction ListDomains ListDomainsResponse # 
Instance details

Defined in Aws.SimpleDb.Commands.Domain

Credentials

data Credentials #

AWS access credentials.

Constructors

Credentials 

Fields

Instances
Show Credentials # 
Instance details

Defined in Aws.Core

makeCredentials #

Arguments

:: MonadIO io 
=> ByteString

AWS Access Key ID

-> ByteString

AWS Secret Access Key

-> io Credentials 

credentialsDefaultFile :: MonadIO io => io (Maybe FilePath) #

The file where access credentials are loaded, when using loadCredentialsDefault. May return Nothing if HOME is unset.

Value: directory/.aws-keys

credentialsDefaultKey :: Text #

The key to be used in the access credential file that is loaded, when using loadCredentialsDefault.

Value: default

loadCredentialsFromFile :: MonadIO io => FilePath -> Text -> io (Maybe Credentials) #

Load credentials from a (text) file given a key name.

The file consists of a sequence of lines, each in the following format:

keyName awsKeyID awsKeySecret

loadCredentialsFromEnv :: MonadIO io => io (Maybe Credentials) #

Load credentials from the environment variables AWS_ACCESS_KEY_ID and AWS_ACCESS_KEY_SECRET (or AWS_SECRET_ACCESS_KEY), if possible.

loadCredentialsFromEnvOrFile :: MonadIO io => FilePath -> Text -> io (Maybe Credentials) #

Load credentials from environment variables if possible, or alternatively from a file with a given key name.

See loadCredentialsFromEnv and loadCredentialsFromFile for details.

loadCredentialsFromEnvOrFileOrInstanceMetadata :: MonadIO io => FilePath -> Text -> io (Maybe Credentials) #

Load credentials from environment variables if possible, or alternatively from the instance metadata store, or alternatively from a file with a given key name.

See loadCredentialsFromEnv, loadCredentialsFromFile and loadCredentialsFromInstanceMetadata for details.

loadCredentialsDefault :: MonadIO io => io (Maybe Credentials) #

Load credentials from environment variables if possible, or alternative from the default file with the default key name.

Default file: directory/.aws-keys Default key name: default

See loadCredentialsFromEnv and loadCredentialsFromFile for details.

Service configuration

class DefaultServiceConfiguration config where #

Default configuration for a specific service.

Minimal complete definition

defServiceConfig

Methods

defServiceConfig :: config #

Default service configuration.

debugServiceConfig :: config #

Default debugging-only configuration. (Normally using HTTP instead of HTTPS for easier debugging.)

Instances
DefaultServiceConfiguration (IamConfiguration UriOnlyQuery) # 
Instance details

Defined in Aws.Iam.Core

DefaultServiceConfiguration (IamConfiguration NormalQuery) # 
Instance details

Defined in Aws.Iam.Core

DefaultServiceConfiguration (DdbConfiguration NormalQuery) # 
Instance details

Defined in Aws.DynamoDb.Core

DefaultServiceConfiguration (S3Configuration UriOnlyQuery) # 
Instance details

Defined in Aws.S3.Core

DefaultServiceConfiguration (S3Configuration NormalQuery) # 
Instance details

Defined in Aws.S3.Core

DefaultServiceConfiguration (SesConfiguration UriOnlyQuery) # 
Instance details

Defined in Aws.Ses.Core

DefaultServiceConfiguration (SesConfiguration NormalQuery) # 
Instance details

Defined in Aws.Ses.Core

DefaultServiceConfiguration (SdbConfiguration UriOnlyQuery) # 
Instance details

Defined in Aws.SimpleDb.Core

DefaultServiceConfiguration (SdbConfiguration NormalQuery) # 
Instance details

Defined in Aws.SimpleDb.Core

DefaultServiceConfiguration (SqsConfiguration UriOnlyQuery) # 
Instance details

Defined in Aws.Sqs.Core

DefaultServiceConfiguration (SqsConfiguration NormalQuery) # 
Instance details

Defined in Aws.Sqs.Core

HTTP types

data Protocol #

Protocols supported by AWS. Currently, all AWS services use the HTTP or HTTPS protocols.

Constructors

HTTP 
HTTPS 
Instances
Eq Protocol # 
Instance details

Defined in Aws.Core

Ord Protocol # 
Instance details

Defined in Aws.Core

Read Protocol # 
Instance details

Defined in Aws.Core

Show Protocol # 
Instance details

Defined in Aws.Core

defaultPort :: Protocol -> Int #

The default port to be used for a protocol if no specific port is specified.

data Method #

Request method. Not all request methods are supported by all services.

Constructors

Head

HEAD method. Put all request parameters in a query string and HTTP headers.

Get

GET method. Put all request parameters in a query string and HTTP headers.

PostQuery

POST method. Put all request parameters in a query string and HTTP headers, but send the query string as a POST payload

Post

POST method. Sends a service- and request-specific request body.

Put

PUT method.

Delete

DELETE method.

Instances
Eq Method # 
Instance details

Defined in Aws.Core

Methods

(==) :: Method -> Method -> Bool #

(/=) :: Method -> Method -> Bool #

Ord Method # 
Instance details

Defined in Aws.Core

Show Method # 
Instance details

Defined in Aws.Core

httpMethod :: Method -> Method #

HTTP method associated with a request method.