Search
Documentation

← Content types

Tables

Place tabular data into PowerPoint tables. The template owns the table style and banding; your fill drives the row and column count.

How tables work

When Slidura scans a template, any existing table shape becomes a table field in the catalog. The catalog records the current row count, column count, and the table style ID. At build time the engine reshapes the template table — adding or removing rows and columns to match your data — then writes cell content. The table’s style, banding, and header formatting are never touched, so the output stays on-brand regardless of how many rows your data has.

Tables you author yourself are stored as reusable assets and referenced by the sentinel @table:<id>.

Authoring formats

The engine accepts four input formats and sniffs the format automatically:

  • CSV / TSV — paste a spreadsheet selection; first row becomes the header.
  • JSON list-of-lists[["Header A","Header B"],[1,2]]; or list-of-objects [{"col":"val"}] for named columns.
  • Markdown — GFM pipe tables; the alignment row (:--, :--:, --:) sets column alignment.
  • IR JSON — the direct TableSpec object; the preferred form for agents.

Individual cells support bold, italic, alignment, colour, cell fill, and a number_format display string (e.g. "#,##0.00", "0.0%"). Cells can also embed an icon glyph or a unicode-block sparkline.

Editing in the web UI

The web UI uses a shared data-grid editor: rows and columns are editable in-place, with + row / + column controls and a paste-to-import escape hatch for CSV, JSON, or Markdown bulk entry.

Placing a table in a fill

Set the value of a table field to the sentinel for a stored table:

{ "table_1": "@table:<id>" }

Agents can also supply data inline:

{ "table_1": { "$table": { "rows": [ { "cells": [{"text":"A"},{"text":"B"}] } ] } } }

The inline path accepts any supported format.

Scope

Tables are basic rows and columns: plain text cells with optional formatting. There are no live formulas, pivot aggregations, or merged-cell authoring in the grid editor (merged cells are supported in the IR for agents constructing TableSpec directly).

API and MCP

SurfaceDetails
RESTPOST /api/v1/tables, GET /api/v1/tables/{id}, PUT /api/v1/tables/{id}, DELETE /api/v1/tables/{id}
MCP toolscreate_table, list_tables, get_table

create_table and POST /api/v1/tables accept CSV, JSON, Markdown, or IR JSON via the source_format parameter. The response includes the build_ref field with the @table:<id> sentinel.