Opportunity.ContractId are FLS invisible for the standard profile "System Administrator".
Both fields are visible in the setup and are reported by describe calls in Apex classes having "without sharing".
However using the API, FLS seems to be enforced. So the fields are:
- not visible in eclipse schema.xml (plugin v31)
- not accessible in Developer Console (Query Editor Tab, it uses v32 soap api under the hood)
- not accessible for executeAnonymous invoked via toolingApi (v32)
It boils down to something like: The UI and apex have access to these fields - but the API doesn't.
Is this behavior on purpose? Shouldn't FLS accessibility of fields be consistent all over Apex/UI/API?
This question is a spinoff from this one: Standard field accessiblity inconsistent : feature or simply strange?