create_dashboard
Create or update a saved dashboard for a Bridge Town project. Generates chart HTML from a completed model run output, stores it in S3, and persists a Dashboard record. Requires Editor or Owner access to the project. output_key selects a key from the run’s outputs dict — the same dict your model writes to /outputs/. When a model writes a JSON file such as /outputs/chart_data.json, the run’s outputs dict stores it under the full filename including the extension (e.g.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
project_name | Annotated[str, Field(description='Name of the Bridge Town project.')] | Yes | — | |
dashboard_name | Annotated[str, Field(description='Unique name for this dashboard within the project.')] | Yes | — | |
chart_type | Annotated[str, Field(description='Type of chart to render. Use list_chart_types to see all available types.')] | Yes | — | |
model_run_id | Annotated[str, Field(description='UUID of the successful model run whose output to render.')] | Yes | — | |
output_key | Annotated[str, Field(description="Key in the model run's outputs dict to visualize (e.g. 'revenue_forecast').")] | Yes | — | |
description | `Annotated[str | None, Field(description=‘Optional description displayed below the dashboard title.’)]` | No | None |
subtitle | Annotated[str, Field(description='Optional subtitle displayed below the dashboard title.')] | No | '' | |
currency | Annotated[str, Field(description="Optional ISO 4217 currency code for formatting values (e.g. 'USD', 'EUR'). For data_grid dashboards, applies to columns explicitly typed as 'currency'; plain 'number' columns are not currency-formatted.")] | No | 'USD' |
Returns
Section titled “Returns”Returns a structured object. Top-level fields:
dashboard_id(string)dashboard_name(string)project(string)chart_type(string)model_run_id(string)has_html(boolean)created(boolean)created_at(string)updated_at(string)
See the response example below for the full payload shape.
Example
Section titled “Example”Tool Call
Section titled “Tool Call”{ "name": "create_dashboard", "arguments": { "project_name": "forecasts", "dashboard_name": "Q4 Revenue", "chart_type": "bar", "model_run_id": "66666666-6666-6666-6666-666666666666", "output_key": "quarterly_revenue.json", "description": "Quarterly revenue breakdown", "subtitle": "FY2026", "currency": "USD" }}Response
Section titled “Response”{ "dashboard_id": "77777777-7777-7777-7777-777777777777", "dashboard_name": "Q4 Revenue", "project": "forecasts", "chart_type": "bar", "model_run_id": "66666666-6666-6666-6666-666666666666", "has_html": true, "created": true, "created_at": "2026-04-28T10:00:00+00:00", "updated_at": "2026-04-28T10:00:00+00:00"}- Module:
Dashboards - Requires authentication via API token or Auth0 JWT.