Search
Documentation

← Content types

Charts

Place data-driven native charts into your PowerPoint slides. The template owns the chart type and styling; your fill supplies the data.

How charts work

When Slidura scans a template, any existing chart shape becomes a chart field in the catalog. The catalog records the chart type (bar, line, pie, …), the number of series, and the category labels — the shape signature. Your fill provides new categories and series values; the build patches the chart’s data caches and embedded workbook in-place without touching the template’s colours, data labels, or number formats.

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

Editing chart data

The web UI uses a shared data-grid editor: categories form the rows, series form the columns. You can add or remove rows and series with the + row / + series controls, edit values directly in the grid, or paste a spreadsheet selection into the bulk-import escape hatch.

For existing template charts the annotation form shows the shape signature read-only (series count, category labels) and lets you set the data contract: whether the series count is fixed to the template or variable, per-series labels, and the value kind (number, percent, currency, integer).

Placing a chart in a fill

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

{ "chart_1": "@chart:<id>" }

Agents can also supply data inline without a stored asset:

{ "chart_1": { "$chart": { "categories": ["Q1","Q2","Q3"], "series": [{ "name": "Revenue", "values": [120, 145, 160] }] } } }

The inline path accepts JSON, CSV, or TSV — the engine sniffs the format automatically.

Series count

By default the series count is fixed to the number of series the template chart was designed with, so its authored per-series colours and labels are preserved. Setting the contract to variable allows adding or removing series, but extra series receive default styling and the build will record a warning in the build output.

API and MCP

SurfaceDetails
RESTPOST /api/v1/charts, GET /api/v1/charts/{id}, PUT /api/v1/charts/{id}, DELETE /api/v1/charts/{id}
MCP toolscreate_chart, list_charts, get_chart

create_chart and POST /api/v1/charts accept the same JSON payload (categories, series, optional chart type, value kind). The response includes the build_ref field with the @chart:<id> sentinel ready to drop into a fill.