ActionFreshsalesUpdated June 2026

How do I add a Freshsales contact?

Short answer: You can create freshsales contact in Freshsales by hand from its own interface, but it won’t repeat itself. On TinyCommand, add the Freshsales Create Freshsales Contact action to a workflow, map its 8 inputs from any upstream app, and it runs automatically every time the trigger fires. No code, and a free tier to start.

Create Freshsales Contact in Freshsales — start free
Inputs

The fields this action accepts.

Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.

FieldTypeRequiredDescription
First Name
first_name
stringRequiredFirst Name. e.g. "John"
Last Name
last_name
stringRequiredLast Name. e.g. "Doe"
Email
email
stringRequiredPrimary email address
Mobile Number
mobile_number
stringOptionalMobile Number. e.g. "+15551234567"
Work Phone
work_number
stringOptionalWork Phone. e.g. "+15559876543"
Job Title
job_title
stringOptionalJob Title. Example: VP of Engineering
Company Name
company_name
stringOptionalCompany Name. Example: Acme Inc
Lead Source
medium
stringOptionalHow this contact was acquired
Sample request
{
"first_name": "John",
"last_name": "Doe",
"email": "user@example.com",
"mobile_number": "+15551234567",
"work_number": "+15559876543"
}
Returns
{
"contact": {
"id": 1,
"email": "john@example.com",
"last_name": "Doe",
"first_name": "John"
}
}

Use these fields in downstream nodes for routing, logging, or error handling.

Triggered by

Apps that pair well as the trigger for Create Freshsales Contact.

Any of these apps can fire this action as part of a workflow.

FAQ

Questions about Create Freshsales Contact.

What does the Create Freshsales Contact action do in Freshsales?
Creates a new contact with email (dedupe), name, custom fields, and optional account association. The base hook for "form submission → push to Freshsales" sync workflows.
What inputs does Create Freshsales Contact require?
Required: First Name, Last Name, Email. Every input accepts a static value or a variable from any upstream node in your workflow.
Can I use dynamic inputs from earlier workflow nodes?
Yes. Any field on this action can pull values from upstream nodes, whether that's a form response, a trigger payload, an AI output, or a lookup result.
What happens if Freshsales returns an error?
The workflow pauses on the failed node, the error message is captured in the run log, and you can retry the run with one click. Auto-retry policies are configurable per workflow with exponential backoff up to 5 attempts.
Does Create Freshsales Contact support batch operations?
Yes. Run Create Freshsales Contact inside a Loop node to process arrays. TinyCommand handles Freshsales's rate limits automatically so you don't have to throttle manually.
More actions

Other Freshsales actions.

Action
Create Freshsales Account
Creates a company/account record. Useful for "new B2B prospect → account record before contact" workflow patterns.
Action
Create Freshsales Deal
Creates a deal with name, amount, pipeline, stage, contact. For "qualified lead → auto-create deal in the AE's pipeline" workflows.
Action
Delete Freshsales Contact
Hard-deletes a contact. For GDPR right-to-erasure workflows; for soft removal use a custom "deleted" tag or status field.
Action
Delete Freshsales Deal
Removes a deal from the pipeline. For "duplicate deal cleanup" or "lost deal archiving" maintenance workflows.
Action
Get Freshsales Contact
Returns a contact by ID with all standard and custom fields plus related deals and activities. The standard lookup before update workflows.
Action
Get Freshsales Deal
Returns a deal by ID with value, stage, contacts, activities. The lookup for forecast workflows or for cross-system reporting.
Create Freshsales Contact in Freshsales — start free