We are using Lightning Sync to sync our user’s calendars to Salesforce. This creates events in Salesforce. A couple of weeks ago we noticed that certain calendar events stopped syncing. With the help of SF support we traced the problem to a trigger from the Zoom app. The trigger is trying to query the Lead object. I was able to apply a quick fix for some of our users with Salesforce licenses by granting Read access on the Lead object, but we have some user licenses that do not support access to Leads, so this is still broken for them and generating errors in our Salesforce org.
We are not using the Lead object in our Salesforce org at all, so there is nothing for the Zoom app to query there.
Error
zoom_app.ZoomMeetingCreationTrigger : zoom_app.ZoomMeetingCreationTrigger: execution of AfterInsert caused by: System.QueryException: sObject type ‘lead’ is not supported. If you are attempting to use a custom object, be sure to append the ‘__c’ after the entity name.
Which App?
Salesforce Zoom App
How To Reproduce (If applicable)
Install Zoom app for Salesforce
Enable Lightning/Outlook Sync in Salesforce
Notice that the users calendars are missing many events
Yes that is the issue. As I mentioned above, we have a large subset of users who are under a license type that does not support access to Leads. This didn’t matter until just a couple of weeks ago when the trigger starting generating errors. Salesforce made a change in their last release that looks a lot closer at CRUD permissions when it comes to Apex classes, which I’m guessing is when this started.
I don’t mean to presume but my impression is that there is logic in the trigger that could be offloaded to a trigger handler class. Trigger handler classes can be designated “without sharing” which means they would not be dependent upon the CRUD permissions of the logged in user.
Of course I do not have access to the code so could be completely wrong, but that is my impression of what might be causing the error.
Thanks for sharing these details. As this was a Salesforce change I am not sure how much we can do here, but let me see if we can improve the error messaging or flow.
Some user licenses do not support access to Leads. Did you mean that the salesforce profile doesn’t have lead read access and when you add that permission, you still can not assign lead access?
The license type we are using is called Lightning Platform Starter, which does not support access to Leads.
We do not have enough regular licenses for all our users and cannot afford to purchase them. (they are a LOT more expensive)
For now I have disabled the Zoom app because we have functionality that relies on the event data. I’m hoping we can work this out - it would be a shame for this to prevent us from using the app when we aren’t even using Leads.