function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
DrewTDrewT 

Licenses and API Applications

I'm just beginning to develop API applications with Sales Force and would like to do things right.

I would like to develop a VERY simple web application that will access some VERY simple salesforce data. Which I know can be done.

What I am confused about is how I should approach this from a Licenses stand point. If I want different users to view some queried out information that I would present on the web site, do I need to pay for a different user/email license for each. What's stopping me from using the same (say, web login, web@domain.com) each time the site accesses information from my company's SalesForce account?

I have some follow up questions, but I will hold off until I understand this basic set accessing.

Thanks.

Drew

DevAngelDevAngel

Hi DrewT,

Each salesforce.com user that you have purchased can exercise the API under license.  The question about how to authenticate (either as the user using your web application or some uber user) depends on the context of your web application.  Another consideration is what kind of sharing model your company has implemented in salesforce.com. 

If you have an open sharing model (everyone can see and edit everyone else's data) then it doesn't really matter what user id you use.  On the other hand, if you want to present information that is relevant to a specific user based on record ownership, you will want to user the credentials of the user who is looking at the data.

If you do not have an open sharing model, then using an uber user credential might violate your company's data sharing policies as implemented in salesforce.com.  When you login as a specific user, the security established in the application carries over to the api.  In other words, if the user has only read access on record they don't own, then when using that user's creds to exercise the api, the objects that are not owned by that user will be read only as well.

Typically, unless you are doing an ETL type use of the api, you would want to authenticate to the api in the context of the user who is using your web app.

 

DrewTDrewT

Dave,
Thanks. I guess what I'm trying to figure out is, would it be OK to have some people, who we do not pay for salesforce licenses, log into an Website to be able to View and maybe even update some Accounts or Opportunities, through the API?
I'm not trying to get away from spending money, but I hate to tell higher ups that for these people to just View some accounts, they would ALL each have their own salesforce login.
Thanks,
Drew

DevAngelDevAngel

Hi DrewT,

It's your data and the api is the mechanism by which you integrate your data into your other processes.  If you want to provide read only data via the api, then by all means.  If you want to provide some limited updating using a generalized login go ahead.  Just keep in mind the points I made in my previous post on this subject.  Mulitplexing a license is not something we endorse, but there are many times when creating a composite business intelligence application where this is acceptable.  Again, you run the risk of fouling up ownership and audit by allowing the use of one account to update anything, anywhere at anytime.

Cheers