Connect Salesforce
Find Salesforce in the App Center
Enter the Salesforce domain
login.salesforce.com, connects a production org. Use test.salesforce.com for a sandbox, or your My Domain, for example mycompany.my.salesforce.com or mycompany.sandbox.my.salesforce.com.Sign in and allow access

Sign in to Salesforce in the pop-up
Confirm the connection
Available actions
The integration offers about a hundred actions. The groups below list them all; the ones agents use most are described in detail under Use Salesforce in an agent.Records (any object)
Objects
Bulk & batch
Query & search
Files & reports
Advanced
Available triggers
Use these on an agent’s Triggers node to add or archive contacts automatically: New Lead, New Contact, New Record, New or Updated Record, New Case in Queue, New Case Attachment, New Field History Event, New or Updated File, and New Outbound Message. All triggers except New Outbound Message are Scheduled: Callers polls Salesforce for records created or modified since the last check. New Record and New or Updated Record take an Object and an optional Conditions (Advanced) SOQL filter. New Outbound Message is Instant: it receives an Outbound Message that you configure in a Salesforce Workflow Rule or Flow. See Triggers.Use Salesforce in an agent
{{ email }}.
Create Record
Creates one record of any object. Not idempotent: every run creates a new record, so use it only where duplicates are acceptable or you have already searched for a match.Update Record
Changes only the fields you send on an existing record. Every other field stays as it is; sendnull to clear a field.
Upsert Record by External ID
Creates the record if no match exists, or updates it if one does, matched on an external ID field. Use it so repeat calls don’t create duplicates: rerunning with the same external ID value updates the same record. The result reports whether the record was created or updated.Batch Upsert (Advanced) vs Bulk Upsert (Advanced)
Both actions insert-or-update many records matched on an external ID, and both are idempotent on that field. They differ in input format and in how Salesforce processes them:state, numberRecordsProcessed, numberRecordsFailed), not the records. To follow up, pass the job id to Get Bulk Ingest Job until state is JobComplete, Failed, or Aborted, then read the per-row outcome with Get Bulk Ingest Results (Result Type: successful, failed, or unprocessed rows). For other operations on CSV (insert, update, delete) use Run Bulk Ingest Job, which exposes the same job flow with an Operation field.

Bulk Upsert (Advanced) with no Id in the CSV: the job is created and a new record is inserted

Bulk Upsert (Advanced) with an existing Id in the CSV: the record is updated
Run SOQL Query
Runs a SOQL query and returns the matching records (deleted and archived records are excluded). Always add aLIMIT; if the response has a non-null next_records_url, fetch the rest with Get Next Query Page.

Run Query (Advanced) configuration
Custom API Call
Calls any Salesforce REST endpoint not covered above. Set URL (a full URL or a path relative to your instance, for example/services/data/v62.0/query?q=...), Method, Headers, Query Parameters, and for POST or PATCH a Body Type and Body. Authorization headers come from your connection.

Custom API Call configuration
Troubleshooting
INVALID_FIELD or 'No such column' errors
INVALID_FIELD or 'No such column' errors
REQUIRED_FIELD_MISSING
REQUIRED_FIELD_MISSING
LastName on Contact and Lead or Company on Lead. Add them to Fields.Type errors on numbers, dates, or checkboxes
Type errors on numbers, dates, or checkboxes
true/false for checkboxes, and ISO dates (2026-10-26). Make sure the variables you insert hold the right type.Bulk Upsert (Advanced) returned but the records aren't there yet
Bulk Upsert (Advanced) returned but the records aren't there yet
The connection stopped working
The connection stopped working
Requests are blocked by an IP restriction
Requests are blocked by an IP restriction
35.245.204.86 and 35.221.61.75, in the integration user’s profile login IP ranges or your org’s network access settings.