Post on Users/Records/Groups using Apex Salesforce

In ordert to post to a User(@mention is not possible here) or a group we need to use FeedItem Apex Class, so here are the properties of the FeedItem Class

  1. Body: Text/Content of Post, mandatory if Type is TextPost
  2. ParentId: Record Id of the Record/User/Group to post
  3. Title: The title of the FeedItem. When the Type is LinkPost, the LinkUrl is the URL and this field is the link name
  4. Type: Link Post / Text Post and many
  5. Visibility: AllUsers/ Internal Users(by default)

NOTE: If Visibilty set over Internal Users then Community Users can't see it, so AllUsers enables access to both Internal and Community Users

Frequent Use Cases:

To Post Over Object Records, standard or custom object RecordId

FeedItem f = new FeedItem();
f.ParentId = <RecordId>;
f.Body = <Sample Text message>;
insert f;

To Post Over Chatter Group,

FeedItem f = new FeedItem();
f.ParentId = <GroupId>;
f.Body = <Sample Text message>;
insert f;

To Post Link Post Over Record/Group,

FeedItem f = new FeedItem();
f.Type = 'LinkPost';
f.Title = 'FeedBack Url';
f.ParentId = <RecordId/GroupId>;
f.LinkUrl = <URL of the Record>;
insert f;

NOTE:
For more Information on FeedItem Object capabilites, click here

Subscribe to Phanindra Mangipudi

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe