Modify a custom field in ClickUp which uses UUID (dropdown, label etc.)

We got a few questions about how you can dynamically modify a custom field in ClickUp which uses a more complex mapping (UUID). With the Dropdown and Label field in clickup you can not fill in the value itself, but you have to use the UUID of the option.

Explanation

Below we have the output of the ClickUp module “List All Accessible Custom Fields” which shows you a Dropdown field with each possible option to select out of. As you can see, there is an orderindex and an id for each option. The id of the option has to be used when you want to modify or create a task in clickup with this custom field.

For example, updating a task with this custom field would look like:

This would then result in the dropdown menu to change:

Workflow to dynamically modify field

There are 2 ways you can modify this custom field:

  1. You find the value of each option and statically map this in a switch() function for example
  2. You dynamically try to find the correct option and map this

I prefer option 2. which allows a more dynamic system. The workflow would look like this:

  1. Use the clickup API to list all custom fields
  2. Use some functions to find the correct option you are looking for
  3. Add the ID of the custom field option inside of your clickup task

The most important part of this is within the “Set multiple variables”. Basically we have a mapping function in here which;

  • Searches for the dropdown field we want
  • Finds all options the dropdown menu has
  • Then correctly searches for the option we need, and outputs the ID

The first variable is not really used, but just to show you the output of all the options this dropdown field has. The second variable selectOption is the one you would use to dynamically map the option you are looking for:

{{get(map(get(map(4.array; "type_config.options"; "id"; "a51ca7a9-98f2-431e-9c38-05502c06b385"); 1); "id"; "name"; "Testing"); 1)}}

In here there are 2 important parts; the ID of the dropdown menu you want to use “a51ca7a9-98f2-431e-9c38-05502c06b385” and the option you are looking for “Testing”.

Now the last step is to use this output variable in an Edit task for example and voila, you are now dynamically searching for the ID of an option.

Hope this helps you getting started!
Feel free to message us if you have any questions or issues.


Drivn Agency

5 Likes

Heya @Bjorn.drivn :wave:

Woah! This advice is so awesome and helpful. Thank you so much for sharing it with us. :pray:

I love to see Makers cooperating and advising each other while using the product.

Keep up the great work!

2 Likes

Thank you for this @Bjorn.drivn! Exactly what I’m looking for. I’m new here in make and I’m curious what’s in each modules of Screenshot 2023-07-18 at 13.33.03.

Specifically List All Accessible Custom Fields and Array aggregator modules? Would you be able to show them?

Much appreciated

4 Likes

Hey there @Bjorn.drivn , thanks so much for looking out for to the answers the community is looking for and for creating this super helpful guide on ClickUp custom fields. :clap:

Your dedication is incredibly inspiring and 100% appreciated :star:

2 Likes

Hi @jbuna ,

In the “List All Accessible Custom Fields” you select the list within ClickUp you want to get all custom fields from. Then within the Aggregator you select which fields you want to aggregate into the final array.
In this case the following will provide you all the details you need:

1 Like

This was very helpful, TY!. I am wondering what If we have multiple options on the dropdown, and, what if we have multiple dropdowns?. I need help

Hi @Dustin , feel free to open up a new topic in the Questions & Answers - Make Community category. Happy to help you there if you provide some more information

2 Likes

How would I structure this if I needed to input UUIDs for a multi-select/labels field in clickup that are received from a multi-select field with the same options from a form?

1 Like

I’m looking for the same thing as Sasha! @Bjorn.drivn how would this work?

I cannot get this to work for the life of me. Here’s my setup.

Here’s the variables

I have it actually working on another custom field. I copy and pasted everything, changed the id and the filter and it doesn’t work. I feel like my syntax for “Under $100k” needs to be modified or something.

@BenjaminTL / @Sasha_Czerniawski If you haven’t solved this yet, can you be a bit more specific and also provide some screenshots etc. Would help a lot :wink:

1 Like

@DitkaOrGod Seems like you are also adding a Status in the task which is not there ?

2 Likes

I wanted to come and add a little more context for those trying to map labels too.

To map labels you need a few things

  1. Update the word “name” with label, since that is how the values are returned from “list all custom fields”
  2. when you pass in your “testing” value, it must be a comma separated string.
  3. For me I had a variable from my app that came over as a CSS, so it was easy, the other was an array, so I just had to add a join(“testing”;,)
  4. Both of these cases return an array. When saving a label in clickup you can pass in the array that was returned! No transforming needed

1 Like