Skip to main content
Updated Jul 26, 2026

Download to Storage

Use this action when you want to download a file from an external URL and stream it directly into your company storage.

Best for

  • Files too large for the HTTP request action's 5 MB response cap — this action streams up to 500 MB without buffering the file in memory
  • Saving a remote file once, then reusing its stored reference or signed URL in later steps
  • Importing media (images, videos, audio, documents) from external systems

Main fields

FieldWhat it does
HTTP URLCEL expression resolving to the download URL. Only GET requests are made, and only public HTTP(S) URLs are allowed
PurposeOptional label for what the download does, shown in logs
HTTP headersOptional request headers, for example for authentication. Keys and values are CEL expressions — pair with Resolve Variables to load secrets
File NameOptional CEL expression for the stored file name. Falls back to the response's Content-Disposition header, then the URL path, then a generated name
Content typeOptional CEL expression for the MIME type. Auto-detected from the response Content-Type header or the file extension when omitted
CategoryStores the file as images, videos, audios, or documents. Auto-detected from the content type when omitted
PublicControls whether the stored file should be openly accessible (off by default)

What later steps can use

  • step(N).status
  • step(N).file
  • step(N).signedUrl
  • step(N).contentType
  • step(N).size

step(N).file contains the stored object (bucket, fullPath, name, metadata), and step(N).signedUrl is a temporary download URL valid for about 15 minutes.

Tips

  • Downloads are capped at 500 MB — larger transfers are aborted with download_size_limit_exceeded.
  • The downloaded bytes count toward your storage quota, and the step fails with storage_quota_exceeded when the download would not fit.
  • A non-2xx response fails the step (http_client_error or http_server_error), and the whole download must finish within 5 minutes.
  • Nothing is left behind on failure: a partially stored file is cleaned up automatically.
  • Use Create Storage Signed URL (actions/media/storage/signed-url) later when you need a fresh download link after the initial one expires.
On this page