I have an Alteryx designer reading in tasks from multiple smartsheet schedules that have a responsibles column with multiple contacts. I want to rewrite those contacts into the one schedule I am writing to, but when the contact is read in, it is converted to TEXT_NUMBER and Alteryx won't let me write to the Multi Contact List column in smartsheet. How can I get and keep the contacts as a objectValue so that I can write them back into the final sheet as contacts instead of TEXT_NUMBERS through alteryx? I want smartsheet to recognize the input as multiple contacts in one cell as well.
Your problem is a Smartsheet API problem not an Alteryx problem. Figure out how to do what you want in Smartsheet via the Smartsheet API. Figure out the payload that you need. Recreate that payload in Alteryx.
I need Alteryx to write to smartsheet as an "objectValue" instead of a String type to assign responsibles, but not sure how to convert the data to that in alteryx
can you link to the documentation? I think you are confusing Alteryx field types and API payload types. For your API you can include a content-type of objectValue in your download tool. This is probably a specifically formatted JSON object. You can build this in Alteryx - and in Alteryx it will read as a string type. SmartSheet will know it is an objectValue because you are including that in your content type in your API header. It will parse it if you have formatted it correctly. Get this to work in Postman -then rebuild your logic in Alteryx.
So a few more things: ask here: https://community.smartsheet.com/categories/api-developers
if you are asking about this:
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:
Smartsheet uses two indicators to help you discover changes in the return data for your API calls:
0 | 1 | 2 |
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 category LevelDashboards | 4 |
Reports | 3 |
Sheets | 2 |
what you are trying to do is use a filter to determine the return value.
User | Count |
---|---|
107 | |
82 | |
70 | |
54 | |
40 |