Update
AWS has finally launched New Event Notifications for Amazon S3 today, which indeed simply extend the long available PUT Bucket notification API with additional event types for object creation via the S3 APIs such as PUT, POST, and COPY:
s3:ObjectCreated:*
s3:ObjectCreated:Put
s3:ObjectCreated:Post
s3:ObjectCreated:Copy
s3:ObjectCreated:CompleteMultipartUpload
Initial Answer
[...] is there any way to send the notification directly to the SWF, without having a service consuming them and starting the workflow?
Unfortunately there is no such way, you indeed need a mediating service - while the PUT Bucket notification has obviously been designed to allow for other types of events too, Amazon S3 doesn't support Amazon SNS notifications for anything but Enabling RRS Lost Object Notifications as of today:
This implementation of the PUT operation uses the notification
subresource to enable notifications of specified events for a bucket. Currently, the s3:ReducedRedundancyLostObject
event is the only event supported for notifications. The s3:ReducedRedundancyLostObject
event is triggered when Amazon S3 detects that it has lost all replicas of an object and can no longer service requests for that object. [emphasis mine]