The AWS Simple Queue Service Connector enables you to integrate with Amazon Simple Queue Service (Amazon SQS) to send, store, and receive messages between software components at any volume, without losing messages or requiring other services to be available.
The actions in this connector provide you the following capabilities over the queues and messages in your Amazon SQS hosted queue:
Create, purge, and delete a queue
Get the URL of a queue
Send, receive, and delete messages
You can create two types of queues:
Standard queues - offer unlimited throughput, with best-effort ordering, and at-least-once delivery (occasionally more than one copy of a message is delivered).
FIFO queues - offer high throughput, guaranteeing that messages are processed exactly once, in the exact order that they are sent.
This component is based on the AWS SDK for .NET v3.
To use this connector you must have:
An AWS account, so you can use Amazon SQS
An AWS access key (access key ID and secret access key)
See AWS documentation for detailed information and instructions for getting started, developing, and working with Amazon SQS.
To authenticate in Amazon SQS from this connector, you need the following information:
The access key ID of your AWS access key
The secret access key of your AWS access key
The service URL (endpoint) that you want to connect. To reduce latency, you should choose an endpoint from an AWS region close to your application server. See AWS documentation for the list of AWS SQS endpoints.
Use the above authentication information to fill in the AWSCredentials parameters in all of the public actions available in the AmazonSQS_IS module. The OutSystems parameters are:
ServiceUrl
AccessKeyId
SecretAccessKey
Use the above information to fill in the following site properties available in the AmazonSQS_IS module:
Access Key
Secret Access Key
ServiceUrl (default value is "https://sqs.us-east-1.amazonaws.com")
The connector uses the values in these site properties as the default AWS credentials to authenticate in Amazon SQS.
Alternatively, you can specify different credentials when invoking an action from the connector in your logic by using the AWSCredentials input parameter:
Each time you run an action from the connector, the authentication in Amazon SQS is performed as follows (see this logic in GetAmazonCredentials action):
If the AWSCredentials input parameter is passed (the parameter isn’t mandatory), these values are used to authenticate.
Otherwise, the authentication uses the values in the Access Key, Secret Access Key, and ServiceUrl site properties.
If the values in the site properties are not set, an exception is raised: “Invalid configuration. Please validate the values."
With this design, you have the flexibility to define a set of AWS credentials for specific actions, while using the ones configured in the site properties as default credentials for the remaining actions.