The Open API specification for Synapse is now available for download!

Download Open API Spec



A column model contains the metadata of a single column of a table or view.

Field Type Description
name STRING The display name of the column
columnType ColumnType The column type determines the type of data that can be stored in a column. Switching between types (using a transaction with TableUpdateTransactionRequest in the "changes" list) is generally allowed except for switching to "_LIST" suffixed types. In such cases, a new column must be created and data must be copied over manually
facetType FacetType Set to one of the enumerated values to indicate a column should be treated as a facet
id STRING The immutable ID issued to new columns
defaultValue STRING The default value for this column. Columns of type ENTITYID, FILEHANDLEID, USERID, and LARGETEXT are not allowed to have default values.
maximumSize INTEGER A parameter for columnTypes with a maximum size. For example, ColumnType.STRINGs have a default maximum size of 50 characters, but can be set to a maximumSize of 1 to 1000 characters. For columnType of STRING_LIST, this limits the size of individual string elements in the list
maximumListLength INTEGER Required if using a columnType with a "_LIST" suffix. Describes the maximum number of values that will appear in that list. Value range 1-100 inclusive. Default 100
enumValues ARRAY<STRING> Columns of type STRING can be constrained to an enumeration values set on this list. The maximum number of entries for an enum is 100
jsonSubColumns ARRAY<JsonSubColumnModel> For column of type JSON that represents the combination of multiple sub-columns, this property is used to define each sub-column.