The SQS queue URL.
The S3 bucket name.
OptionalalwaysBy default, the consumer will treat an empty object or array from either of the
handlers as a acknowledgement of no messages and will not delete those messages as
a result. Set this to true to always acknowledge all messages no matter the returned
value.
OptionalalwaysWhether to always use S3 regardless of message size
OptionalattributeList of queue attributes to retrieve, see AWS docs.
OptionalauthenticationThe duration (in milliseconds) to wait before retrying after an authentication error.
OptionalbatchThe number of messages to request from SQS when polling (default 1).
This cannot be higher than the AWS limit of 10.
OptionalextendedAWSErrorsSet this to true if you want to receive additional information about the error
that occurred from AWS, such as the response and metadata.
OptionalhandleTime in ms to wait for handleMessage to process a message before timing out.
Emits timeout_error on timeout. By default, if handleMessage times out,
the unprocessed message returns to the end of the queue.
OptionalheartbeatThe interval (in seconds) between requests to extend the message visibility timeout.
On each heartbeat the visibility is extended by adding visibilityTimeout to
the number of seconds since the start of the handler function.
This value must less than visibilityTimeout.
OptionalmessageList of message attributes to retrieve (i.e. ['name', 'address']).
OptionalmessageA list of attributes that need to be returned along with each message.
OptionalpollingIf you want the stop action to wait for the final poll to complete and in-flight messages to be processed before emitting 'stopped' set this to the max amount of time to wait.
OptionalpollingThe duration (in milliseconds) to wait before repolling the queue.
OptionalreceiveCustom function to process message bodies when receiving If provided, overrides the default behavior
OptionalregionThe AWS region.
Optionals3The S3 client options.
Optionals3The S3 prefix.
Optionals3The S3 TTL in seconds.
OptionalsendCustom function to determine if a message should be stored in S3 If provided, overrides the default behavior based on message size
OptionalshouldDefault to true, if you don't want the package to delete messages from sqs
set this to false.
OptionalsizeThe size threshold in bytes. Messages larger than this will be stored in S3.
OptionalsqsThe SQS client options.
OptionalsuppressSet this to true if you want to suppress the warning about FIFO queues.
OptionalterminateIf true, sets the message visibility timeout to 0 after a processing_error. You can
also specify a different timeout using a number.
If you would like to use exponential backoff, you can pass a function that returns
a number and it will use that as the value for the timeout.
OptionaluseSet this value to false to ignore the queueUrl and use the
client's resolved endpoint, which may be a custom endpoint.
OptionaluseWhether to use receipt handle markers to track S3 content
OptionalvisibilityThe duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request.
OptionalwaitThe duration (in seconds) for which the call will wait for a message to arrive in the queue before returning.
OptionalhandleAn async function (or function that returns a Promise) to be called whenever
a message is received.
In the case that you need to acknowledge the message, return an object containing the MessageId that you'd like to acknowledge.
OptionalhandleAn async function (or function that returns a Promise) to be called whenever
a batch of messages is received. Similar to handleMessage but will receive the
list of messages, not each message individually.
If both are set, handleMessageBatch overrides handleMessage.
In the case that you need to ack only some of the messages, return an array with the successful messages only.
OptionalpostAn async function (or function that returns a Promise) to be called right
after the SQS Client sends a receive message command.
This function is usefull if SQS Client module exports have been modified, for example to add middlewares.
OptionalpreAn async function (or function that returns a Promise) to be called right
before the SQS Client sends a receive message command.
This function is usefull if SQS Client module exports have been modified, for example to add middlewares.
The options for the extended SQS consumer and producer. Extends both ConsumerOptions and ProducerOptions to allow full access to all settings, while adding S3 integration capabilities.