Take the 2-minute tour ×
Salesforce Stack Exchange is a question and answer site for Salesforce administrators, implementation experts, developers and anybody in-between. It's 100% free, no registration required.

I have a custom object that represents a B2C customer, 'Cardholder', that I would like to connect to the cardholder's social networking profiles. Is this possible?

I am not using the Contact standard object because I also have a B2B aspect of my company that uses Accounts/Contacts.

Thanks!

share|improve this question
2  
In theory it's definitely possible. You should clarify the requirements: What information do you need to associate to this record? Do you want to make use of SFDC's social network capabilities? If so how? –  jordan.baucke Sep 28 '12 at 2:38
    
@jordan.baucke, I'm interested in the same capabilities that you have when you connect a contact to a facebook/linked in/twitter page, although I haven't used this functionality extensively yet, so I can't name individual features besides having the picture on the Salesforce page and having access to their feed. How can I connect these records to a social networking profile? Thanks! –  jackerman09 Sep 28 '12 at 13:13
    
Quick question: why not just have a new Record Type on Contacts for cardholders? Is that feasible given your org's requirements? –  Mike Chale Sep 29 '12 at 21:02

3 Answers 3

up vote 6 down vote accepted

Once you have enabled Social Contacts and Accounts, you can create Lookup fields to the "Social Persona" object --- this becomes available as one of the target object types. Though this object is not exposed in the API, you can view its fields in the Setup tree, and even add Custom Fields, by going here:

https://na12.salesforce.com/p/setup/layout/LayoutFieldList?type=SocialPersona&setupid=CustomObjects

Below I present pictorial proof:

(1) The Social Persona object in the setup tree

Social Persona object in Setup Tree

(2) Creating a Lookup to the Social Persona object

Making a Lookup field to the Social Persona object

As to the object's API accessibility, its API Name is "SocialPersona" --- I believe it was exposed in Spring 12, but was removed in Summer 12. If you don't believe me, try doing a SOQL query on the "SocialPersona" object --- you receive the error:

sObject type 'SocialPersona' is not supported.

which is distinct from the more extensive error thrown when an object does not exist on Salesforce:

sObject type 'Blah' is not supported. If you are attempting to use a custom object, be sure to append the '__c' after the entity name. Please reference your WSDL or the describe call for the appropriate names.

share|improve this answer
    
This is great news! Thanks for posting zachelrath. Perhaps I just didn't receive the most accurate information from premier support, but it was back in early summer and these things are constantly changing. In any case, I'm really glad to know this is now possible! Thanks again. –  Adam Oct 8 '12 at 20:49
    
I just verified this and realized that there is a downside. You still would require users to hand-enter (click the lookup icon and search for) users that you would like to see their social information, such as their Twitter handle. It's a step in the right direction, but still prevents strictly programmatic access. I thought that hopefully the junction object, once created, would allow you to populate the social data through it's custom lookup fields - from Apex. But once these are manually configured by users, having read access from Apex is better than nothing. –  Adam Oct 8 '12 at 21:10
    
Yes, I agree, the need for users to manually enter Social Contact/Account information, combined with the lack of API access, severely cripples the usefulness of this feature. –  zachelrath Oct 11 '12 at 10:50

I'm the past PM that worked / owned the direction for the Social Post and Social Persona object. It's more of a collective of us though now since the Social Enterprise vision has kicked it up a couple notches. Sorry I didn't come on this thread sooner.

Basically all the information is right in different degrees as laid out above.

Historically during beta and before Radian6 was acquired, we had custom objects the Social_Media_Persona__c object and the Social_Media_Post__c object. Since the acquisition we've started to rebuild these objects, SocialPost and SocialPersona in core to make them standard objects. There was a hiccup at one point though around exposing these newly established objects via API to ensure terms of service compliance around the data being stored in the objects. Our intention is to make them standard and generally available. We haven't locked in on a release date yet though.

At the present time to see them from the UI layer you'll need to enable Social Accounts and Contacts. Then as a very sharp contributor above pointed out the Social Persona will be created in support of any Contact you make a social connection with (by clicking the Facebook or Twitter icon for instance). The idea here is the Persona as a child object of the Contact will contain the varying and different values we're able to acquire through various means, such as Social Key (Data.com) or the Social Hub (Marketing Cloud) or through your manual connection.

You'll require special permissions to gain access to those objects via the API because their not completely done and there will be changes to them over the next several major releases of Salesforce.com. So of course I'd caution you against creating any customization on those objects that runs too deep (beyond prototype) until such time as they are officially Generally Available and published in the API and aren't controlled by special permission access. (expect schema and column changes)

To achieve OP's use case I would suggest the use of the Persona object. The basic business justification behind that is because most of the internal social products are aligning around the use of the Persona object. As such using it will ensure if you bring any other social processes online you'll have a means to control / reduce / eliminate duplicate social contacts. I'd also suggest taking a closer look at the use of the custom object as the parent. Person Accounts are the generally used B2C approach. I suspect though with our companies foray into the social enterprise, to see some investment and attention around the B2C space in the releases to come at some point in the future and I would imagine some attention to improving "person accounts". By hitching your wagon to the Person Account you are more or less increasing the probability you'll be able to leverage B2C advantages and functionality for free (figuratively from a programming analogy) that are added to the platform as they're developed.

I should point something out though about the present schema; there is a native relationship control field called the "Who" field which establishes a parent look-up. The fact that this is currently limited to Leads and Contacts only may pose a slight challenge for you a little further down the line if you introduce additional social processes or start using Social Contacts. You may encounter a situation where a Contact w/ Persona could contain duplicate Persona and Custom Object data all which is really the same real social person. You'll want to mind that for data hygiene reasons.

I think it's a great feature request though to perhaps not require the Persona to need to be parented by a lead or contract and open the ability up for it to be parented by custom objects for the use case you have outlined. Further we should consider custom search and match logic to ensure that once you've instantiated this custom relationship that you can dictate to any other social process where we should be looking to potentially prevent duplicate creation (or at least a good effort based on the objects and fields you specify to look for unique social ids like a Twitter Author's Unique ID).

Hope this helps..

Edit: to gain access to Social Post / Persona via API / Apex you'll need to contact support@radian6.com and again caution, they are not in a complete state, there will be changes to the relationships in the objects and the standard fields they contain, so I wouldn't do more than prototype on them until they are locked in on a G.A. state or at the very least don't tightly couple your apps to them. Please provide your Org ID to support and the use case you have in mind.

share|improve this answer

Unless something has changed recently, there is no way to connect with the social networking data at all. I was very interested in this while developing our company's latest AppExchange app and pushed hard on support to get some way to access this data.

After having the issue escalated to someone with apparently the definitive answer, the result was a definite "NO." But things constantly change and I went through this process early in the summer, so it's possible that it's accessible now or will be soon.

share|improve this answer
    
Not super surprising with SF offering their own lightweight integration built in but especially now with radian6 and buddy media... –  Peter Knolle Sep 29 '12 at 22:15
1  
Adam, see my answer below --- your answer is not accurate. You can create Lookup fields to the Social Persona object and even add custom fields to it. –  zachelrath Oct 8 '12 at 17:00

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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