About the Salesforce category

Add topics about this connector package here.
Always check the ‘How to use the Alumio connector packages’ topic.

Extra information

System documentation: Salesforce Developers

Connector package documentation

​​Table of Contents

  • 1. Setting up the Salesforce HTTP Client
    • 1.1 Steps
  • 2. Subscribing to entities from Salesforce
    • 2.1 Steps
    • 2.2 General concept
  • 3. Publishing an entity to Salesforce
    • 3.1 Steps
    • 3.2 General concept

1. Setting up the Salesforce HTTP Client

1.1 Steps

  1. Please refer to Help And Training Community page to create a connected app for connecting Alumio to Salesforce.
  • make sure to uncheck “Require Proof Key for Code Exchange (PKCE) Extension for Supported Authorization Flows”
  • make sure to relax IP restrictions under “IP Relaxation”
  • the callback URL can be found in Alumio under Settings->Info->OAuth Redirecht URL
  1. In the Alumio Dashboard, go to Clients → HTTP Clients.
  2. Create a new HTTP Client and select Salesforce HTTP Client as the prototype of the HTTP Client.
  3. Fill in the Base URI, Client ID and Client Secret of your Salesforce instance and app credentials.
  4. You can optionally set a base HTTP client to use for the connection by selecting an HTTP client configuration or setting your own HTTP client in the Advanced HTTP client field.
  5. Click the Grant access to Salesforce button and follow the instructions to let Alumio start the authentication and get the access token.
  6. You can optionally change how Alumio logs every HTTP request made by the HTTP client.

2. Subscribing to Entities from Salesforce

2.1 Steps

  1. Go to Connections → Incoming and create a new incoming configuration and select Salesforce Subscriber as the subscriber.
  2. Select the entity you want to subscribe to.
  3. Add any request parameters needed to subscribe to the entity (optional).
  4. You can also add a transformer to manipulate the request parameters into something you need.
  5. Select the Salesforce HTTP Client to use.
  6. You can optionally enable pagination to allow Alumio fetches paginated entities.

2.2 General Concept

We follow Salesforce API documentation on building this connector, so you can easily use the connector based on the Salesforce REST API Developer Guide.

Action

This is the action you want to do (fetching data from Salesforce). Please refer to the Salesforce REST API Developer Guide page. We currently support Salesforce REST API v54.0 and earlier versions.

Request Parameters

These are the parameters you can provide to get the needed entity based on Salesforce REST API Developer Guide. Please look at the example below on how to fill the Request Parameters field when subscribing “sObject Rows” entity.

image

  • Path is the path parameter of the URL. For example the {id}.
  • Query is a defined set of parameters attached to the end of a URL.
    Example: URL.com - Media Options

This means that we want to subscribe to an Account object with ID 0015i000006JHL1AAO, and we want to fetch only the Name and Website properties of the object. We can see in the documentation that sObject Rows entity requires sObject and id as path parameters to define which object we want to fetch the data from.

That’s why we need to define the sObject and id properties inside the path key in the Request Parameters field. The properties inside query parameters (in this example it would be fields) will be parsed as query parameters.
The Final URL is /services/data/v54.0/sobjects/Account/0015i000006JHL1AAO

Input Transformer

Any transformers set here will be executed after the Request Parameters are loaded. So, you basically can add any transformer to provide and transform the request parameters into anything you need, either as path parameters and/or as query parameters of an entity.

HTTP Client

This is the HTTP Client configuration or prototype you will use to access Salesforce.

3. Publishing an Entity to Salesforce

3.1 Steps

  1. Go to Connections → Outgoing, create a new outgoing configuration and select Salesforce Publisher as the publisher.
  2. Select the method you want the publisher to use with the data.
  3. Select the action you want the publisher to do to Salesforce.
  4. You can optionally add any query parameters to the request.
  5. You can also add any transformers to manipulate the data into anything you need before submitting it to Salesforce.
  6. Select the HTTP Client to use.

3.2 General Concept

Like the subscriber, the publisher has similar methods on how to use it. The difference is the payload that will be submitted by the publisher originating from the data (from routes, from transformers in outgoing configuration), though you can also add or modify payload using the Request Transformer.

Method

Currently we support POST, PUT, PATCH and DELETE methods when writing/publishing data to Salesforce.

Action

We support publishing to most Salesforce endpoints. Please refer to the Salesforce REST API Developer Guide page. Based on the documentation, some endpoints may need one or more path parameters.

Please look at the example below. For example, we want to update the name and website of a specific account object. Please select PATCH as the method and “sObject – Update a Record” as the action of the publisher.

The documentation describes that we need sObject and id as path parameters. In that case, you need to provide sObject and id properties into the path property in the data, either as an output from Routes or output from Transformers in the Outgoing Configuration. And you can put the payload you want to send to Salesforce into the payload property in the data. Here is an example of the required data.

image

  • Path is the path parameter of the URL. For example the {id}.
  • Query is a defined set of parameters attached to the end of a URL.
    Example: URL.com - Media Options
  • Payload is the data contained within a request.

Alumio will send an API request to Salesforce with URL /services/data/v54.0/sobjects/Account/0015i000006JHL1AAO and below request body.

image

HTTP Client

This is the HTTP Client configuration or prototype you will use to access Salesforce.