I have a visualforce page that I have linked to a public salesforce site.

The page contains a form intended to allow the user to create a standard object (Campaign to be specific).

My issue is that the save button disappears when I access the page via the public site. Is there a setting I am missing?

I have enabled create and read access as below:

enter image description here

1 Answer 1


Even if you have the Read/Create access on Campaign, to be able to create Campaign records, the User must have Marketing User option enabled on the User record.

From Who has access to campaigns?

However, only designated marketing users with the appropriate user permissions can create, edit, and delete campaigns and configure advanced campaign setup. An administrator must select the Marketing User option on a user’s personal information to designate that user as a marketing user.

I couldn't find this documented very clearly but you cannot create a Campaign record using Guest User license type. If you try to enable this option for the Guest User associated to the Guest Profile for the Site, you won't be able to enable this option, and that it results in an error saying (sample screenshot below):

Marketing User is not allowed for this License Type.

Your option here could be to create records using some other object and then converting them to Campaign using some custom code running behind the scenes.

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .