Rich display rendering
Orvanta processes outputs from scripts or flows intelligently to provide rich display rendering, allowing customization of result display formats.
By default, results display in JSON format. Some formats are recognized automatically (like Rich Table Display), while others can be forced through code using specific keys.
Supported rich display types
Section titled “Supported rich display types”Results as single-key objects can leverage these formats:
| Type | Purpose | Example |
|---|---|---|
| table-col | Column-wise table rendering | { "table-col": { "foo": [42, 8], "bar": [38, 12] } } |
| table-row | Row-wise table rendering | { "table-row": [ [ "foo", "bar" ], [ 42, 38 ], [ 8, 12 ] ] } |
| table-row-object | Row-wise table with object rows | { "table-row-object": [ { "foo": 42, "bar": 38 }, ... ] } |
| s3 | S3 file download and bucket explorer | { "s3": "path_to_file"} |
| html | HTML rendering | { "html": "<div>...</div>" } |
| markdown/md | Markdown rendering | { "markdown": "## Hello World" } |
| file | File download option | { "file": { "content": encode(file), "filename": "data.txt" } } |
| PDF document display | { "pdf": base64Pdf } | |
| png | PNG image display | { "png": base64Image } |
| jpeg | JPEG image display | { "jpeg": base64Image } |
| gif | GIF animation display | { "gif": base64Image } |
| svg | SVG image rendering | { "svg": "<svg>...</svg>" } |
| error | Error message display | { "error": { "name": "418", "message": "...", "stack": "..." }} |
| resume | Approval with Resume/Cancel buttons | { "resume": "url", "cancel": "url", "approvalPage": "url" } |
| map | Map with location markers | { "map": { lat: 40, lon: 0, zoom: 3, markers: [...] }} |
| render_all | Display multiple results with formats | { "render_all": [ { "json": {...} }, { "table-col": {...} } ] } |
Tables
Section titled “Tables”Rich table display
Section titled “Rich table display”Automatically renders results as interactive tables when the result is an array of objects. No specific key required for scripts or flows.
Column order can be forced by including an array of column names as the first element.
Table column
Section titled “Table column”Returns values as column-wise tables. Format is automatically detected even without the explicit table-col key.
Table row
Section titled “Table row”Returns values as row-wise tables with format: nested arrays where first row contains headers.
Table row object
Section titled “Table row object”Returns row-wise tables where each row is an object. Optionally include an array of strings as the first element to enforce column ordering.
Media & content types
Section titled “Media & content types”S3: Renders downloadable S3 files with bucket explorer when workspace is connected to S3 storage. Supports infinite-size files with paginated preview.
HTML & Markdown: Direct rendering of markup content.
Images: PNG, JPEG, and GIF formats require base64 encoding. Can include content in nested object or directly.
PDF: Requires base64-encoded PDF data.
SVG: Direct SVG markup rendering.
File: Generic file download with content encoding and filename.
Special types
Section titled “Special types”Error: Display custom error messages with name, message, and stack trace.
Resume: Enables approval workflows with configurable Resume and Cancel actions.
Map: Interactive map display with latitude, longitude, zoom level, and customizable markers (supporting color, radius, stroke properties).
Render all: Display multiple formatted results simultaneously in a single output.