Skip to main content

Salesforce Data Source

The Salesforce connector enables you to access Salesforce API endpoints to retrieve and manage CRM data, including accounts, contacts, opportunities, leads, cases, and custom objects. This connector is particularly useful for applications that need to extract CRM data, integrate Salesforce with other systems, build analytics and reporting solutions, or automate sales and marketing workflows. Follow the instructions below to create a new data flow that ingests data from a Salesforce source in Nexla.
sf_api.png

Salesforce

Create a New Data Flow

  1. To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Then, select the desired flow type from the list, and click the Create button.

  2. Select the Salesforce connector tile from the list of available connectors. Then, select the credential that will be used to connect to the Salesforce API, and click Next; or, create a new Salesforce credential for use in this flow.

  3. In Nexla, Salesforce data sources can be configured manually to ingest data from any valid Salesforce API endpoint. Manual configuration provides maximum flexibility for accessing Salesforce objects, custom objects, and applying customizations to exactly suit your needs.
    • To configure this source manually, follow the instructions in Configure Manually.

Configure Manually

Salesforce data sources can be manually configured to ingest data from any valid Salesforce API endpoint. Manual configuration provides maximum flexibility for accessing Salesforce objects, custom objects, or when you need custom API configurations.

With manual configuration, you can also create more complex Salesforce sources, such as sources that use SOQL queries to fetch specific data, sources that access custom objects, or sources that require custom authentication headers or request parameters.

API Method

  1. To manually configure this source, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the Salesforce API from the Method pulldown menu. The most common methods are:

    • GET: For retrieving data from the API (most Salesforce REST API endpoints use GET)
    • POST: For executing SOQL queries or performing other operations

API Endpoint URL

  1. Enter the URL of the Salesforce API endpoint from which this source will fetch data in the Set API URL field. This should be the complete URL including the protocol (https://) and any required path parameters. Salesforce API endpoints typically follow these patterns:
    • REST API: {instance_url}/services/data/v{version}/sobjects/{object_name}/
    • SOQL Query: {instance_url}/services/data/v{version}/query/?q={SOQL_query}
    • Composite API: {instance_url}/services/data/v{version}/composite/

Ensure the API endpoint URL is correct and accessible with your current credentials. You can test the endpoint using the Test button after configuring the URL. The endpoint URL should use the instance URL from your OAuth token response. Salesforce API requires OAuth 2.0 Bearer token authentication, which is automatically included from your credential.

Path to Data

Optional

If only a subset of the data that will be returned by API endpoint is needed, you can designate the part(s) of the response that should be included in the Nexset(s) produced from this source by specifying the path to the relevant data within the response. This is particularly useful when API responses contain metadata, pagination information, or other data that you don't need for your analysis.

For example, when a request call is used to query Salesforce objects, the API will typically return data along with metadata. By entering the path to the relevant data, you can configure Nexla to extract the specific records you need.

Path to Data is essential when API responses have nested structures. Without specifying the correct path, Nexla might not be able to properly parse and organize your data into usable records. For Salesforce API responses, common paths include $.records[*] for arrays of records from SOQL queries, $ for the entire response, or $.data[*] for composite API responses.

  • To specify which data should be treated as relevant in responses from this source, enter the path to the relevant data in the Set Path to Data in Response field.

    • For responses in JSON format enter the JSON path that points to the object or array that should be treated as relevant data. JSON paths use dot notation (e.g., $.records to access the records array).
    Path to Data Example:

    If the API response is in JSON format and includes a records array that contains the Salesforce object data from a SOQL query, the path to the response would be entered as $.records[*].

Autogenerate Path Suggestions

Nexla can also autogenerate data path suggestions based on the response from the API endpoint. These suggested paths can be used as-is or modified to exactly suit your needs.

  • To use this feature, click the Test button next to the Set API URL field to fetch a sample response from the API endpoint. Suggested data paths generated based on the content & format of the response will be displayed in the Suggestions box below the Set Path to Data in Response field.

  • Click on a suggestion to automatically populate the Set Path to Data in Response field with the corresponding path. The populated path can be modified directly within the field if further customization is needed.

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this source, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2). Additional headers are often required for API versioning, content type specifications, or custom authentication requirements.

    You do not need to include any headers already present in the credentials. Common headers like Authorization, Content-Type, and Accept are typically handled automatically by Nexla based on your credential configuration. For Salesforce, the Authorization header with Bearer token is automatically included from your credential.

Endpoint Testing

After configuring all settings for the selected endpoint, Nexla can retrieve a sample of the data that will be fetched according to the current configuration. This allows users to verify that the source is configured correctly before saving.

  • To test the current endpoint configuration, click the Test button to the right of the endpoint selection menu. Sample data will be fetched & displayed in the Endpoint Test Result panel on the right.

  • If the sample data is not as expected, review the selected endpoint and associated settings, and make any necessary adjustments. Then, click the Test button again, and check the sample data to ensure that the correct information is displayed.

Save & Activate the Source

  1. Once all of the relevant steps in the above sections have been completed, click the Create button in the upper right corner of the screen to save and create the new Salesforce data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.