Digital Assets
Digital Assets is Rival’s built-in cloud file storage. It gives you a place to host files - datasets, configuration, model weights, topic files, or any other resource - and reference them directly inside your tool code without bundling the data into the tool itself.
You can find Digital Assets in your Dashboard.
Why it exists
Tool code on Rival is lean by design. There is no mechanism to include large files inside a tool’s handler package, and you would not want to - bundling a 200 MB dataset into your code creates maintenance headaches and slows things down.
Digital Assets solves this by giving you a stable, cloud-hosted location for files that your tools need to access at runtime. Upload once, reference anywhere.
It is also the right place to store topic files for Storm tools, which define the taxonomy that Storm uses to tag incoming content.
What you can store
Digital Assets supports files and folders up to 500 MB each. There are no restrictions on file type - upload CSVs, JSON files, text files, binary data, or anything else your tool needs.
Each asset has three properties:
- Name - a human-readable label you give the file or folder
- Description - optional notes about what the asset contains or how it is used
- Visibility - either Public or Private
Public vs. Private visibility
Public assets are accessible to anyone with the file path. Use Public visibility for reference data, example inputs, or any resource you are comfortable sharing openly.
Private assets are accessible only within your organization. Use Private visibility for proprietary datasets, credentials files, or anything that should not be visible outside your workspace.
Visibility can be changed at any time from the asset’s settings in Dashboard.
Using an asset in your tool
Step 1: Upload the file
From the Digital Assets section in Dashboard, upload your file or folder. Give it a name and choose its visibility.
Step 2: Copy the file path
Once uploaded, each asset has a stable file path you can copy from the dashboard. This path is how your tool code references the file at runtime.
Step 3: Reference it in your handler
Use the file path in your tool code wherever you need to read the asset. The path works the same way across Python, JavaScript, and Lua runtimes.
# Example: reading a CSV asset in a Python toolimport csv
def cortexone_handler(event, context): with open("/assets/my-dataset.csv", "r") as f: reader = csv.DictReader(f) rows = list(reader) return {"statusCode": 200, "body": {"rows": rows}}The exact path format for your asset is shown in the Dashboard - copy it directly rather than constructing it manually.
Managing assets
From the Digital Assets section in Dashboard you can:
- Upload new files or folders
- Update the name, description, or visibility of an existing asset
- Download an asset
- Delete an asset
Deleting an asset that is actively referenced in a published tool will cause those tool executions to fail. Check your tools before removing files they depend on.