← Node guide
Utility

Convert to File

Turns a value an earlier step produced into a file you can download from the run.

file.convert
The piece

Turn an upstream value into a file you can download from the run — a UI dump as CSV, a log capture as text, device info as JSON — or decode a base64 string back into the file it came from.

Reach for it when

  • A QA report that should be a download rather than a copy-paste out of the run panel.
  • Attaching the UI dump or the log capture to a notification.
Convert to File
Idle
In the bag

Every setting this block has. A field marked only when appears once you have chosen the mode above it — those are alternatives to each other, not extra things to fill in.

  • Convert to
    starts at CSV
    CSVJSONText fileHTML tableFile from base64
  • SourceRequired
    starts at —

    The value to convert — drop a field from the data panel (e.g. {{ $Dump UI.json.elements }}). CSV and HTML want a list of objects (one row each); JSON and Text take anything; base64 wants the encoded string.

  • File name
    starts at —

    Leave blank for data.csv / data.json / data.txt / data.html / file.bin.

  • Delimiter
    starts at ,

    Field separator. Use ; where a spreadsheet reads , as the decimal mark (most of Europe), or \t for tab-separated.

    only when Convert to = CSV

  • Header row
    starts at on

    Write the column names as the first row.

    only when Convert to = CSV or HTML table

  • Pretty-print
    starts at on

    Indent the JSON so it reads well. Off = one dense line (smaller file).

    only when Convert to = JSON

  • MIME type
    starts at —

    What the decoded bytes are, e.g. image/png. Blank → guessed from the file name, else application/octet-stream.

    only when Convert to = File from base64

Build it
  1. Pick a format and point at the value

    CSV and HTML want a list of objects — one row each. JSON and Text take anything. “File from base64” goes the other way: it decodes a string back into the file it came from.

    Convert to FileSettings
    Convert to
    CSV
    SourceRequired
    {{ $Dump UI.json.elements }}
    File nameBlank → data.csv
    —
  2. Set the details the format needs

    Use ; as the delimiter where a spreadsheet reads , as the decimal mark, or \t for tab-separated. The options that do not apply to the chosen format are not shown.

    ui-dump.csv
    selector,label,clickable
    id/search,Search,true
    text/Add to cart,Add to cart,true
    id/qty,Quantity,false

    downloadable from the run, and attachable

  3. Attach it to whatever reports the result

    “Attach files made by this run” on the notify blocks picks up anything this step produced.

    Convert to File
    Send Email
    Send to Discord
What comes out
  • A file stored with the run, next to its screenshots, and expiring with it.
Watch out
  • A list of plain strings still makes a CSV — one column, called value. A single string or number is not a table at all, and the step fails saying to use Text file or JSON instead.
  • The file expires when the run's data does. It is an artifact of a run, not a document store.
Usually next to