List Objects

gcs.list_objects
ActionGoogle Cloudconnection required

Calls the GCS JSON API GET /b/{bucket}/o.

List objects in a Google Cloud Storage bucket.

Connection

Required
Yes — the node will not save without one
Auth type
OAuth 2.0
Providers
Google Cloud Storage
Secret shape
{"client_id", "client_secret", "refresh_token"}
Config it needs
bucket
Resolved by
config.connection_id, else node.connection_id

Configuration

4 fields, none required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
bucket
Bucket name (overrides connection). Supports {{ }}.
stringNo———
prefix
Object name prefix filter.
stringNo———
max_results
How many objects to return in total. GCS pages at 1000, so a larger budget follows nextPageToken until it is met.
numberNo100≥ 1—
page_token
Resume from a previous run's next_page_token.
stringNo———

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "max_results": 100
}

Output

One shape.

result

FieldTypeExample
objects
array—
objects[].name
Full object key.
string—
objects[].size
Size in bytes.
number—
objects[].content_type
string—
objects[].updated
Last modification time.
string—
objects[].generation
Object version; pin it to fetch exactly what was listed.
string—
objects[].metageneration
Metadata version, bumped by a metadata-only change.
string—
objects[].md5
Base64 MD5 of the content (absent for composite objects).
string—
objects[].crc32c
Base64 CRC32C of the content; always present.
string—
objects[].etag
string—
objects[].storage_class
STANDARD / NEARLINE / COLDLINE / ARCHIVE.
string—
objects[].created
When the object version was created.
string—
objects[].storage_class_updated
When the storage class last changed.
string—
objects[].media_link
Authenticated download URL.
string—
objects[].self_link
string—
objects[].content_encoding
Stored Content-Encoding, e.g. gzip.
string—
objects[].content_disposition
Stored Content-Disposition.
string—
objects[].cache_control
Stored Cache-Control.
string—
objects[].kms_key_name
Customer-managed encryption key, when one is used.
string—
objects[].temporary_hold
True while a temporary hold blocks deletion.
boolean—
objects[].event_based_hold
True while an event-based hold blocks deletion.
boolean—
objects[].retention_expiration
When retention stops blocking deletion.
string—
objects[].custom_time
User-set timestamp used by lifecycle rules.
string—
objects[].metadata
The user-defined key/value map stamped on the object.
object—
count
How many items this step returned.
number—
truncated
True when the budget ran out with more items behind it.
boolean—
next_page_token
Resume token for the next run; empty once the listing is complete.
string—
{
  "count": 0,
  "next_page_token": "",
  "objects": [
    {
      "cache_control": "",
      "content_disposition": "",
      "content_encoding": "",
      "content_type": "",
      "crc32c": "",
      "created": "",
      "custom_time": "",
      "etag": "",
      "event_based_hold": false,
      "generation": "",
      "kms_key_name": "",
      "md5": "",
      "media_link": "",
      "metadata": {},
      "metageneration": "",
      "name": "",
      "retention_expiration": "",
      "self_link": "",
      "size": 0,
      "storage_class": "",
      "storage_class_updated": "",
      "temporary_hold": false,
      "updated": ""
    }
  ],
  "truncated": false
}

Notes

  • GCS lists lexicographically by object name, never by updated. To find the newest uploads, list the whole prefix and sort — the first page is not the most recent page.

See List Objects run in a workflow.

In a technical demo we add the Google Cloud Storage connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.