Skip to content

create_output_sheet_view

Create a read-only, immutable native sheet from one tabular output of a successful model run, and commit it. Accepts a list-of-dict (records) output or an ordered {columns: [

, …], rows: [[…], …]} table. Rows may be [] for a blank spacer row, but must otherwise match columns exactly (ragged rows and duplicate column names are rejected).

NameTypeRequiredDefaultDescription
model_nameAnnotated[str, Field(description='Name of the Bridge Town model that owns the run.')]Yes
run_idAnnotated[str, Field(description='UUID (or unique prefix) of the completed model run to create the sheet view from.')]Yes
output_nameAnnotated[str, Field(description="Name of the run output to render as a sheet -- must resolve to a list-of-dict table or a {columns: [...], rows: [[...]]} table. Resolves with or without a trailing '.json' when unambiguous. Use get_run to inspect available output names.", min_length=1)]Yes
name`Annotated[strNone, Field(description=“Display name for the sheet view. Defaults to ‘<output_name> (run )’ when omitted.”, max_length=MAX_SHEET_NAME_LENGTH)]`NoNone
tab_nameAnnotated[str, Field(description="Name of the sheet's single tab.", min_length=1, max_length=MAX_TAB_NAME_LENGTH)]No'Output'
column_hints`Annotated[list[ColumnFormatHint]None, Field(description=“Per-column presentation hints, at most one per column: type is text/number/currency/percent/date/multiple (mirrors create_dashboard_from_run’s data_grid vocabulary plus percent/multiple), decimals is optional. Columns with no hint still get a safe numeric default. Presentation only — values are never changed.”)]`NoNone
emphasize_rows`Annotated[list[int]None, Field(description=‘0-based data-row indices (header row excluded) to bold-emphasize, e.g. subtotal/total rows.’)]`NoNone
frozen_label_columnAnnotated[bool, Field(description='Freeze the first column, in addition to the header row.')]NoFalse
row_formats`Annotated[list[RowFormatHint]None, Field(description=“Per-row presentation hints, keyed by the exact value of the row’s first column (its label) rather than a positional index — applies to every row whose first column matches. type/decimals mirror column_hints; bold styles the row, e.g. a subtotal/total row. Wins over column_hints for a matched row. Presentation only — values are never changed.”)]`NoNone
branch`Annotated[strNone, Field(description=“Branch to commit the sheet view to. Defaults to the run’s branch.”)]`NoNone
commit_messageAnnotated[str, Field(description='Git commit message. If omitted, the server generates a default message.')]No''
workspace_id`Annotated[strNone, Field(description=WORKSPACE_ID_FIELD_DESCRIPTION)]`NoNone

Returns a structured object. Top-level fields:

  • model_name (string)
  • sheet_id (string)
  • name (string)
  • purpose (string)
  • run_id (string)
  • run_branch (string)
  • run_commit_sha (string)
  • output_name (string)
  • branch (string)
  • commit_sha (string)
  • sha (string)
  • tab_id (string)
  • tab_count (integer)
  • row_count (integer)
  • column_count (integer)
  • data_hash (string)
  • presentation_hash (null)
  • presentation_profile (null)
  • profile_version (null)
  • generated_at (string)
  • calculation_status (string)

See the response example below for the full payload shape.

{
"name": "create_output_sheet_view",
"arguments": {
"model_name": "forecasts",
"run_id": "66666666-6666-6666-6666-666666666666",
"output_name": "revenue_by_quarter"
}
}
{
"model_name": "forecasts",
"sheet_id": "sht_7890a1b2c3d4e5f67890a1b2c3d4e5f6",
"name": "revenue_by_quarter (run 66666666)",
"purpose": "output",
"run_id": "66666666-6666-6666-6666-666666666666",
"run_branch": "main",
"run_commit_sha": "abc1234def5678901234567890abcdef12345678",
"output_name": "revenue_by_quarter",
"branch": "main",
"commit_sha": "abc1234def5678901234567890abcdef12345678",
"sha": "abc1234def5678901234567890abcdef12345678",
"tab_id": "tab_890a1b2c3d4e5f67890a1b2c3d4e5f67",
"tab_count": 1,
"row_count": 5,
"column_count": 3,
"data_hash": "9f2b1c4d5e6f7890a1b2c3d4e5f678901a2b3c4d5e6f7890a1b2c3d4e5f6789",
"presentation_hash": null,
"presentation_profile": null,
"profile_version": null,
"generated_at": "2026-04-28T10:00:00+00:00",
"calculation_status": "clean"
}
  • Module: Native Sheets
  • Requires authentication via API token or Auth0 JWT.