| Stability | experimental |
|---|---|
| Maintainer | Lars Kuhtz <lars@alephcloud.com> |
| Safe Haskell | None |
Aws.Sns.Core
Contents
Description
API Version: 2013-03-31
http://docs.aws.amazon.com/sns/2010-03-31/APIReference/Welcome.html
- data SnsVersion = SnsVersion_2013_03_31
- data SnsConfiguration qt = SnsConfiguration {}
- data SnsMetadata = SnsMetadata {}
- data SnsErrorResponse
- = SnsErrorResponse {
- snsErrorStatusCode :: !Status
- snsErrorCode :: !Text
- snsErrorMessage :: !Text
- snsErrorResource :: !(Maybe Text)
- snsErrorHostId :: !(Maybe Text)
- snsErrorAccessKeyId :: !(Maybe Text)
- snsErrorStringToSign :: !(Maybe ByteString)
- | SnsResponseDecodeError Text
- = SnsErrorResponse {
- data SnsProtocol
- snsProtocolToText :: IsString a => SnsProtocol -> a
- parseSnsProtocol :: CharParsing m => m SnsProtocol
- type SnsEndpoint = Text
- data SnsAction
- = SnsActionAddPermission
- | SnsActionConfirmSubscription
- | SnsActionCreatePlatformApplication
- | SnsActionCreatePlatformEndpoint
- | SnsActionCreateTopic
- | SnsActionDeleteEndPoint
- | SnsActionDeletePlatformApplication
- | SnsActionDeleteTopic
- | SnsActionGetEndpointAttributes
- | SnsActionGetPlatformApplicationAttribute
- | SnsActionGetSubscriptionAttributes
- | SnsActionGetTopicAttributes
- | SnsActionListEndpointsByPlatformApplication
- | SnsActionListPlatformApplications
- | SnsActionListSubscriptions
- | SnsActionListSubscriptionsByTopic
- | SnsActionListTopics
- | SnsActionPublish
- | SnsActionRemovePermission
- | SnsActionSetEndpointAttributes
- | SnsActionSetPlatformApplicationAttributes
- | SnsActionSetSubscriptionAttributes
- | SnsActionSetTopicAttributes
- | SnsActionSubscribe
- | SnsActionUnsubscribe
- snsActionToText :: IsString a => SnsAction -> a
- parseSnsAction :: CharParsing m => m SnsAction
- snsServiceEndpoint :: Region -> ByteString
- data SnsQuery = SnsQuery {}
- snsSignQuery :: SnsQuery -> SnsConfiguration qt -> SignatureData -> SignedQuery
- snsResponseConsumer :: HTTPResponseConsumer a -> IORef SnsMetadata -> HTTPResponseConsumer a
- snsXmlResponseConsumer :: (Cursor -> Response SnsMetadata a) -> IORef SnsMetadata -> HTTPResponseConsumer a
- snsErrorResponseConsumer :: HTTPResponseConsumer a
- data SnsError a
- data SnsCommonParameters = SnsCommonParameters {}
- data SnsCommonError
- = ErrorIncompleteSignature
- | ErrorInternalFailure
- | ErrorInvalidAction
- | ErrorInvalidClientTokenId
- | ErrorInvalidParameterCombination
- | ErrorInvalidParameterValue
- | ErrorInvalidQueryParamter
- | ErrorMalformedQueryString
- | ErrorMissingAction
- | ErrorMissingAuthenticationToken
- | ErrorMissingParameter
- | ErrorOptInRequired
- | ErrorRequestExpired
- | ErrorServiceUnavailable
- | ErrorThrottling
- | ErrorValidationError
Documentation
data SnsVersion Source
Constructors
| SnsVersion_2013_03_31 |
SNS Client Configuration
data SnsConfiguration qt Source
Constructors
| SnsConfiguration | |
Fields | |
Instances
| Show (SnsConfiguration qt) |
SNS Client Metadata
data SnsMetadata Source
Constructors
| SnsMetadata | |
Fields
| |
Instances
SNS Exceptions
data SnsErrorResponse Source
TODO use type SnsError for snsErrorCode.
Constructors
| SnsErrorResponse | |
Fields
| |
| SnsResponseDecodeError Text | |
SNS Subscription Protocols
data SnsProtocol Source
snsProtocolToText :: IsString a => SnsProtocol -> aSource
parseSnsProtocol :: CharParsing m => m SnsProtocolSource
SNS Subscription Endpoints
type SnsEndpoint = TextSource
Internal
SNS Actions
Constructors
snsActionToText :: IsString a => SnsAction -> aSource
parseSnsAction :: CharParsing m => m SnsActionSource
SNS AWS Service Endpoints
snsServiceEndpoint :: Region -> ByteStringSource
SNS Endpoints as specified in AWS General API version 0.1
http://docs.aws.amazon.com/general/1.0/gr/rande.html#sns_region
This are the endpoints of the AWS SNS Service. This must not be confused with an SNS endpoint that is a client that subscribes to receive SNS notifications (see SnsEndpoint).
SNS Queries
Constructors
| SnsQuery | |
Fields
| |
snsSignQuery :: SnsQuery -> SnsConfiguration qt -> SignatureData -> SignedQuerySource
Creates a signed query.
Uses AWS Signature V4. All requests expect for publish are GET requests with the signature embedded into the URI.
FIXME eliminate usage of error. Either statically elimintate possibility of failures or change type to Either.
SNS Response Consumers
snsXmlResponseConsumer :: (Cursor -> Response SnsMetadata a) -> IORef SnsMetadata -> HTTPResponseConsumer aSource
Parse XML Responses
snsErrorResponseConsumer :: HTTPResponseConsumer aSource
Parse Error Responses
SNS Errors and Common Parameters
Constructors
| SnsErrorCommon SnsCommonError | |
| SnsErrorCommand a |
data SnsCommonParameters Source
Common SNS Parameters
http://docs.aws.amazon.com/sns/2010-03-31/APIReference/CommonParameters.html
The user of this API hardy needs to deal with the data type directly.
This API supports only signature version 4 with signature method AWS4-HMAC-SHA256.
/This is not currently used for computing the requests, but serves as documentation and reference for the implementation of yet missing features./
Constructors
| SnsCommonParameters | |
Fields
| |
data SnsCommonError Source
Common SNS Errors
http://docs.aws.amazon.com/sns/2010-03-31/APIReference/CommonErrors.html
TODO add function to provide info about the error (content of haddock comments)
Constructors
| ErrorIncompleteSignature | The request signature does not conform to AWS standards. Code 400 |
| ErrorInternalFailure | The request processing has failed because of an unknown error, exception or failure. Code 500 |
| ErrorInvalidAction | The action or operation requested is invalid. Verify that the action is typed correctly. Code 400 |
| ErrorInvalidClientTokenId | The X.509 certificate or AWS access key ID provided does not exist in our records. Code 403 |
| ErrorInvalidParameterCombination | Parameters that must not be used together were used together. Code 400 |
| ErrorInvalidParameterValue | An invalid or out-of-range value was supplied for the input parameter. Code 400 |
| ErrorInvalidQueryParamter | The AWS query string is malformed or does not adhere to AWS standards. Code 400 |
| ErrorMalformedQueryString | The query string contains a syntax error. Code 404 |
| ErrorMissingAction | The request is missing an action or a required parameter. Code 400 |
| ErrorMissingAuthenticationToken | The request must contain either a valid (registered) AWS access key ID or X.509 certificate. Code 403 |
| ErrorMissingParameter | A required parameter for the specified action is not supplied. Code 400 |
| ErrorOptInRequired | The AWS access key ID needs a subscription for the service. Code 403 |
| ErrorRequestExpired | The request reached the service more than 15 minutes after the date stamp on the request or more than 15 minutes after the request expiration date (such as for pre-signed URLs), or the date stamp on the request is more than 15 minutes in the future. Code 400 |
| ErrorServiceUnavailable | The request has failed due to a temporary failure of the server. Code 503 |
| ErrorThrottling | The request was denied due to request throttling. Code 400 |
| ErrorValidationError | The input fails to satisfy the constraints specified by an AWS service. Code 400 |