I'm using version 7.5 on Elastic Cloud, and I've created a new user & role, to use instead of global admin "elastic" account, setting the permissions to read from the desired indexes.
If that non-admin user access Kibana > Discovery BEFORE the admin "elastic" user, that error is triggered. Once the "elastic" user access Kibana > Discovery, the error goes away. This happens every 24h hours.
I assume that some action is performed when accessing Discovery after a while, and the normal user doesn't have enough permissions to perform it, but I can't figure out what is it.
I've also seen this error was reported here: Error fetching fields, but the solution doesn't make much sense to me.