Smartsheet connector reference

This page contains reference documentation for the managed Smartsheet connector in Lakeflow Connect.

Type mapping

The Smartsheet connector maps Smartsheet column types to Spark types during ingestion. The following table describes the mapping for each supported column type.

Smartsheet column type Spark target type Logic / transformation behavior
TEXT_NUMBER STRING Always mapped to STRING.
DATE DATE ISO-8601 formatted date string from the Smartsheet API.
DATETIME TIMESTAMP UTC timestamp from the Smartsheet API.
CHECKBOX BOOLEAN Maps true to true and false to false.
CONTACT_LIST STRUCT<name: STRING, email: STRING> name and email are extracted from the contact object value.
MULTI_CONTACT_LIST ARRAY<STRUCT<name: STRING, email: STRING>> Each contact in the list is extracted as a struct.
PICKLIST (Drop-down) STRING The display value of the selected option is ingested.
MULTI_PICKLIST ARRAY<STRING> Each selected option is ingested as an element in the array.
DURATION STRING Human-readable format (for example, 3d 4h) is preserved as a string.
PREDECESSOR STRING Task dependency representation is preserved as a string.
AUTO_NUMBER STRING System-generated auto-incrementing row label. Read-only.
ABSTRACT_DATETIME TIMESTAMP Used for system columns (for example, Created At). UTC-based.
CREATED_DATE / MODIFIED_DATE TIMESTAMP Used for system columns such as Created At. UTC-based.
CREATED_BY / MODIFIED_BY STRUCT<name: STRING, email: STRING> Row-level audit metadata. UTC-based.
Formulas [Derived] The evaluated display value is ingested and cast to the column's declared target type. Formula strings (for example, =SUM(...)) are never ingested.

Pipeline configuration parameters

The following tables describe all available parameters for configuring a Smartsheet ingestion pipeline.

Connection parameters

Parameter Required Description
connection_name Yes Name of the Unity Catalog connection for Smartsheet.

Source parameters

Parameter Required Description
source_schema Yes Always "default".
source_table Yes The 16-digit Smartsheet sheet or report ID.

Destination parameters

Parameter Required Description
destination_catalog Yes Target Unity Catalog catalog.
destination_schema Yes Target schema within the catalog.
destination_table No Target table name. Defaults to the Smartsheet sheet or report ID.

table_configuration options

Parameter Required Default Description
row_filter No All rows DBSQL filter expression for selective row ingestion. See Row filtering.
include_columns No All columns List of column names to include in the ingested table. If specified, only the listed columns are ingested.
exclude_columns No None List of column names to exclude from the ingested table. Cannot be used together with include_columns.

connector_options

Parameter Required Description
enforce_schema No When true (default), maps columns to their Smartsheet-declared types; non-conforming cells are set to NULL. When false, all columns are ingested as STRING.

enforce_schema behavior

The enforce_schema option controls how the connector maps Smartsheet column types to Spark types during ingestion. It is set in connector_options and defaults to true.

  • enforce_schema: true (default) — Each column is mapped to its Smartsheet-declared type according to the type mapping table above. Cells that do not conform to the declared type are set to NULL rather than causing the pipeline to fail. Use this setting for sheets with consistent, well-typed data.

  • enforce_schema: false — All columns are ingested as STRING, regardless of their declared Smartsheet type. Use this setting for sheets with irregular data, frequently overridden column types, or when downstream systems handle type casting.

    "connector_options": {
      "enforce_schema": false
    }
    

Row filtering

Use the row_filter option in table_configuration to ingest a subset of rows from a sheet or report. Rows are referenced by row_number (1-based) or by any column value using the column's Smartsheet title.

Supported operators: =, !=, <, <=, >, >=, AND, OR, IN, BETWEEN, LIKE

For more information, see Row filtering.