使用Integromat HTTP模块从AWS云存储上传文件至OneDrive时文件名固定为file.extension的问题排查请求
file.extension for AWS → OneDrive Transfers Hey there! Let's figure out why your files are landing in OneDrive with the generic file.extension name instead of their original AWS filenames—especially since your colleague has this working with the same setup. This is almost definitely a tiny configuration detail you missed, so let's break down the key areas to check:
1. Verify AWS Metadata is Being Passed to the HTTP Module
First, make sure you're pulling the original filename from AWS before hitting the HTTP "Get a file" step:
- If you're using an AWS S3 trigger/module, check if you're capturing the file's
Key(this is the full original filename in S3). Your colleague is probably passing thisKeyvalue through to the HTTP module somehow. - If you're skipping an explicit AWS module and using a direct HTTP request to pull the file, you might be missing the parameter that tells AWS to return the original filename in response headers.
2. Inspect the HTTP "Get a file" Module's Configuration
Dig into your HTTP module's settings—this is where the filename is likely getting lost:
- Check Response Headers: When you fetch a file from AWS S3, the response should include a
Content-Dispositionheader that looks likeattachment; filename="your-original-file.xlsx". Integromat might not be auto-parsing this header by default. - Compare with your colleague's setup: They're probably using an expression in the HTTP module's filename field to extract this value. For example, something like:
This tells Integromat to pull the real filename from the response header instead of using the default{{get(header("Content-Disposition"), "filename")}}file.extension. - Check the "Save As" field: If your HTTP module has a "Save As" or "Filename" input, make sure it's mapped to the original AWS filename variable (like
{{aws-s3.key}}) instead of leaving it blank (which triggers the default name).
3. Fix the Filename in the OneDrive Upload Step
Even if the HTTP module outputs file.extension, you can override this directly in the OneDrive module:
- In your OneDrive upload step, look for the "File name" field. Instead of using the HTTP module's output filename (e.g.,
{{http.get-a-file.filename}}), map it directly to the original AWS filename from your earlier step (like{{aws-s3.key}}). - This bypasses the HTTP module's default naming entirely and ensures the original name is preserved.
Final Tip
Since your colleague's setup works, the fastest fix is to open both your flow and theirs side-by-side. Compare every field in the AWS trigger, HTTP "Get a file" module, and OneDrive upload module—pay extra attention to any variable mappings or expressions related to filenames. The difference will be something small, like a missing variable or an unconfigured header extraction.
内容的提问来源于stack exchange,提问作者techgirl

