Skip to content
All connectors
Freshsales logo

Freshsales

CRM, sales & customer success

Keep Freshsales up to date with every customer, deal and order, without copy and paste.

27 ways to read, 24 ways to write, each write switched on by you.

Quality checks

Built and tested with example responses.

  1. Ready to connect: doneEvery listed action is built in.
  2. Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
Freshsales with Nexra

Connected, approved, proven.

The things teams do most with Freshsales, an example flow with a person in the loop, and what Nexra keeps as proof.

Top actions

  • Create appointmentApproval by rule
  • Create contactApproval by rule
  • List appointmentsRead

Example flow

  1. Freshsales · List appointmentsDone
  2. Freshsales · Create appointmentNeeds approval
  3. Nexra · Record the decision and result in the evidence chainProven

Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches Freshsales.

What gets logged

  • Whether it ran on its own or who approved it, and under which rule
  • A fingerprint of the exact request sent to Freshsales
  • Freshsales's reply: what it created or changed
  • One entry in the evidence chain, linked to the one before

Try this in the sandbox

Run the whole flow with test data in your sandbox, then connect your own account when you are ready to go live.

For developers

Technical detail

Read and write Freshsales contacts, accounts, deals, tasks, appointments, sales activities, notes, products, CPQ documents and custom module records, plus call logs, email search and list reads.

Freshworks Inc. API docs
Source actions
27
Destination actions
24
Data types
22

What you can map

Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.

Appointments4
  • Create appointmentDestinationNot retried automaticallyApproval before production

    Creates a appointment.

  • Get appointmentSource

    One appointment.

  • List appointmentsSource

    Appointments visible to the API user.

  • Update appointmentDestinationProvider duplicate protectionApproval before production

    Updates mapped appointment fields.

Configuration1
  • List configuration optionsSource

    Option lists such as deal pipelines, deal stages, lead sources, territories, contact statuses and sales activity types.

Contact activities1
  • List contact activitiesSource

    Timeline of one contact: stage changes, appointments, notes, emails and more.

Contacts lookup1
  • Look up contacts by fieldSource

    Exact lookup of contacts by email or another field.

Contacts6
  • Create contactDestinationNot retried automaticallyApproval before production

    Creates a contact with custom fields.

  • Get contactSource

    One contact with custom fields.

  • List contactsSource

    Contacts in a saved view, with custom fields.

  • Find contacts by emailSource

    Exact match of contacts on email address through filtered search; the address is sent in the JSON body.

  • Update contactDestinationProvider duplicate protectionApproval before production

    Updates mapped contact fields.

  • Upsert contactDestinationProvider duplicate protectionApproval before production

    Creates or updates a contact matched on id or a unique field (id, emails, mobile_number, external_id).

Cpq documents3
  • Create documentDestinationNot retried automaticallyApproval before production

    Creates a CPQ document such as a draft quote for a deal and contact from a template.

  • Get documentSource

    One CPQ document (for example a quote) with its products.

  • Update documentDestinationProvider duplicate protectionApproval before production

    Updates a document's stage, validity, addresses, owner or custom fields.

Custom module records3
  • Create custom module recordDestinationNot retried automaticallyApproval before production

    Creates a record in a custom module with custom fields.

  • List custom module recordsSource

    Records of a custom module (for example loans or properties) in a saved view.

  • Update custom module recordDestinationProvider duplicate protectionApproval before production

    Updates a custom module record's name, owner or custom fields.

Custom module views1
  • List custom module viewsSource

    Saved views of a custom module; use the ID with List custom module records.

Deal products1
  • List deal productsSource

    Products attached to one deal with quantity, price and discount.

Deals5
  • Create dealDestinationNot retried automaticallyApproval before production

    Creates a deal with custom fields.

  • Get dealSource

    One deal with custom fields.

  • List dealsSource

    Deals in a saved view, with custom fields.

  • Update dealDestinationProvider duplicate protectionApproval before production

    Updates mapped deal fields.

  • Upsert dealDestinationProvider duplicate protectionApproval before production

    Creates or updates a deal matched on id or a unique field (id or a unique custom field).

Fields1
  • List fieldsSource

    Form fields for contacts, accounts, deals or sales activities, including custom fields and choices.

Marketing list contacts1
  • List contacts in a marketing listSource

    Contacts that belong to one marketing list.

Marketing lists1
  • List marketing listsSource

    Marketing lists (read-only; list membership changes are not automated).

Notes2
  • Create noteDestinationNot retried automaticallyApproval before production

    Adds a note to a contact, account or deal.

  • Update noteDestinationProvider duplicate protectionApproval before production

    Updates the text of a note.

Phone calls1
  • Log callDestinationNot retried automaticallyApproval before production

    Logs a manual call against an existing contact, with an optional note. It does not place a call.

Products3
  • Create productDestinationNot retried automaticallyApproval before production

    Creates a product.

  • Get productSource

    One product.

  • Update productDestinationProvider duplicate protectionApproval before production

    Updates mapped product fields.

Records1
  • Search recordsSource

    Full-text search across contacts, accounts, deals and users.

Sales accounts5
  • Create accountDestinationNot retried automaticallyApproval before production

    Creates a account with custom fields.

  • Get accountSource

    One account with custom fields.

  • List accountsSource

    Accounts in a saved view, with custom fields.

  • Update accountDestinationProvider duplicate protectionApproval before production

    Updates mapped account fields.

  • Upsert accountDestinationProvider duplicate protectionApproval before production

    Creates or updates a account matched on id or a unique field (id, name).

Sales activities4
  • Create sales activityDestinationNot retried automaticallyApproval before production

    Creates a sales activity.

  • Get sales activitySource

    One sales activity.

  • List sales activitiesSource

    Sales activities visible to the API user.

  • Update sales activityDestinationProvider duplicate protectionApproval before production

    Updates mapped sales activity fields.

Tasks4
  • Create taskDestinationNot retried automaticallyApproval before production

    Creates a task.

  • Get taskSource

    One task.

  • List tasksSource

    Tasks visible to the API user.

  • Update taskDestinationProvider duplicate protectionApproval before production

    Updates mapped task fields.

Users1
  • List usersSource

    Users (owners) in the Freshsales account.

Views1
  • List viewsSource

    Saved views (filters) for contacts, accounts or deals; use the ID with the list operations.

Access and limits

Authentication
Freshsales API key (Authorization: Token token=...)
Plans and access
All Freshsales (Freshworks CRM) plans include the REST API; CPQ products need plans with CPQ. The API key acts as its user and returns only records that user can access.
Test environment
Use a Freshsales trial account or a sandbox on Enterprise plans.
Rate limits
1,000 API requests per hour per account (higher on some plans); HTTP 429 when exceeded.
Pagination
page (from 1) and per_page with meta.total_pages; the default page size is 25.
Provider events
Workflow automations can call a webhook on record events, with custom headers (no signature). Flows can start the moment something happens: when a contact is created; when a contact is updated; when a deal is created; when a deal is updated.

Before you build a flow

  • Uses the myfreshworks.com/crm/sales API. Legacy *.freshsales.io accounts and freshworks.com aliases are not supported.
  • Contacts, accounts and deals are listed through saved views (List views provides the view IDs).
  • per_page is sent with the page size; Freshworks documents the default of 25 but not a maximum, so Nexra caps it at 100.
  • Contact subscription status, subscription types and do-not-disturb are returned read-only and never written.
  • Notes can be created and updated but Freshsales documents no notes list endpoint; products have no documented list endpoint.
  • Freshsales has no idempotency key; uncertain creates are not repeated automatically. Upserts converge on the unique identifier.
  • Deletes, forgets, clones, restores, bulk jobs, owner bulk-assignment, team member changes, marketing list creation and membership changes, document product line edits and email sending are not automated.
  • Look up contacts by field (contacts_lookup.search) and Search records (records.search) send the search value in the URL query because that is the only form of those Freshsales endpoints.
  • Filtered search is documented for contacts by email only (contact_email.email with is_in); other attributes are not exposed.
  • Contact activities return the most recent entries up to the limit and are not paginated.
  • Custom module views use GET /api/{module}/filters as documented; the documentation shows no single-record read for custom modules, so none is offered.
  • The marketing list contacts response shape (contacts with meta.total_pages) is inferred from the other list endpoints; the documentation's example is empty.

Developer reference

  1. Create the Freshworks Inc. credentials described above with the narrowest permissions your flows need.
  2. In Nexra, open Connect, then Connections, then New connection, choose Freshsales, enter its settings and credentials, and tick only the write actions you need. Connection guide
  3. Test the connection, then use its actions as flow sources and destinations. Flow guide

Machine-readable detail: GET /api/public/connect/connectors/freshsales and the Connections API.