Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

he The Salesforce connector will crawl content from any Salesforce Summer '16 (version 37). The connector will retrieve the supported elements using the SOAP API, and the user's chatter Salesforce Chatter feeds using the REST API.

Info

To see the current Salesforce version please check the follow following link: Salesforce Release Notes


Note

The connector uses a queries file, the . The sQueries.xml is a template document from which the user can decide choose the fields to crawl:

  • Each SQueriessQueries.xml can be different for each Salesforce and . It is the responsibility of the developer in charge of the installation of the connector to update or modify this document.
  • sQuieres.xml can use the SOQL TYPEOF, but this SOQL needs to be activated in the Salesforce environment.
Panel
titleOn this page

Table of Contents



Features


Some of the features of the Salesforce connector include:

  • Support for SalesForce Salesforce Knowledge Base
  • Support for SalesForce Salesforce Chatter
  • Ability to perform either full or incremental crawling (so that only new/updated documents are indexed)
  • Metadata extraction
  • Groovy Json Transformations
  • Is search engine independent
  • Runs from any machine with access to the given community
  • Fetches access control lists Access Control Lists (ACLs) for normal object types
  • Custom metadata retrieval (Using SOQL)
  • Selectable elements typesSupports Windows/Linux/MacOS file systems
  • Group Expansion support for standard and chatter groups.


Content Retrieved


The Salesforce connector retrieves several types of documents, listed below are the inclusions and exclusions of these documents.

Include

Included

  • Account
  • Campaign
  • Case
  • Contact
  • Contract
  • Chatter
  • Document
  • Group
    • These are not the Salesforce chatter groups, but the Salesforces user's groups and roles stored in the groups table inside Salesforce.
    • The groups can be checked in the UI in the groups page for the groups only and the roles page for the users roles
  • Idea
  • Lead
  • Opportunity
  • Partner
  • Pricebook
  • Product
  • Profile
  • Solution
  • Task
  • UserAttachment
  • Knowledge Article
    • Draft Articles
    • Published Articles
    • Archived Articles
Exclude
  • Attachment (These will be extracted from the other object types crawled. For example if only the opportunities are crawled and have attachments associated those will be crawled, but the attachments of the other types will be ignored)

Excluded

  • App Launcher
  • Libraries
  • People
  • Macros
  • Dashboard
  • Data.com
  • Duplicate Records Sets
  • Reports
  • Site.com
  • Forecast
  • Streaming channels
  • Subscriptions
  • Any other object not mentioned

Metadata Extracted

The connector receives a file with SOQL queries for each of the object types to crawl. The metadata of the objects types will depend on the specified query for each type. For example if the query for Lead looks like this:

Code Block
languagesql
SELECT Id, IsDeleted, MasterRecordId, LastName, FirstName, SystemModstamp, Name FROM Lead

Only those field would be extracted and added as the metadata of the Lead objects.

Warning

Fields like Id and SystemModstamp are mandatory and need to be specified in the queries for each object type to crawl


Limitations 


1. Due to API limitations, the Salesforce connector

Limitations 

Due to API limitations, Salesforce connector has the following limitations:

  • We are using the getUpdated and getDeleted method from Salesforce API to perform the incremental request, but when you update an attachment from any item, that action will not be processed by the getUpdated or getDeleted API methods.


There is a daily request limitation limit in Salesforce API. Connector will give following error in case it occursIf this occurs, the following error will be displayed.

Info
ERROR [/salesforce001/Main/Scanner]: SalesforceDSConnection.MaximumRetriesExceeded: 

[UnexpectedErrorFault [ApiFault  exceptionCode='REQUEST_LIMIT_EXCEEDED' exceptionMessage='TotalRequests Limit exceeded.'


Please see more information at API rate metering .

The chatter feed also has it's own limitations per User, per Hour and per Application, if the limit is reached produce this error:

Info

2017-12-12T21:25:29Z ERROR [/SalesforceCS1/RAP]: Failed to read response for https://dell--SIT5.cs9.my.salesforce.com/services/data/v37.0/chatter/feeds/user-profile/005A0000000YMocIAG/feed-elements?sort=LastModifiedDateDesc&density=AllUpdates&pageSize=30 retrieve from the server, Reason: 503 Service Unavailable

[ {

  "errorCode" : "REQUEST_LIMIT_EXCEEDED",

  "message" : "You have reached the Connect API's hourly request limit for this user and application.  Please try again later."

} ]

The exact limit is not available in the Salesforce official documentation, for more information please check the Salesforce documentation

Security 2. Security and incremental related limitations

  • In security, we are only supporting 'Supported elements'.
  • For sharing related incremental crawling, unsharing of Salesforce item is not working.
  • For incremental crawling of Salesforce task items, we are only supporting tasks based on accounts.
  • When there is a If removal of sharing occurs for a item (e.g., removing sharing of an account) will , it is not reflect reflected in the incremental crawl.
  • Pricebook sharing ACLs are not supported.
  • We are only supporting Tasks those that are based on accounts for incremental crawling.

3. Chatter security

  • Chatter ACLs only will be retrieved if the “Filter TrackedChange feeds” option is checked.
  • Chatter ACLs are only supported for items that were created by a User or a Group, otherwise no ACL will be generated for the item.
  • The public chatter groups will have two ACLs, one for the public group and a PUBLIC:ALL ACL.
  • Private and Unlisted chatter groups will have one ACL for the group.
  • The followers of a chatter user will be treated as a private group called “<username>’s followers”, all the feed items created by a user to their followers will have this ACL.
  • The chatter item attachments will inherit the parent item ACLs.
  • Reducing the users retrieval scope might lead to a loss of ACLs, since no ACLs won’t be generated for followers of users outside the scope of the user retrieval.

4. Salesforce  Compatibility limitation

Every 3 months Salesforce releases a new version of their API and sometimes makes changes to the data structures. After each update there is a possibility that the compatibility between the connector and Salesforce will break.