Save To Bucket¶
Collects connected results, organizes them into a well-structured folder (including optional seeds/configs), uploads the folder’s content to a specified path in a cloud bucket, and returns a signed URL to a downloadable zip of that content. Each run is uniquely namespaced to avoid collisions and to allow merging results from multiple runs under the same folder path.

Usage¶
Use this node at the end of a workflow to persist and share results externally. Connect one or more outputs (results_1, results_2, …) from upstream nodes. Set the target bucket folder path to organize outputs. The node will package all connected outputs, upload them to the bucket, and provide a signed URL you can pass to an Output node for easy downloading.
Inputs¶
| Field | Required | Type | Description | Example |
|---|---|---|---|---|
| results_1 | True | WILDCARD | First result to save. Accepts any connected output (text, JSON-like, structured text formats). Enables results_2 once connected. | {'summary': 'job completed', 'metrics': {'loss': 0.12}} |
| results_2 | False | WILDCARD | Additional result to save. Appears after results_1 is connected. Up to 100 results are supported (results_2 ... results_101). | FASTA or PDB text content |
| results_3..results_101 | False | WILDCARD | Optional additional results. Each becomes available after the previous result input is connected. | Additional text outputs, structured text files, or logs |
| folder_path | True | STRING | Destination folder path inside the cloud bucket. Results from multiple runs can be merged here; each run is uniquely identified to avoid overwriting. Supports nested paths using forward slashes (e.g., 'projectA/experiments/run1'). | biotech/my_experiment_1 |
Outputs¶
| Field | Type | Description | Example |
|---|---|---|---|
| url | STRING | Signed URL to a zip file containing all uploaded results for this node’s run within the specified bucket folder. | https://storage.googleapis.com/ |
Important Notes¶
- Folder path must not be empty; the node will raise an error if it is blank.
- Results are grouped and written into a logical folder structure; multiple runs within the same folder_path are uniquely namespaced to avoid conflicts.
- This node returns a signed URL to a zip representing the uploaded folder’s contents, suitable for direct download via an Output node.
- The node is intended as a terminal step in workflows to persist and share outputs externally.
- If user scoping is required, ensure a valid salt_user_id is available in the execution context.
Troubleshooting¶
- Error: 'Please specify non empty folder path' — Provide a non-empty folder_path (avoid using the root of the bucket).
- No URL returned or upload appears incomplete — Verify that connected results contain data and that the execution did not timeout. Re-run with fewer/lighter outputs if necessary.
- Access issues when opening the signed URL — Ensure the URL has not expired and that you copied the full link. Re-run to generate a fresh URL if needed.
- Unexpected file/folder naming — The node auto-resolves name collisions by appending indexes; review the resulting zip structure to locate files.
- Missing expected result inputs — Remember that results_2 becomes available only after results_1 is connected, and so on for subsequent inputs.
Example Pipelines¶