spade data

The spade data command manages user data files — your own inputs (often large geospatial files) that pipelines reference through the cloud upload blocks. Bytes are stored in Spade's object storage; a catalog row records the file's name, size, type, and owner. A pipeline references an asset by a stable id, so it can be shared and reused without re-uploading.

These commands talk to your Spade cloud account, so they require a spade login session.

Usage🔗

spade data upload <file> [--name <name>] [--visibility <v>]   # upload a file
spade data list [--scope mine|shared|public]                  # list files
spade data download <id> [output]                             # download a file

Uploading🔗

spade data upload streams the file directly to object storage through a pre-signed URL, then records the catalog row:

spade data upload boundary.tif
Uploading boundary.tif (142.3 MB)...
Uploaded. File ID: 019cf4bc-aaaa-7000-0000-000000000000

The printed File ID is the asset_id a pipeline references. Options:

FlagDefaultDescription
--namethe filenameDisplay name shown in listings
--visibilityprivateprivate, shared, or public

The Spade type used to pick the upload block variant (raster/vector/table/file) is defaulted from the file extension when you wire the asset into a pipeline; in the web UI you can override it on the Upload node.

Listing🔗

spade data list
ID                                    Name          Size      Visibility  Created
019cf4bc-aaaa-7000-0000-000000000000  boundary.tif  142.3 MB  private     2026-07-15 14:02

--scope selects which files are shown: mine (default), shared (shared with you), or public.

Downloading🔗

spade data download 019cf4bc-aaaa-7000-0000-000000000000 local.tif

The file streams directly from object storage. If you omit the output path, it is saved under its registered name in the current directory.

Referencing an uploaded file in a pipeline🔗

Uploaded files are consumed by the cloud upload blocks, which run in the cloud only. In the web UI, use the Upload node (see User uploads) — it wires the asset in for you. For a hand-authored cloud pipeline, reference the asset from an upload block:

- id: 019cf4bc-1111-7000-0000-000000000000
  name: cloud.upload_raster
  args:
    asset_id: 019cf4bc-aaaa-7000-0000-000000000000
    object_key: data/<owner>/<file>/boundary.tif

To run a pipeline locally, swap the upload block for data.read pointed at the file on disk (uri: file:///abs/path/boundary.tif).