Freshsales

What Shuttio reads from Freshsales, where it lands in Attio, Clarify, Odoo, HubSpot, Pipedrive, Breakcold, Twenty, Capsule, HighLevel, ActiveCampaign, Zendesk Sell, folk, which permissions it needs and why, and what does not move.

Last updated: 7 Nov 2026

An API key, not a sign-in. Paste your account address and the key from Profile settings, API settings; Shuttio checks it before saving anything and deletes it 14 days after the migration finishes.

Object by object: What objects are supported for Freshsales migrations.

What Shuttio reads and moves

The list below describes the move into Attio. Where Clarify or Odoo differ, the destination's own article says so.

  • Accounts, contacts and deals: Straight onto companies, people and deals, with every field the account describes, custom fields included. A contact is linked to its primary account, a deal to its account and contacts.
  • Deal pipelines and stages: Every pipeline with its stages in Freshsales' order. A stage named Won or Lost keeps that meaning, and a stage Freshsales marks with a forecast type keeps the one it sends.
  • Leads, where the account has them: Only older Freshsales accounts have a Leads module. Where it exists its leads land as people with a lead status, as deals at the stage Lead, or as their own object, as you choose.
  • Notes, tasks and meetings: Notes land on the deal, person or company they were attached to, tasks become Attio tasks, and Freshsales appointments become Attio meetings.
  • Calls: Sales activities of the type Call land in Attio's Phone calls with the time, length and outcome, or as a note when the workspace has not allowed activities.
  • Owners: A deal's owner and a task's owner are matched to an Attio member by email.

Where each thing lands

Freshsales objectIn AttioIn ClarifyIn OdooIn HubSpotIn PipedriveIn BreakcoldIn TwentyIn CapsuleIn HighLevelIn ActiveCampaignIn Zendesk SellIn folk
AccountsCompaniesCompaniesPartners (companies)CompaniesOrganizationsCompaniesCompaniesOrganisationsBusinessesAccounts (matched by name, or created with a contact that works there)Organizations (matched by name, else created)Companies
ContactsPeoplePeoplePartners (contacts)ContactsPersonsPeoplePeoplePeopleContacts (put into their business)ContactsContacts (put into their organization)People
LeadsPeople, deals at the stage Lead, or their own object (you choose)Its own object, created in Clarify when it has noneCRM leadsA custom object (HubSpot Enterprise), or the one you already have with that nameLeadsNot movedA custom object, created in Twenty when it has none, or the one you already have with that nameNot movedNot movedNot movedLeadsNot moved
DealsDealsDealsCRM opportunitiesDealsDealsDealsOpportunitiesOpportunitiesOpportunities (pipeline and stage matched by name)Deals (pipelines and stages created when missing)Deals (pipeline and stage matched by name; the contact is required)Deals (an object in the group Shuttio import)

Notes, tasks, meetings, calls, files, owners and lists depend on the destination. This is the row for Freshsales, generated from the same tables the runner uses:

Into Attio

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, Leads, DealsYesYesYesYesNoNoYesNo

Into Clarify

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, Leads, DealsYesYesAs commentsAs commentsNoNoYesNo

Into Odoo

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, Leads, DealsYesYesYesYesNoNoYesNo

Into HubSpot

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, Leads, DealsYesYesYesYesNoNoYesNo

Into Pipedrive

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, Leads, DealsYesYesYesYesNoNoYesNo

Into Breakcold

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, DealsYesYesYesYesNoNoNoNo

Into Twenty

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, Leads, DealsYesYesAs notesAs notesNoNoYesNo

Into Capsule

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, DealsYesYesYesYesNoNoYesNo

Into HighLevel

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, DealsYesYesYesYesNoNoYesNo

Into ActiveCampaign

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, DealsYesAs notesAs notesAs notesNoNoYesNo

Into Zendesk Sell

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, Leads, DealsYesYesAs notesAs notesNoNoYesNo

Into folk

FromObjectsNotesTasksMeetingsCallsEmailsFilesOwnersLists
FreshsalesAccounts, Contacts, DealsYesYesYesYesNoNoYesNo

Each destination's own article says how its data is written: Attio, Clarify, Odoo, HubSpot, Pipedrive, Breakcold, Twenty, Capsule, HighLevel, ActiveCampaign, Zendesk Sell, folk.

Permissions and why

WhatWhy Shuttio needs it
Your account addressLike acme.myfreshworks.com, or acme.freshsales.io on an older account. Shuttio accepts only Freshsales and Freshworks addresses and sends the key nowhere else.
An API keyFreshsales has no OAuth for this. Shuttio checks the key against your account before it saves anything. Get it in Freshsales under your profile, Profile settings, API settings.

The key reads only what its user may see, so use a user whose role and territory cover the records you want to move. Freshsales allows 1,000 API requests an hour on the Free and Growth plans (2,000 on Pro, 5,000 on Enterprise); a large account takes hours, and the run pauses when the hour is used until you resume it. The key is stored encrypted and deleted 14 days after the migration finishes; there is nothing to revoke at Freshsales, so rotate the key there if you want it dead sooner.

Known limits

  • The hourly request limit: Freshsales allows 1,000 API requests an hour on the Free and Growth plans (2,000 on Pro, 5,000 on Enterprise). A large account takes hours: the run pauses when the hour is used and carries on when you resume it. Notes are the slowest to read when Freshsales will not hand them over with a list.
  • Products, documents and custom modules: Freshsales documents no call that lists products or CPQ documents, and this build does not read custom modules, so none of them move.
  • Activities on leads: A note, task or call attached to a lead is left out and counted in the run's report: a lead's id can equal a contact's, so it cannot be linked without guessing.
  • Files and attachments: Shuttio does not read them for this source. Files stay in Freshsales.
  • Views as lists: A Freshsales view is a saved filter, not a list of records, so Shuttio does not turn views into Attio lists.
  • Field history and email history: Shuttio reads each field's current value, not Freshsales' timeline, and it reads no emails from Freshsales.
  • Participants of a meeting: A meeting is written with its title as the only participant, so no new people are created.
  • Records outside your reach: Freshsales shows a key only the records its user's role and territory allow. Connect with a user who sees everything you want to move.
  • Emails: Shuttio reads no emails from Freshsales.

Not answered here? Email help@shuttio.com.