Salesforce
Overview
Salesforce is a leading cloud-based Customer Relationship Management (CRM) platform designed to help businesses connect with and understand their customers better. It offers a comprehensive suite of applications focused on sales, customer service, marketing automation, analytics, and application development. Salesforce enables organizations of all sizes to build stronger relationships with their customers through personalized experiences, streamlined communication, and predictive insights. Rill can ingest data from Salesforce as a source by utilizing the Bulk API, which requires a Salesforce username and password (and, in some cases, a token, depending on the org configuration) to authenticate against a Salesforce org.
Local credentials
When using Rill Developer on your local machine, you will need to provide your credentials via a connector file. We would recommend not using plain text to create your file and instead use the .env file. For more details on your connector, see connector YAML for more details.
If you've already deployed to Rill Cloud, you can either push/pull the credential from the CLI with:
rill env push
rill env pull
Alternatively, you can include the credentials directly in the underlying source YAML by adding the username and password parameters. For example, your source YAML may contain the following properties (these can also be configured through the UI during source creation):
type: "model"
connector: "salesforce"
endpoint: "login.salesforce.com"
username: "user@example.com"
password: "MyPasswordMyToken"
soql: "SELECT Id, Name, CreatedDate FROM Opportunity"
sobject: "Opportunity"
If this project has already been deployed to Rill Cloud and credentials have been set for this source, you can use rill env pull to pull these cloud credentials locally (into your local .env file). Please note that this may override any credentials you have set locally for this source.
Deploy to Rill Cloud
When deploying a project to Rill Cloud, Rill requires you to explicitly provide Salesforce credentials used in your project. Please refer to our connector YAML reference docs for more information.
If you subsequently add sources that require new credentials (or if you simply entered the wrong credentials during the initial deploy), you can update the credentials by pushing the Deploy button to update your project or by running the following command in the CLI:
rill env push
Leave the key and client_id fields blank unless you are using JWT (described in the next section below).
JWT
Authentication using JWT instead of a password is also supported. Set client_id to the Client Id (also known as the Consumer Key) of the Connected App to use, and set key to contain the PEM-formatted private key to use for signing.