ingest_file_upload
Upload CSV or Excel bytes as a model data source. This tool does not access Google accounts or refresh external sheets.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
model_name | Annotated[str, Field(description='Name of the Bridge Town model.')] | Yes | — | |
source_name | Annotated[str, Field(description='Logical data-source name for query_data.')] | Yes | — | |
filename | Annotated[str, Field(description='Original CSV or Excel filename.')] | Yes | — | |
file_content | Annotated[str, Field(description='Base64-encoded file bytes from a file-read or upload operation.')] | Yes | — | |
workspace_id | `Annotated[str | None, Field(description=WORKSPACE_ID_FIELD_DESCRIPTION)]` | No | None |
ctx | `Context | None` | No | None |
Returns
Section titled “Returns”Returns a structured object. Top-level fields:
model_name(string)source_name(string)source_type(string)data_source_id(string)tables(array<string>)row_count(integer)
See the response example below for the full payload shape.
Example
Section titled “Example”Tool Call
Section titled “Tool Call”{ "name": "ingest_file_upload", "arguments": { "model_name": "forecasts", "source_name": "actuals", "filename": "actuals_2026q1.csv", "file_content": "PEJBU0U2NCBPRiAuY3N2IEZJTEUgQ09OVEVOVD4=" }}Response
Section titled “Response”{ "model_name": "forecasts", "source_name": "actuals", "source_type": "parquet", "data_source_id": "88888888-8888-8888-8888-888888888888", "tables": [ "actuals" ], "row_count": 24}- Module:
Data - Requires authentication via API token or Auth0 JWT.