IronFlowDocs

zip_list

List all entries in a ZIP archive.

Parameters

pathstringrequired
Path to a ZIP file. Supports ${ctx.key} interpolation.
output_keystringdefault "zip_entries"
Context key where the listing array is stored.
max_entriesnumberdefault IRONFLOW_MAX_ZIP_ENTRIES / 10000
Maximum archive entries listed before failing.
max_total_uncompressed_bytesnumberdefault IRONFLOW_MAX_ZIP_UNCOMPRESSED_BYTES / 536870912
Maximum total uncompressed entry size accepted while listing.

Context Output

  • {output_key} — An array of entries. Each entry has:
    • name — Entry path inside the archive.
    • is_directory — Whether entry is a directory.
    • size — Uncompressed size in bytes.
    • compressed_size — Compressed size in bytes.
    • crc32 — CRC32 checksum.
    • method — Compression method used.
  • {output_key}_count — Number of entries in the archive.
  • zip_list_path — The resolved archive path.
  • zip_list_successtrue when listing completed successfully.

Example

local flow = Flow.new("zip_list_demo")

flow:step("list", nodes.zip_list({
    path = "/tmp/project_files.zip",
    output_key = "entries"
}))

flow:step("log", nodes.log({
    message = "Archive entry count: ${ctx.entries_count}",
    level = "info"
})):depends_on("list")

return flow

Limits

zip_list validates entry count and total uncompressed bytes while reading archive metadata. This protects workflow context from very large listings and catches likely zip-bomb inputs before extraction.

IronFlow documentation

Find the next step

Type a keyword to search the documentation.

to move · Enter to open · Esc to close