What the scenario does
Make handles the workflow. FilePost handles the file boundary. The source module provides a file, FilePost stores it and returns a public URL, and the next module receives a normal text value it can save, send, or attach.
File in
Map a file object from Gmail, Google Drive, Typeform, Airtable, or another Make module.
One HTTP request
Use multipart form data with your FilePost API key. No custom Make app or S3 setup is needed.
URL out
Map url into the next module. Keep file_id if the scenario may manage the file later.
Build the Make HTTP module
- Create a free FilePost API key and keep it in Make as a private connection or secure variable.
- Add HTTP and choose Make a request.
- Set the URL to
https://upload.filepost.dev/v1/uploadand the method toPOST. - Add a header named
X-API-Keywith your FilePost key. Do not put the key in a public URL or mapped text field. - Set the body type to Multipart/form-data. Add a file field named
fileand map the source file into its data value. Map the source filename into the filename value when available. - Run the module once. Map the response
urlinto the next step in the scenario.
POST https://upload.filepost.dev/v1/upload
X-API-Key: fh_your_key
Content-Type: multipart/form-data
file = the mapped Make file
Use the returned URL downstream
The response is JSON. The most useful fields are url, file_id, name, size, content_type, and expires_at. Store url in Airtable or Google Sheets, send it to Slack, or pass it to the next API.
Temporary files and expiry
If the source URL is temporary, use FilePost's URL upload endpoint from an HTTP module and set an explicit lifetime when the file should not remain indefinitely. For normal uploads, URLs have no automatic expiry until you delete the file or set expiry.
For the complete request contract, see the FilePost API reference. For a shorter walkthrough, see the Make file upload guide.