Lists objects in a Google Cloud Storage bucket, paginating automatically until the max total is reached.
Lists objects in a Google Cloud Storage bucket, paginating automatically until the max total is reached.
When the flow reaches this step, JOrchestrator executes List GCS files against your linked site or an external integration, using the field values you set on General and Design. Downstream steps can read the output payload fields defined for this node.
List GCS files is a action step in the Cloud › Google group. Action steps run in the middle or end of a flow. They perform work on your CMS, call external services, or transform data for the next step.
Typical reasons teams add List GCS files to a flow:
Common patterns on the canvas:
Bucket name and optional prefix; set Per page (API batch) and Max total files; credentials from Node Configuration → Google.
Output includes a files JSON array (bucket, objectKey, filename, size). Wire Process List to files to handle each object downstream — e.g. 1000 total with 100 per page runs 10 API calls in one node.
The designer shows these tabs for this node:
| Tab | Purpose |
|---|---|
| Info | Plain-language description and output payload fields for downstream steps |
| General | Canvas label and read-only node ID |
| AI | Optional assistant to help draft settings from plain language |
| Design | Node-specific configuration fields |
These fields are managed by the designer or runtime — you do not type into them directly:
| Property key | Label | Type | Required | Visible when | Notes |
|---|---|---|---|---|---|
_nodeId | Node ID | node-id | No | — | — |
_payloadFields | Available Fields | payload-panel | No | — | — |
| Property key | Label | Type | Required | Visible when | Notes |
|---|---|---|---|---|---|
label | Label | text | No | — | Node label |
| Property key | Label | Type | Required | Visible when | Notes |
|---|---|---|---|---|---|
bucket | GCS bucket | payload-text | Yes | — | my-bucket |
prefix | Key prefix | payload-text | No | — | uploads/2025/ Optional folder-style prefix to limit results. |
maxKeys | Per page (API batch) | select (100 | 500 | 1000; default: 100) | No | — | Objects requested per cloud API call while paginating. |
maxTotalFiles | Max total files | select (100 | 500 | 1000 | 2500 | 5000 | 10000; default: 1000) | No | — | Total files to collect across pages. Node loops automatically (e.g. 1000 total with 100 per page = 10 API calls). |
delimiter | Delimiter | select (` | /; default: `) | No | — | Use / to group keys into folder prefixes in prefixes[]. |
_listResumeAdvanced | Resume listing (advanced) | toggle (default: false) | No | — | Only needed when listing more objects than Max total files — e.g. chain a second List node using nextContinuationToken from the first. |
continuationToken | Start continuation token | payload-text | No | listShowContinuationToken | {{List GCS.nextContinuationToken}} Resume from a prior nextContinuationToken when isTruncated was true. |
Credentials, API keys, mailers, SMTP, and integration defaults are configured in the CMS plugin under Node Configuration, not per step on this node. Link the flow to a domain before testing CMS-backed fields.
After this step runs, later nodes can reference these fields using placeholders such as {{list_gcs_files.success}}.
| Field key | Type | Description |
|---|---|---|
success | boolean | Whether the operation completed successfully. |
bucket | string | Cloud storage bucket name. |
prefix | string | Text value from this node's output. |
delimiter | string | Text value from this node's output. |
pageSize | number | Objects requested per API call (Per page setting). |
maxTotalFiles | number | Cap on total objects collected across all pages. |
pageCount | number | Number of API list calls made to build files[]. |
count | number | Number of items in the result set. |
files | array | JSON array of listed objects — use Process List with listPath files. |
keys | array | Flat array of object keys from files. |
items | array | Same as files (alias for iterator compatibility). |
prefixes | array | Array of values from this node's output. |
isTruncated | boolean | True when more objects exist beyond maxTotalFiles. |
nextContinuationToken | string | Token to resume listing if isTruncated is true. |
message | string | Human-readable status, error, or result summary. |
files.0.bucket | string | Nested field "files.0.bucket" from this node's output payload. |
files.0.objectKey | string | Nested field "files.0.objectKey" from this node's output payload. |
files.0.filename | string | Nested field "files.0.filename" from this node's output payload. |
files.0.size | number | Nested field "files.0.size" from this node's output payload. |
files.0.lastModified | string | Nested field "files.0.lastModified" from this node's output payload. |
files.0.etag | string | Nested field "files.0.etag" from this node's output payload. |
files.0.contentType | string | Nested field "files.0.contentType" from this node's output payload. |
files.0.storageClass | string | Nested field "files.0.storageClass" from this node's output payload. |
bucket) must be filled before the flow can be saved.Other steps in the same area of the palette:
google-sheets-read) — Cloud › Googlegoogle-retrieve-gcs) — Cloud › Googlegoogle-transcoder) — Cloud › Googlegoogle-upload-gcs) — Cloud › Googlegoogle-sheets-write) — Cloud › Google