I need to create a picklist field, that will have an option to add values that are NOT in the original list. The values are coming from a SF form.

  1. If you add the new data today, it is inserted, and shown in reports - but it can NOT be selected in filters and/or bucket values.
  2. This option should also be available from the SF interface

I thought of having a text field, that if there is data there, it should be added to the picklist values, but I am not sure that it's the way.

For example: I have a picklist with name list: John, Jane, Jo

Someone needs to enter a new value: Boby

Boby will NOT be visible, even if I would like to change Boby to something else in the picklist field edit page, I will not see it.

I will need Boby to be added as a valid value.

  • 3
    Be aware that there is a maximum limit of 15000 characters / 1000 entries on a picklist, so if you build a mechanism which allows users to add them you may need to consider housekeeping the data somehow too.
    – Doug B
    May 21, 2013 at 13:44

1 Answer 1


To add additional values to a picklist, you need to use the Metadata API. Take a look at this GitHub project to see how it is possible to access the Metadata API from within Apex. I think you should be able to do an update of the picklist field with new values. Take a look at the documentation on the picklist component

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .