Appbricx
Docs
FeaturesPricingStart free

Get started

OverviewWhat Appbricx isQuickstart with a coding agentQuickstart with the builderCore concepts

Guides

Data and tablesAccess and rolesBusiness rulesSign-inCustom screensRealtime and topicsWorkflows, schedules and webhooksServer functionsAI in your appPaymentsFilesMessagesIntegrationsVerifyPublishing, domains and rollbackOperating your appExport and self-hostSelf-host install

Tutorials

Build a booking app with Claude CodeMulti-user todo listClient portalSlack on new sign-upTemplates

Reference

Reference homeFrontend SDKHTTP APIMCP toolsCLIIntegrations catalogContract formatAI key resolutionRun Appbricx locally

Salesforce

Create records, run queries, and manage objects in Salesforce CRM.

CRM and salesOAuth27 actionsAll integrations

On this page
  1. Connect
  2. Call it from a workflow
  3. Actions (27)
  4. create_record
  5. run_query
  6. update_record
  7. add_contact_to_campaign
  8. add_file_to_record
  9. add_lead_to_campaign
  10. create_attachment
  11. create_case
  12. create_contact
  13. create_lead
  14. create_note
  15. create_opportunity
  16. create_task
  17. custom_api_call
  18. delete_opportunity
  19. delete_record
  20. export_report
  21. find_child_records
  22. find_record
  23. find_records_by_query
  24. get_record_attachments
  25. run_report
  26. send_email
  27. update_contact
  28. update_lead
  29. upsert_by_external_id
  30. upsert_by_external_id_bulk
  31. Details

Connect

Auth type: OAuth (oauth2). Click Connect and approve access on the provider's page. Appbricx runs the OAuth flow (signed single-use state, PKCE where the provider supports it), stores the tokens encrypted and refreshes them before they expire.

Scopes requested: apirefresh_token

OAuth needs an OAuth app: the platform's when the operator configured one, or your own (admin panel, Integrations, Configure). You can also bring your own credentials.

  • In the editor: Backend panel, Integrations tab, then Connect. This connects it for the project.
  • For every project in a workspace: Workspace settings, Integrations.
  • Owners and admins choose which integrations members may connect in the admin panel (Integrations tab), and can attach their own OAuth app there.

Call it from a workflow

Pass the action name and its input. The call resolves with { success, output, error? }; a missing connection resolves with success false and the reason. See ctx.integrations.invoke and ctx.integrations.call.

Native workflow
// .workflow.js (native ctx)
export async function run(ctx) {
  const res = await ctx.integrations.invoke("salesforce", "create_record", {
    "object": "<object>",
    "data": {}
  });
  if (!res.success) throw new Error(res.error);
  ctx.log.info("Salesforce answered", { output: res.output });
}
defineWorkflow module
// defineWorkflow module (@app/sdk ctx)
import { defineWorkflow } from "@app/sdk";

export default defineWorkflow({
  id: "salesforce-create-record",
  name: "Salesforce: Create Record",
  description: "Calls Salesforce when a row is created.",
  trigger: { type: "entity_event", entity: "tickets", event: "created" },
  async run(ctx, event) {
    const res = await ctx.integrations.call("salesforce", {
      "action": "create_record",
      "object": "<object>",
      "data": {}
    }) as { success: boolean; error?: string };
    if (!res.success) throw new Error(res.error);
  },
});
From an app (connector proxy)
curl -X POST "$APP_ORIGIN/__appbricx/connector-proxy/salesforce/create_record" \
  -H "Authorization: Bearer $APP_KEY" \
  -H "content-type: application/json" \
  -d '{"props":{"object":"<object>","data":{}}}'

Actions

create_recordin catalog

Create Record. Create a record of a given object.

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
datarequiredJSONEnter the fields for the new record as a JSON object. For example: {"Name": "My New Account", "Industry": "Technology"}

run_queryin catalog

Run Query (Advanced). Run a salesforce query

Also accepted as query.

InputTypeDescription
queryrequiredtextEnter the query

update_recordin catalog

Update Record. Updates an existing record.

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
record_idrequiredid (picked from your account)The record to select. The list shows the 20 most recently created records.
datarequiredJSONEnter the fields to update as a JSON object. For example: {"BillingCity": "San Francisco"}

add_contact_to_campaign

Add Contact to Campaign. Add a contact to a campaign.

InputTypeDescription
campaign_idrequiredid (picked from your account)Campaign
contact_idrequiredid (picked from your account)Contact
statusrequiredid (picked from your account)The campaign member status (e.g., 'Sent', 'Responded').

add_file_to_record

Add File to Record. Uploads a file and attaches it to an existing record.

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
record_idrequiredid (picked from your account)The record to select. The list shows the 20 most recently created records.
filerequiredfileThe file to upload.
file_namerequiredtextThe name of the file, including its extension (e.g., "report.pdf").

add_lead_to_campaign

Add Lead to Campaign. Adds an existing lead to an existing campaign.

InputTypeDescription
campaign_idrequiredid (picked from your account)Campaign
lead_idrequiredid (picked from your account)Lead
statusrequiredid (picked from your account)The campaign member status (e.g., 'Sent', 'Responded').

create_attachment

Create Attachment (Legacy). Creates a legacy Attachment record. Salesforce recommends using "Add File to Record" for modern apps.

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
parent_idrequiredid (picked from your account)The record to select. The list shows the 20 most recently created records.
filerequiredfileThe file to attach.
file_namerequiredtextThe name of the file, including its extension (e.g., "attachment.pdf").

create_case

Create Case. Creates a Case, which represents a customer issue or problem.

InputTypeDescription
SubjectrequiredtextSubject
Descriptionoptionallong textDescription
Statusoptionalid (picked from your account)Status
Priorityoptionalid (picked from your account)Priority
Originoptionalid (picked from your account)Origin
AccountIdoptionalid (picked from your account)Account
ContactIdoptionalid (picked from your account)Contact
other_fieldsoptionalJSONEnter additional fields as a JSON object.

create_contact

Create Contact. Creates a new contact record.

InputTypeDescription
LastNamerequiredtextLast Name
FirstNameoptionaltextFirst Name
AccountIdoptionalid (picked from your account)Account
EmailoptionaltextEmail
PhoneoptionaltextPhone
TitleoptionaltextTitle
other_fieldsoptionalJSONEnter additional fields as a JSON object.

create_lead

Create Lead. Creates a new lead.

InputTypeDescription
LastNamerequiredtextLast Name
CompanyrequiredtextCompany
FirstNameoptionaltextFirst Name
EmailoptionaltextEmail
PhoneoptionaltextPhone
LeadSourceoptionalid (picked from your account)Lead Source
other_fieldsoptionalJSONEnter additional fields as a JSON object (e.g., {"Title": "Manager", "Website": "http://example.com"}).

create_note

Create Note. Creates a note and attaches it to a record.

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
parent_idrequiredid (picked from your account)The record to select. The list shows the 20 most recently created records.
TitlerequiredtextTitle
Bodyrequiredlong textThe content of the note.

create_opportunity

Create Opportunity. Creates a new opportunity.

InputTypeDescription
NamerequiredtextName
CloseDaterequiredtextThe expected close date in YYYY-MM-DD format.
StageNamerequiredid (picked from your account)Stage
AccountIdoptionalid (picked from your account)Account
AmountoptionalnumberAmount
other_fieldsoptionalJSONEnter additional fields as a JSON object.

create_task

Create Task. Creates a new task.

InputTypeDescription
SubjectrequiredtextSubject
OwnerIdrequiredid (picked from your account)The owner of the task.
Statusrequiredid (picked from your account)Status
Priorityrequiredid (picked from your account)Priority
Descriptionoptionallong textDescription
WhoIdoptionaltextThe ID of a Contact or Lead to relate the task to.
WhatIdoptionaltextThe ID of an Account, Opportunity, or other object to relate the task to.

custom_api_call

Custom API Call. Make a custom API call to a specific endpoint

InputTypeDescription
urlrequiredobject (depends on other props)url
methodrequiredone of "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | "HEAD"Method
headersrequiredobjectAuthorization headers are injected automatically from your connection.
queryParamsrequiredobjectQuery Parameters
body_typeoptionalone of "none" | "json" | "form_data" | "raw"Body Type
bodyoptionalobject (depends on other props)Body
response_is_binaryoptionalbooleanEnable for files like PDFs, images, etc.
failsafeoptionalbooleanNo Error on Failure
timeoutoptionalnumberTimeout (in seconds)
followRedirectsoptionalbooleanFollow redirects

delete_opportunity

Delete Opportunity. Deletes an opportunity.

InputTypeDescription
opportunity_idrequiredid (picked from your account)Opportunity

delete_record

Delete Record. Deletes an existing record in an object.

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
record_idrequiredid (picked from your account)The record to select. The list shows the 20 most recently created records.

export_report

Export Report. Export a Salesforce report as an Excel file.

InputTypeDescription
report_idrequiredid (picked from your account)Report

find_child_records

Find Child Records. Finds child records related to a parent record.

InputTypeDescription
parent_objectrequiredid (picked from your account)Select the Object
parent_idrequiredid (picked from your account)The parent record to find child records for. The list shows the 20 most recently created records.
child_relationshiprequiredid (picked from your account)The child relationship to retrieve records from.

find_record

Find Record. Finds a record by a field value.

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
fieldrequiredid (picked from your account)Select the Field
search_valuerequiredtextThe value to search for in the selected field.

find_records_by_query

Find Records by Query (Advanced). Finds records in an object using a SOQL WHERE clause.

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
where_clauserequiredtextEnter the WHERE clause for your SOQL query. For example: `Name = 'Acme' AND Industry = 'Technology'`. Do not include the 'WHERE' keyword.

get_record_attachments

Get Record Attachments. Get all attachments (both classic and modern Files) for a record.

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
record_idrequiredid (picked from your account)The record to select. The list shows the 20 most recently created records.

run_report

Run Report. Execute a Salesforce analytics report and return the results as easy-to-use rows.

InputTypeDescription
report_idrequiredid (picked from your account)Report
filtersoptionalJSONApply dynamic filters to the report run. Leave empty to use the report's saved filters.

send_email

Send Email. Sends an email to a Contact or Lead by creating an EmailMessage record.

InputTypeDescription
recipientIdrequiredid (picked from your account)Recipient
subjectrequiredtextSubject
bodyrequiredlong textThe content of the email. Can be plain text or HTML.
relatedToIdoptionaltextThe ID of a record to relate the email to (e.g., an Account, Opportunity, or Case ID).

update_contact

Update Contact. Update an existing contact.

InputTypeDescription
contact_idrequiredid (picked from your account)Contact
FirstNameoptionaltextFirst Name
LastNameoptionaltextLast Name
AccountIdoptionalid (picked from your account)Account
EmailoptionaltextEmail
PhoneoptionaltextPhone
TitleoptionaltextTitle
other_fieldsoptionalJSONEnter any additional fields to update as a JSON object.

update_lead

Update Lead. Update an existing lead.

InputTypeDescription
lead_idrequiredid (picked from your account)Lead
FirstNameoptionaltextFirst Name
LastNameoptionaltextLast Name
CompanyoptionaltextCompany
EmailoptionaltextEmail
PhoneoptionaltextPhone
LeadSourceoptionalid (picked from your account)Lead Source
other_fieldsoptionalJSONEnter any additional fields to update as a JSON object.

upsert_by_external_id

Batch Upsert (Advanced). Batch upsert a record by external id

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
external_fieldrequiredtextSelect the External Field
recordsrequiredJSONSelect the Records

upsert_by_external_id_bulk

Bulk Upsert (Advanced). Bulk upsert a record by external id

InputTypeDescription
objectrequiredid (picked from your account)Select the Object
external_fieldrequiredtextSelect the External Field
recordsrequiredlong textSelect the Records (CSV format)

Details

Id
salesforce
Category
CRM and sales
Tags
crm, sales, enterprise, leads, opportunities
Package
@activepieces/piece-salesforce@0.7.0
Tier
Built in

On this page

  1. Connect
  2. Call it from a workflow
  3. Actions (27)
  4. create_record
  5. run_query
  6. update_record
  7. add_contact_to_campaign
  8. add_file_to_record
  9. add_lead_to_campaign
  10. create_attachment
  11. create_case
  12. create_contact
  13. create_lead
  14. create_note
  15. create_opportunity
  16. create_task
  17. custom_api_call
  18. delete_opportunity
  19. delete_record
  20. export_report
  21. find_child_records
  22. find_record
  23. find_records_by_query
  24. get_record_attachments
  25. run_report
  26. send_email
  27. update_contact
  28. update_lead
  29. upsert_by_external_id
  30. upsert_by_external_id_bulk
  31. Details
Appbricx

The backend, runtime and hosting for apps your coding agent builds. On our cloud, in yours, or on your own servers.

Features

Coding agents and MCPVerify testingBuilder consolePostgres databaseData APIRealtimeRow-level securitySign-in and authPaymentsWorkflows and jobsAI in your appIntegrationsBackups and rollbackHosting and domainsSelf-host and exportAll features

Product

ShowcasePricingFor coding agentsTemplatesPrivate cloudBring your own AI keyFAQ

Compare

Appbricx vs SupabaseLovable alternativeBolt alternativeFor freelancersFor agencies

Resources

DocumentationReferenceBlogSupportContact

© 2026 Appbricx. All rights reserved.

TermsPrivacyCookiesAcceptable Use