hS3-0.5.8: Interface to Amazon's Simple Storage Service (S3)

Safe HaskellNone




Implements authentication and low-level communication with Amazon Web Services, such as S3, EC2, and others. API Version 2006-03-01 http://docs.amazonwebservices.com/AmazonS3/2006-03-01/


Function Types

runAction :: S3Action -> IO (AWSResult (HTTPResponse ByteString))Source

Construct the request specified by an S3Action, send to Amazon, and return the response. Todo: add MD5 signature.

isAmzHeader :: Header -> BoolSource

Determine if a header belongs in the StringToSign



:: S3Action

Action with resource

-> Integer

Expiration time, in seconds since 00:00:00 UTC on January 1, 1970

-> URI

URI of resource

Construct a pre-signed URI, but don't act on it. This is useful for when an expiration date has been set, and the URI needs to be passed on to a client.

Data Types

data S3Action Source

An action to be performed using S3.




s3conn :: AWSConnection

Connection and authentication information

s3bucket :: String

Name of bucket to act on (URL encoded)

s3object :: String

Name of object to act on (URL encoded)

s3query :: String

Query parameters (requires a prefix of ?)

s3metadata :: [(String, String)]

Additional header fields to send

s3body :: ByteString

Body of action, if sending data

s3operation :: RequestMethod

Type of action, PUT, GET, etc.


Misc functions

mimeDecode :: String -> StringSource

Decode a mime string, we know about quoted printable and base64 encoded UTF-8 S3 may convert quoted printable to base64