Portal Community

lead/create

Create a new Lead record in Salesforce CRM.

When to Use

Configuration

Connection

FieldTypeRequiredDescription
InstanceUrlstringrequiredSalesforce org URL, e.g. https://myorg.my.salesforce.com
AccessTokenstringrequiredValid OAuth2 access token. Store in BizFirst Credentials Manager.

Operation Fields

FieldTypeRequiredDescription
LastNamestringrequired*Lead's last name. At least one of LastName or Company must be provided.
Companystringrequired*Company name. At least one of LastName or Company must be provided.
FirstNamestringoptionalLead's first name.
EmailstringoptionalLead's email address.
PhonestringoptionalPrimary phone number.
TitlestringoptionalJob title of the lead.
StreetstringoptionalStreet address.
CitystringoptionalCity.
StatestringoptionalState or province.
PostalCodestringoptionalPostal or ZIP code.
CountrystringoptionalCountry.
WebsitestringoptionalLead's company website URL.
LeadSourcestringoptionalSource of the lead, e.g. Web, Phone Inquiry, Partner Referral.
StatusstringoptionalLead status picklist value, e.g. Open - Not Contacted.
RatingstringoptionalLead rating, e.g. Hot, Warm, Cold.
IndustrystringoptionalIndustry classification.
NumberOfEmployeesintoptionalNumber of employees at the lead's company.
AnnualRevenuedecimaloptionalEstimated annual revenue of the company.
DescriptionstringoptionalFree-text description or notes about the lead.

Sample Configuration

{
  "Resource": "lead",
  "Operation": "create",
  "InstanceUrl": "https://myorg.my.salesforce.com",
  "AccessToken": "{{credentials.salesforce.accessToken}}",
  "FirstName": "Jane",
  "LastName": "Doe",
  "Company": "Acme Corp",
  "Email": "jane.doe@acme.com",
  "Phone": "+1-555-0100",
  "Title": "VP of Engineering",
  "LeadSource": "Web",
  "Status": "Open - Not Contacted",
  "Industry": "Technology",
  "NumberOfEmployees": 500,
  "Website": "https://acme.com",
  "Description": "Inbound lead from product demo request form"
}

Validation Errors

Error CodeCondition
CFG_INVALIDNode settings could not be resolved.
CFG_MISSING_INSTANCEInstanceUrl is missing or empty.
CFG_MISSING_TOKENAccessToken is missing or empty.
VAL_MISSING_FIELDNeither LastName nor Company was provided.
UNEXPECTED_ERRORUnexpected exception during execution.

Output

Success Port

FieldTypeDescription
leadIdstringThe 18-character Salesforce ID of the newly created Lead.
createdAtstringISO 8601 timestamp of when the lead was created.
statusstringAlways created on success.
resourcestringAlways lead.
operationstringAlways create.

Error Port

FieldTypeDescription
errorCodestringMachine-readable error code.
messagestringHuman-readable description of the error.
resourcestringAlways lead.
operationstringAlways create.

Sample Output

{
  "leadId": "00Q5g000003aXyzEAE",
  "createdAt": "2026-05-26T10:14:32.000Z",
  "status": "created",
  "resource": "lead",
  "operation": "create"
}

Expression Reference

ExpressionDescription
{{nodes.CreateLead.leadId}}The Salesforce Lead ID of the created lead.
{{nodes.CreateLead.createdAt}}Creation timestamp.
{{nodes.CreateLead.status}}Operation status (created).
{{nodes.CreateLead.errorCode}}Error code from the error port.
{{nodes.CreateLead.message}}Error message from the error port.

Node Policies & GuardRails

PolicyDetail
Credential storageStore AccessToken in BizFirst Credentials Manager, not as plain text in configuration.
Token expiryAccess tokens expire. Configure automatic refresh via a Salesforce Connected App.
Duplicate preventionSalesforce duplicate rules may block creation if the email or name matches an existing lead. Handle the error port to detect DUPLICATES_DETECTED responses.
Sandbox testingAlways test lead creation against a Salesforce sandbox before running in production.
Error port wiringAlways wire the error port. Org validation rules and permission sets can cause unexpected failures.
Field picklist valuesLeadSource, Status, and Rating values must match picklist entries configured in the target org.

Examples

Create Lead from Web Form

A webhook trigger fires when a visitor submits the contact form. Map form fields to the lead node and route the new leadId to a Slack notification node.

// Webhook payload
{ "firstName": "Jane", "lastName": "Doe", "email": "jane@acme.com", "company": "Acme" }

// Node config (expressions)
{
  "FirstName": "{{trigger.firstName}}",
  "LastName": "{{trigger.lastName}}",
  "Email": "{{trigger.email}}",
  "Company": "{{trigger.company}}",
  "LeadSource": "Web",
  "Status": "Open - Not Contacted"
}

Sync LinkedIn Lead Gen Form

A scheduled workflow polls the LinkedIn Lead Gen Forms API, then for each new submission calls lead/create with campaign metadata mapped to LeadSource and Description.

{
  "FirstName": "{{item.firstName}}",
  "LastName": "{{item.lastName}}",
  "Email": "{{item.email}}",
  "Company": "{{item.companyName}}",
  "LeadSource": "Social Media",
  "Description": "LinkedIn Lead Gen — Campaign: {{item.campaignName}}"
}

Business Card Scan Integration

A mobile scan app sends parsed card data via API. The workflow creates a lead and immediately assigns it to the scanning user's Salesforce queue.

{
  "FirstName": "{{scan.first}}",
  "LastName": "{{scan.last}}",
  "Title": "{{scan.title}}",
  "Company": "{{scan.company}}",
  "Phone": "{{scan.phone}}",
  "Email": "{{scan.email}}",
  "LeadSource": "Other",
  "Description": "Scanned by: {{scan.scannedByUserId}} at {{scan.eventName}}"
}