Location Custom Fields
Define custom data fields at the location level. These field definitions are used across contacts, opportunities, and other objects within the sub-account.
Custom fields extend GHL’s data model to fit any business. A plumber needs “service type” and “property age.” A realtor needs “budget range” and “bedroom count.” Custom fields are defined at the location level and then populated per contact or opportunity. Managing field definitions through MCP means you can standardize data structures across client locations during onboarding.
What This MCP Tool Does
CRUD on custom field definitions within a location. Create field definitions with types and options, list all defined fields, update field configurations, and delete fields. These definitions determine what custom data can be stored on contacts and other objects.
Endpoint Reference
List fields: GET /locations/{locationId}/customFields
Create a field: POST /locations/{locationId}/customFields
Update a field: PUT /locations/{locationId}/customFields/{fieldId}
Delete a field: DELETE /locations/{locationId}/customFields/{fieldId}
Authentication
Requires a Private Integration Token (PIT) with the locations scope enabled.
Key Parameters
name— field display namedataType— field type (TEXT, TEXTAREA, NUMBER, DATE, MONETARY, SINGLE_OPTIONS, MULTIPLE_OPTIONS, CHECKBOX, FILE_UPLOAD)options— for dropdown/multi-select fields, array of selectable valuesplaceholder— hint text for the fieldposition— display ordermodel— which object the field applies to (contact, opportunity, etc.)
Important Notes
Field IDs generated here are what you use in Contact Fields when reading or writing custom field values on individual records. The field ID, not the field name, is the identifier.
Deleting a custom field removes the field definition and all values stored in that field across every record. This is destructive and irreversible.
For agency onboarding, create a standard set of custom fields per industry. Home services gets service type, property type, urgency. Real estate gets budget range, property type, timeline. Define these once in code and deploy to every new location.
Common Questions
Can I create the same fields across multiple locations? Yes, but each location gets its own field IDs even if the names are identical. Build a field provisioning script that creates your standard fields on each new location.
What field types are available? Text, textarea, number, date, monetary, single-select dropdown, multi-select, checkbox, and file upload.
Can I reorder fields?
Yes. Update the position value on each field to control display order.
Related MCP Tools
- Contact Fields — Read/write values on these field definitions
- Location Custom Values — Reusable variables (different from fields)
- Custom Fields V2 — Advanced field management with enhanced capabilities
- Field Folders — Organize fields into groups
- Location CRUD — The location these fields belong to