After debugging this a bit more and thanks to Rajat's investigation. The problem is the difference between the API using elevated (admin role) and manager using the user role.
Looks like, there is not reason reason why we are using elevated context on the API code (checked into the DB) but removing the elevated may lead to some other broken functionality that worked previously (in general this could affect other cases).
After debugging this a bit more and thanks to Rajat's investigation. The problem is the difference between the API using elevated (admin role) and manager using the user role.
Looks like, there is not reason reason why we are using elevated context on the API code (checked into the DB) but removing the elevated may lead to some other broken functionality that worked previously (in general this could affect other cases).