Saltar al contenido principal

Campos Personalizados

Define campos adicionales para entidades del CRM sin modificar el esquema de la base de datos.

Entidades soportadas

EntidadIdentificador
Contactoscrm_contact
Cuentascrm_account
Dealscrm_deal
Leadscrm_lead

Listar campos

GET /admin/crm/settings/fields

Muestra todos los campos personalizados agrupados por entidad.


Crear campo

POST /admin/crm/settings/fields

CampoRequeridoTipoDescripción
entitystringEntidad (crm_contact, etc.)
keystringIdentificador único (snake_case)
labelstringEtiqueta visible
typenostringTipo de campo (default: text)
requirednoboolCampo obligatorio
help_textnostringTexto de ayuda
optionsnoJSONOpciones para campos select

Tipos de campo: text, textarea, number, select, date, checkbox

Formato de opciones:

[
{"label": "Opción A", "value": "a", "color": "#FF5733"},
{"label": "Opción B", "value": "b", "color": "#33FF57"}
]

Actualizar campo

POST /admin/crm/settings/fields/:id


Reordenar campos

POST /admin/crm/settings/fields/reorder

{
"ids": ["uuid-1", "uuid-2", "uuid-3"]
}

Toggle activo/inactivo

POST /admin/crm/settings/fields/:id/toggle


Eliminar campo

DELETE /admin/crm/settings/fields/:id

Soft-delete (los datos existentes se preservan).


Migrar desde metadata

POST /admin/crm/settings/fields/migrate

Migra campos almacenados en el campo metadata (mapa genérico) a campos personalizados estructurados.