Last updated

Complex column types and compatibility

New column types, such as MULTI_CONTACT_LIST and MULTI_PICKLIST, offer more complex ways to work with columns. Smartsheet has provided a backwards compatible way for these payloads to work with your existing integrations while also giving you a way to query for their content.

With either column type, there are two ways of receiving the response:

  • If you do nothing to your code, column types will display as TEXT_NUMBER
  • If you use the level query parameter as detailed below, column types will display as MULTI_CONTACT_LIST or MULTI_PICKLIST and return a complex object (aka a non-primitive type)

Smartsheet uses two indicators to help you discover changes in the return data for your API calls:

  • level: a query parameter that is incremented when a new feature or column type is added
  • version: each element in the Columns array is set to one of the following values:
TextMulti-contactMulti-picklist
012

You must use the level query parameter, for example level=2, to return a complex object with the new column type. Without the query parameter, the response will be backwards-compatible, that is a string. The include=objectValue query parameter is necessary to see the return as a complex value, such as actual email addresses rather than display names.

Use the highest possible level for each endpoint, as in the following table:

Endpoint categoryLevel
Dashboards4
Reports3
Sheets2