ACTION_ID: salesforce_create_record NAME: Salesforce: Create a Record CATEGORY: CRM CREDITS: 0 Create a record in Salesforce. PREREQUISITE: Salesforce org connection — the user must create it in the Floqer UI (Connections page); an agent cannot. Without it the action fails the row with a connection / authentication error. Confirm it exists before configuring. 1. INPUTS salesforce_object (dropdown, required) Salesforce Object. Choose the SalesForce Object. add_fields_and_their_values (jsonArray, optional) Add Fields and their Values. Select Fields from the object and add Values. run_salesforce_assignment_rules (radio, optional) Run Salesforce assignment rules. Default ON. Salesforce runs your assignment rules on every Floqer write, which may reassign Lead, Account, or Case ownership. Turn this off to send the Sforce-Auto-Assign: FALSE header. Only applies to Accounts, Cases, and Leads. 2. OUTPUTS record_id (string) — Record ID. The ID of the record created. account_url (url) — Account URL. Salesforce Account URL. Placeholder: "https://test.my.salesforce.com". 3. HOW TO CONFIGURE Resolve dynamic field values via Get Action Field Options before configuring: POST /api/v1/workflows/{workflow_id}/sheets/{sheet_id}/actions/{action_instance_id}/options/salesforce_object (body: {}) → list of objects on your Salesforce org. POST .../options/add_fields_and_their_values (body: { "context": { "salesforce_object": "Lead" } }) → all fields on the chosen object. Configure Action body: { "inputs": { "salesforce_object": "Lead", "add_fields_and_their_values": [ { "name": "FirstName", "value": "{{input.first_name}}" }, { "name": "LastName", "value": "{{input.last_name}}" }, { "name": "Email", "value": "{{input.email}}" }, { "name": "Company", "value": "{{input.company_name}}" } ], "run_salesforce_assignment_rules": true } } Field-by-field: - salesforce_object Object name from the `salesforce_object` options call. - add_fields_and_their_values `[{name, value}]` — `name` is the Salesforce field's API name; `value` accepts `{{ref}}` tokens or literals. Use the `add_fields_and_their_values` options call to list valid names. - run_salesforce_assignment_rules Default `true`. Set `false` to send `Sforce-Auto-Assign: FALSE` so Salesforce skips your assignment rules. Only applies to Accounts, Cases, and Leads. 4. KEY NOTES - Always inserts a new record. Use `salesforce_upsert_record` if you need create-or-update by external ID. - The Salesforce connection must live on the API key's user account. If the connection lives under a different team member, Get Action Field Options returns a 424 — provision the API key from the user who owns the connection. - Token refresh is automatic on transient `INVALID_SESSION_ID` responses; one retry, then surfaces as 502 if the second call also fails. - `add_fields_and_their_values` is round-trip lossless: the `[{name, value}]` shape you pass is what comes back via Get Action. 5. WHERE IT FITS IN A WORKFLOW Pattern: contact discovery -> enrichment -> salesforce_create_record (Lead) -> downstream Salesforce automation. 6. WHEN TO USE Use salesforce_create_record to insert a new record into any Salesforce object. 7. WHEN NOT TO USE Need create-or-update on an external ID -> action-detail/salesforce_upsert_record.txt Need to update by Salesforce ID -> action-detail/salesforce_update_record.txt Need to look up an existing record -> action-detail/salesforce_lookup_record.txt Last updated: 2026-04-28.