Hi,
I was recently trying to add email and phone fields via the Entity Manager in EspoCRM, but noticed that they were not appearing in the field type dropdown list.
After some digging, I found that this was because these field types have "notCreatable": true defined in their respective metadata JSON files (email.json and phone.json under application/Espo/Resources/metadata/fields).
To make them available in the UI, I created override files at:
custom/Espo/Custom/Resources/metadata/fields/email.json
custom/Espo/Custom/Resources/metadata/fields/phone.json
With the following content:
After clearing cache and rebuilding, the field types are now showing up as expected in the dropdown when adding fields.
Before I proceed further with using this in production, I wanted to ask:
Would appreciate any insights or best practices from others who may have explored or overridden this before.
Thanks!

I was recently trying to add email and phone fields via the Entity Manager in EspoCRM, but noticed that they were not appearing in the field type dropdown list.
After some digging, I found that this was because these field types have "notCreatable": true defined in their respective metadata JSON files (email.json and phone.json under application/Espo/Resources/metadata/fields).
To make them available in the UI, I created override files at:
custom/Espo/Custom/Resources/metadata/fields/email.json
custom/Espo/Custom/Resources/metadata/fields/phone.json
With the following content:
HTML Code:
{ "notCreatable": false }
Before I proceed further with using this in production, I wanted to ask:
- Are there any potential issues or side effects this change could cause down the line?
- Why are these fields not creatable by default — is it due to internal limitations, relationships, or design considerations?
Would appreciate any insights or best practices from others who may have explored or overridden this before.
Thanks!
Comment