GHL MCP — Cannot update picklist options on contact-model custom fields
A
Ahmed Ibrahim
Issue: No available operation can update the picklistOptions array on a contact-model custom field with dataType: SINGLE_OPTIONS (or likely MULTIPLE_OPTIONS/RADIO/CHECKBOX).
What was tried:
custom-fields.update-custom-field (PUT /custom-fields/{id})
This is the only operation whose documented schema includes an options field for picklist values.
Fails immediately with 400: "Fields with model contact is not supported on this route" whenever the target field's model is contact.
locations.update-custom-field (PUT /locations/{locationId}/customFields/{id})
Does support contact-model fields.
Its only options-array field is textBoxListOptions — intended for TEXTBOX_LIST type fields.
Sending textBoxListOptions against a SINGLE_OPTIONS field returns 200 success, but the change is silently discarded — re-fetching the field via get-custom-fields confirms picklistOptions is unchanged.
Sending picklistOptions directly (matching the GET response's field name) is rejected: 422: "property picklistOptions should not exist".
Net effect: There's no working write path for editing picklist values on a contact custom field. The only workaround is manual editing in the GHL UI.
Suggested fix direction: Either (a) allow custom-fields.update-custom-field to accept model: contact, or (b) make locations.update-custom-field accept picklistOptions (or apply textBoxListOptions to SINGLE_OPTIONS/MULTIPLE_OPTIONS types instead of only TEXTBOX_LIST), and ideally return a validation error rather than a false 200 when the options change isn't actually applied.
Log In