How to configure Salesforce as a destination in Mage to write records using OAuth or username/password authentication with support for insert, update, upsert, and bulk actions.
insert
, update
, upsert
, delete
, and hard_delete
actions.
You can also configure behavior for bulk failures, define external ID fields for upserts, and optionally override the source-to-object mapping using table_name
.
Key | Description | Required |
---|---|---|
client_id | OAuth client ID from your Salesforce connected app. | Optional |
client_secret | OAuth client secret from your connected app. | Optional |
refresh_token | OAuth refresh token. Used to obtain new access tokens. | Optional |
username | Username used for Salesforce username/password authentication. | Optional |
password | Corresponding Salesforce password. | Optional |
security_token | Salesforce security token (needed with password-based login). | Optional |
domain | Salesforce domain to authenticate against. Use login (default), test (sandbox), or a custom My Domain. | ✅ |
action | Default operation to perform on incoming records: insert , update , upsert , delete , or hard_delete . | ✅ |
external_id_name | External ID field for upsert operations. Default is "Id" . | Optional |
allow_failures | If true , failed records will be skipped and processing will continue. Default is false . | Optional |
table_name | Override the source stream name with a specific Salesforce object name (e.g., Account , Contact , Opportunity ). | Optional |
client_id
, client_secret
, and refresh_token
.username
, password
, and security_token
.table_name
parameter in your configuration.
table_name
must match the API name of a Salesforce object (e.g., Account
, Lead
, Opportunity
, or custom objects like MyObject__c
).allow_failures
is set to true
:
allow_failures
is set to false
: