We are planning a managed application for Salesforce platform and there are few things that are hazy.

Lets say if a customer install our managed application in their organization will they be able to see our custom objects and its fields and data?
If yes, how can we hide the objects and its fields from the customer? Because if he is able to see our custom objects, he can directly use these objects using REST API. (The custom objects will be populated after running the business logic)
Also suggest me (if possible) a way to hide the data of our custom objects from the customer organization.



Definitely yes, anyone who will install your managed package, can see the complete schema but with a namespace and they are only allowed to view it not edit. Currently there is no way you can hide your schema.

I would also like to add something here, though the logic backbone is schema but the business logic is not in schema but in triggers, classes etc which is not exposed. So your business logic is definitely safe and you don't have to worry about it.

| improve this answer | |
  • I am aware that business logic will be in triggers and apex classes. However, I do not want the subscriber org to get direct access to the data using REST APIs. I want them to access the data only via our visualforce pages edit: FYI updated the question description. – Nayanjyoti Deka Oct 8 '14 at 12:53
  • @NayanjyotiDeka: According to me customer/client who will use your package should be allowed to access the data from any of the API salesforce provide because data is something which belongs to them and your package should have robust business logic to handle incorrect data to a certain level. Testing some package functionality to its extreme is the customer's choice and if something went wrong it's user faults which can be resolved/fixed by help and support. – Aditi Jain Oct 8 '14 at 13:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.