# examples/destinations/sqs.yaml## Reference config for an AWS SQS destination, showing a standard queue.# FIFO publish settings and body formats are shown in fifo-sqs.yaml.# A .fifo target requires explicit publish.fifo identity settings.# Credentials: omit access_key_id / secret_access_key to use the default# AWS credential chain (IAM role, environment, ~/.aws). Set both to use# static credentials, or set endpoint to http://localhost:4566 for LocalStack.server: addr: ":8080" max_body_bytes: 1048576destinations: jobs: type: sqs # How to handle an existing queue whose attributes differ from this config: # reconcile (default): edit the queue's mutable attributes to match (needs sqs:SetQueueAttributes) # warn: log the difference and use the existing queue unchanged # error: fail startup on any difference # Immutable conflicts (FIFO vs standard) always fail startup regardless. on_existing_conflict: reconcile sqs: region: "us-east-1" # Uncomment to override the SQS endpoint, e.g. for LocalStack: # endpoint: "http://localhost:4566" # or reference an env var you export # Omit both of the following to use the default AWS credential chain: # access_key_id: "AKIA..." # secret_access_key: "..."flows: # Standard queue: FIFO identity settings are not needed. orders: nodes: - {id: in, type: http_trigger, path: /webhooks/orders, methods: [POST]} - {id: body, type: read_body, max_bytes: 1048576} - {id: auth, type: auth, scheme: hmac_sha256_ts_colon, secret: "${ORDERS_WEBHOOK_SECRET}", signature_header: X-Signature, timestamp_tolerance: "5m"} - {id: env, type: envelope, body_format: json} # Resource defaults use the destination config; this publishes the # default Hookway envelope. - {id: out, type: publish, destination: jobs, target: orders-jobs, create: true} edges: [in>body, body>auth, auth>env, env>out] notifications: nodes: - {id: in, type: http_trigger, path: /webhooks/notifications, methods: [POST]} - {id: body, type: read_body, max_bytes: 1048576} - {id: auth, type: auth, scheme: hmac_sha256_hex, secret: "${NOTIFY_WEBHOOK_SECRET}", signature_header: X-Hub-Signature-256} - {id: env, type: envelope, body_format: json} # Standard queues can use a delay and fair-queue grouping without FIFO. - id: out type: publish destination: jobs target: notification-jobs create: true sqs: {delay_seconds: 10} group_id: {source: static, value: sample-group} resource_attributes: VisibilityTimeout: "60" MessageRetentionPeriod: "86400" SqsManagedSseEnabled: "true" edges: [in>body, body>auth, auth>env, env>out]