Firebase Storage upload files
Upload file\(s\) to Firebase Storage in the given upload path\(s\)
Upload file(s) to Firebase Storage in the given upload path(s).
This flow function takes in a list of file objects - the file objects contain the upload path.
The first output is triggered if all of the files were uploaded successfully.
The second output is triggered if at least 1 of many files fail to upload.
The third output is triggered if all of the file uploads fail.
Note: Firebase needs to be initialized before this flow function can be used. Also, if access to the Firebase Storage resource is restricted make sure user is authenticated and has the required permissions to access it.

Input arguments

Label
Key
Type
Required?
Default
Description
Files to upload
files
Array
Yes
List of files that have `uploadUrl` property.
Custom upload path
uploadPath
String
No
Custom path for uploaded files - this determines the folder structure in Firestore. If custom path is not provided (`No value` from binding editor or `undefined` via formula), the folder structure will be copied from the device. Note: that the custom upload and download paths need to match.

Output arguments

Number of outputs: 3
Label
Key
Type
Description
Upload job ID
jobId
Number
Unique job ID for the upload.
Uploaded files
files
Array
Object describing the uploaded file.
    Local path
files.path
String
Absolute local filesystem path representing the file location on the device, including the filename and extension. On web, this is created via the [`createObjectURL`](https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL) method.
    MIME type
files.mimeType
String
MIME type of the file, if it could be determined.
    Name
files.name
String
Name of the file in the local filesystem, if applicable. Note that the filename and extension are included in the **Local path** property already.
    Size
files.size
Number
Size of the file, in bytes.
    Created at
files.createdAt
String
Creation datetime of the file, if it can be determined.
    Modified at
files.modifiedAt
String
Datetime when the file was last modified, if it can be determined.
    Upload path
files.uploadPath
String
Firebase Storage path where the file is uploaded
    Upload status
files.uploadStatus
Object
Upload status for the file
    Download URL
files.downloadUrl
String
URL to download the uploaded image. Depending on the Firebase configuration the URL is valid only temporarily and should be re-fetched using the Get Firebase Storage download URL flow function for later access.
Uploaded files
erroredFiles
Array
Object describing the file for which the upload failed.
    Local path
erroredFiles.path
String
Absolute local filesystem path representing the file location on the device, including the filename and extension. On web, this is created via the [`createObjectURL`](https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL) method.
    MIME type
erroredFiles.mimeType
String
MIME type of the file, if it could be determined.
    Name
erroredFiles.name
String
Name of the file in the local filesystem, if applicable. Note that the filename and extension are included in the **Local path** property already.
    Size
erroredFiles.size
Number
Size of the file, in bytes.
    Created at
erroredFiles.createdAt
String
Creation datetime of the file, if it can be determined.
    Modified at
erroredFiles.modifiedAt
String
Datetime when the file was last modified, if it can be determined.
    Upload path
erroredFiles.uploadPath
String
Firebase Storage path where the file is uploaded
    Upload status
erroredFiles.uploadStatus
Object
Upload status for the file
    Download URL
erroredFiles.downloadUrl
String
URL to download the uploaded image. Depending on the Firebase configuration the URL is valid only temporarily and should be re-fetched using the Get Firebase Storage download URL flow function for later access.
Uploaded files
successfulFiles
Array
Object describing the uploaded file.
    Local path
successfulFiles.path
String
Absolute local filesystem path representing the file location on the device, including the filename and extension. On web, this is created via the [`createObjectURL`](https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL) method.
    MIME type
successfulFiles.mimeType
String
MIME type of the file, if it could be determined.
    Name
successfulFiles.name
String
Name of the file in the local filesystem, if applicable. Note that the filename and extension are included in the **Local path** property already.
    Size
successfulFiles.size
Number
Size of the file, in bytes.
    Created at
successfulFiles.createdAt
String
Creation datetime of the file, if it can be determined.
    Modified at
successfulFiles.modifiedAt
String
Datetime when the file was last modified, if it can be determined.
    Upload path
successfulFiles.uploadPath
String
Firebase Storage path where the file is uploaded
    Upload status
successfulFiles.uploadStatus
Object
Upload status for the file
    Download URL
successfulFiles.downloadUrl
String
URL to download the uploaded image. Depending on the Firebase configuration the URL is valid only temporarily and should be re-fetched using the Get Firebase Storage download URL flow function for later access.

Events

Label
Key
Description
Properties
File upload progress
onFileUploadProgress
Triggered when the file upload progresses.
jobId, totalSize, bytesUploaded, files

Errors

Label
Code
Description
Unknown error
unknown
Thrown when trying to upload the files resulted in an unknown error.
All files failed
allFilesFailed
Thrown if all of the files you are trying to upload fail
No files to upload
noFilesToUpload
Thrown if there are no files to upload
Last modified 2mo ago
Export as PDF
Copy link