AWS s3 generate presigned url for a file

Do we have any specific node or functionality which generates presigned url for a file inside particular bucket ?

@mylearnings_abu the built-in S3 node doesnt have a “Generate Presigned URL” operation last i checked — usual path is a Code node with @aws-sdk/s3-request-presigner (couple lines, signs the URL with ur existing AWS creds). is the Code-node route ok or do u need a no-code path?

using @aws-sdk/s3-request-presigner inside code node is the only option? am just thinking will it slow down the workflow?

@mylearnings_abu
very little, the URL doesn’t upload/download, it just creates a temporary link.

Download and upload objects with presigned URLs - Amazon Simple Storage Service

No performance concern with the Code node approach - generating a presigned URL with @aws-sdk is a local crypto operation, no network call to AWS. It runs in milliseconds. The actual network call only happens when the end user hits the presigned URL to download/upload. So the Code node route is perfectly fine for this.

heres the actual Code node u can drop in to skip the auth/perf debate entirely:

if self-hosted, add NODE_FUNCTION_ALLOW_EXTERNAL=@aws-sdk/client-s3,@aws-sdk/s3-request-presigner to ur env. on n8n Cloud both packages are already whitelisted so it just runs.