Salesloft connector
OAuth 2.0CRM & SalesAutomationCommunicationConnect with Salesloft to manage people, cadences, accounts, activities, emails, calls, and notes
Salesloft connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret> -
Set up the connector
Section titled “Set up the connector”Register your Salesloft credentials with Scalekit so it handles the token lifecycle. You do this once per environment.
Dashboard setup steps
Register your Scalekit environment with the Salesloft connector so Scalekit handles the OAuth 2.0 flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically.
-
Create a Salesloft OAuth application
-
Sign in to Salesloft and go to Settings → Your Applications → OAuth Applications.
-
Click + New Application.
-
Fill in the application name (e.g.,
My Sales Agent) and description. -
In the Redirect URI field, paste the redirect URI from Scalekit (see step 2 — you can return to add it after).
-
Under Scopes, select the permissions your agent needs:
Scope Enables readRead access to contacts, cadences, and activities writeCreate and update records -
Click Save. On the application detail page, copy your Client ID and Client Secret.

-
-
Create a connection in Scalekit
- In Scalekit dashboard, go to AgentKit > Connections > Create Connection. Find Salesloft and click Create.
- Click Use your own credentials and copy the Redirect URI:
https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback - Return to your Salesloft OAuth app and add this redirect URI.
- Back in Scalekit, enter your Client ID, Client Secret, and the Permissions (scopes) you selected.
- Note the Connection name (e.g.,
salesloft) — use this asconnection_namein your code. - Click Save.
-
Add a connected account
Via dashboard (for testing)
- Open the connection and click the Connected Accounts tab → Add account.
- Enter a User ID and click Save. You will be redirected to Salesloft to authorize access.
Via API (for production)
const { link } = await scalekit.actions.getAuthorizationLink({connectionName: 'salesloft',identifier: 'user_123',});// Redirect your user to `link` to authorize accessconsole.log('Authorize at:', link);response = scalekit_client.actions.get_authorization_link(connection_name="salesloft",identifier="user_123")# Redirect your user to response.link to authorize accessprint("Authorize at:", response.link)
-
-
Authorize and make your first call
Section titled “Authorize and make your first call”quickstart.ts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENV_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'salesloft'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Salesloft:', link)process.stdout.write('Press Enter after authorizing...')await new Promise(r => process.stdin.once('data', r))// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'salesloft_accounts_list',toolInput: {},})console.log(result)quickstart.py import osfrom scalekit.client import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENV_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "salesloft"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Salesloft:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="salesloft_accounts_list",connection_name=connection_name,identifier=identifier,)print(result)
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- List users, tasks, people — Fetch multiple user records from Salesloft
- Get users, tasks, people — Fetch the authenticated current user’s information from Salesloft
- Update tasks, people, notes — Update an existing task in Salesloft by its ID
- Delete tasks, people, notes — Delete a task from Salesloft by its ID
- Create tasks, people, notes — Create a new task in Salesloft
Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
salesloft_accounts_create#Create a new account record in Salesloft. Both name and domain are required; domain must be unique on the team.27 params
Create a new account record in Salesloft. Both name and domain are required; domain must be unique on the team.
domainstringrequiredDomain of the account (e.g. acmecorp.com). Used as the unique identifier for the account.namestringrequiredName of the account/companyaccount_tier_idintegeroptionalID of the Account Tier for this accountcitystringoptionalCity where the account is locatedcompany_stage_idintegeroptionalID of the CompanyStage assigned to this accountcompany_typestringoptionalType of company (e.g. prospect, customer, partner)conversational_namestringoptionalConversational name of the company (e.g. Acme instead of Acme Corporation)countrystringoptionalCountry where the account is locatedcrm_idstringoptionalCRM record ID for this account. Requires Salesforce.crm_id_typestringoptionalThe CRM that the provided crm_id is for. Must be: salesforcecustom_fieldsobjectoptionalCustom fields defined by the team. Only fields with values appear in the API.descriptionstringoptionalDescription of the accountdo_not_contactbooleanoptionalIf true, the account will be marked as do not contactfoundedstringoptionalDate or year of foundingindustrystringoptionalIndustry of the accountlinkedin_urlstringoptionalLinkedIn page URL for the accountlocalestringoptionalTime locale for the accountowner_idintegeroptionalID of the user who owns this accountphonestringoptionalPhone number for the accountpostal_codestringoptionalPostal/ZIP code of the accountrevenue_rangestringoptionalRevenue range of the accountsizestringoptionalNumber of employees at the accountstatestringoptionalState or region where the account is locatedstreetstringoptionalStreet address of the accounttagsarrayoptionalAll tags applied to this accounttwitter_handlestringoptionalTwitter handle for the account (without @)websitestringoptionalWebsite URL of the accountsalesloft_accounts_delete#Delete an account from Salesloft by its ID. This operation is not reversible without contacting support.1 param
Delete an account from Salesloft by its ID. This operation is not reversible without contacting support.
account_idintegerrequiredThe unique identifier of the account to deletesalesloft_accounts_get#Fetch a single account record from Salesloft by its ID.1 param
Fetch a single account record from Salesloft by its ID.
account_idintegerrequiredThe unique identifier of the account to fetchsalesloft_accounts_list#Fetch multiple account records from Salesloft. The records can be filtered by domain, owner, tags, timestamps, and more, and paged and sorted according to the respective parameters.40 params
Fetch multiple account records from Salesloft. The records can be filtered by domain, owner, tags, timestamps, and more, and paged and sorted according to the respective parameters.
account_stage_idintegeroptionalFilter accounts by account stage IDaccount_tier_idintegeroptionalFilter accounts by account tier IDaccount_typestringoptionalFilter accounts by type (e.g. prospect, customer, partner)archivedbooleanoptionalFilter to return archived accounts onlycitystringoptionalFilter accounts by citycountrystringoptionalFilter accounts by countrycreated_at_gtstringoptionalFilter accounts created after this ISO8601 timestamp (exclusive)created_at_gtestringoptionalFilter accounts created at or after this ISO8601 timestamp (inclusive)created_at_ltstringoptionalFilter accounts created before this ISO8601 timestamp (exclusive)created_at_ltestringoptionalFilter accounts created at or before this ISO8601 timestamp (inclusive)crm_idstringoptionalFilter accounts by CRM record IDdomainstringoptionalFilter accounts by domain. Domains are unique and lowercase.has_open_opportunitybooleanoptionalFilter to accounts that have an open opportunityidsstringoptionalFilter by specific account IDs. Comma-separated list of IDs.include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadataindustrystringoptionalFilter accounts by industrylast_contacted_gtstringoptionalFilter accounts last contacted after this ISO8601 timestamp (exclusive)last_contacted_gtestringoptionalFilter accounts last contacted at or after this ISO8601 timestamp (inclusive)last_contacted_ltstringoptionalFilter accounts last contacted before this ISO8601 timestamp (exclusive)last_contacted_ltestringoptionalFilter accounts last contacted at or before this ISO8601 timestamp (inclusive)limit_paging_countsbooleanoptionalLimit the paging counts returned in the response metadatalocalesstringoptionalFilter accounts by locale. Comma-separated list of locales.namestringoptionalFilter accounts by nameowner_crm_idstringoptionalFilter accounts by the CRM ID of the ownerowner_idintegeroptionalFilter accounts by owner user IDowner_is_activebooleanoptionalFilter accounts whose owner is active (true) or inactive (false)pageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.prospector_engagement_levelstringoptionalFilter accounts by prospector engagement levelsort_bystringoptionalField to sort results by. Accepted values: created_at, updated_at, last_contacted_at, account_stage, account_stage_name, account_tier, account_tier_name, name, counts_people, prospector_engagement_score. Defaults to updated_at.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.statestringoptionalFilter accounts by state or regiontagstringoptionalFilter accounts by tag nametag_idintegeroptionalFilter accounts by tag IDupdated_at_gtstringoptionalFilter accounts updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter accounts updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter accounts updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter accounts updated at or before this ISO8601 timestamp (inclusive)websitestringoptionalFilter accounts by website URLyour_related_accounts_activebooleanoptionalFilter to accounts where you have an active relationshipsalesloft_accounts_update#Update an existing account record in Salesloft by its ID.29 params
Update an existing account record in Salesloft by its ID.
account_idintegerrequiredThe unique identifier of the account to updateaccount_tier_idintegeroptionalUpdated Account Tier ID for this accountarchivedbooleanoptionalWhether this account should be archived. Setting to true sets archived_at to now; setting to false clears it.citystringoptionalUpdated city of the accountcompany_stage_idintegeroptionalUpdated CompanyStage ID for this accountcompany_typestringoptionalUpdated type of companyconversational_namestringoptionalUpdated conversational name of the companycountrystringoptionalUpdated country of the accountcrm_idstringoptionalUpdated CRM record ID for this accountcrm_id_typestringoptionalThe CRM that the provided crm_id is for. Must be: salesforcecustom_fieldsobjectoptionalUpdated custom fields for the accountdescriptionstringoptionalUpdated description of the accountdo_not_contactbooleanoptionalUpdated do not contact status of the accountdomainstringoptionalUpdated domain of the accountfoundedstringoptionalUpdated date or year of foundingindustrystringoptionalUpdated industry of the accountlinkedin_urlstringoptionalUpdated LinkedIn page URL for the accountlocalestringoptionalUpdated time locale for the accountnamestringoptionalUpdated name of the account/companyowner_idintegeroptionalUpdated owner user ID for the accountphonestringoptionalUpdated phone number for the accountpostal_codestringoptionalUpdated postal/ZIP code of the accountrevenue_rangestringoptionalUpdated revenue range of the accountsizestringoptionalUpdated number of employees at the accountstatestringoptionalUpdated state or region of the accountstreetstringoptionalUpdated street address of the accounttagsarrayoptionalUpdated tags applied to this accounttwitter_handlestringoptionalUpdated Twitter handle for the accountwebsitestringoptionalUpdated website URL of the accountsalesloft_actions_get#Fetch a single action record from Salesloft by its ID. Actions represent individual cadence steps that are due to be performed.1 param
Fetch a single action record from Salesloft by its ID. Actions represent individual cadence steps that are due to be performed.
action_idintegerrequiredThe unique identifier of the action to fetchsalesloft_actions_list#Fetch multiple action records from Salesloft. Actions are individual steps within cadences that are due to be performed. The records can be filtered, paged, and sorted.21 params
Fetch multiple action records from Salesloft. Actions are individual steps within cadences that are due to be performed. The records can be filtered, paged, and sorted.
cadence_idintegeroptionalFilter actions by cadence IDdue_on_gtstringoptionalFilter actions with due date after this ISO8601 timestamp (exclusive)due_on_gtestringoptionalFilter actions with due date at or after this ISO8601 timestamp (inclusive)due_on_ltstringoptionalFilter actions with due date before this ISO8601 timestamp (exclusive)due_on_ltestringoptionalFilter actions with due date at or before this ISO8601 timestamp (inclusive)idsstringoptionalFilter by specific action IDs. Comma-separated list of IDs.include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatalimit_paging_countsbooleanoptionalLimit the paging counts returned in the response metadatamultitouch_group_idintegeroptionalFilter actions by multitouch group IDpageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.person_idintegeroptionalFilter actions by associated person IDsort_bystringoptionalField to sort results by. Accepted values: created_at, updated_at. Defaults to updated_at.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.step_idintegeroptionalFilter actions by cadence step IDtypestringoptionalFilter actions by type (e.g. email, phone, other)updated_at_gtstringoptionalFilter actions updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter actions updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter actions updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter actions updated at or before this ISO8601 timestamp (inclusive)user_guidstringoptionalFilter actions by user GUIDsalesloft_cadence_memberships_create#Add a person to a cadence by creating a cadence membership in Salesloft. person_id and cadence_id are required and must be visible to the authenticated user.5 params
Add a person to a cadence by creating a cadence membership in Salesloft. person_id and cadence_id are required and must be visible to the authenticated user.
cadence_idintegerrequiredThe ID of the cadence to add the person toperson_idintegerrequiredThe ID of the person to add to the cadencestep_idintegeroptionalID of the step on which the person should start the cadence. Defaults to the first step.task_idintegeroptionalID of the task that causes this action. The task will be completed automatically on success.user_idintegeroptionalID of the user to create the cadence membership for. The associated cadence must be owned by the user or be a team cadence.salesloft_cadence_memberships_delete#Remove a person from a cadence by deleting their cadence membership in Salesloft.1 param
Remove a person from a cadence by deleting their cadence membership in Salesloft.
membership_idintegerrequiredThe unique identifier of the cadence membership to deletesalesloft_cadence_memberships_get#Fetch a single cadence membership record from Salesloft by its ID.1 param
Fetch a single cadence membership record from Salesloft by its ID.
membership_idintegerrequiredThe unique identifier of the cadence membership to fetchsalesloft_cadence_memberships_list#Fetch multiple cadence membership records from Salesloft. A cadence membership is the association between a person and their current and historical time on a cadence.14 params
Fetch multiple cadence membership records from Salesloft. A cadence membership is the association between a person and their current and historical time on a cadence.
cadence_idintegeroptionalFilter memberships by cadence IDcurrently_on_cadencebooleanoptionalFilter to memberships where the person is currently active on the cadenceidsstringoptionalFilter by specific membership IDs. Comma-separated list of IDs.include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatalimit_paging_countsbooleanoptionalLimit the paging counts returned in the response metadatapageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.person_idintegeroptionalFilter memberships by person IDsort_bystringoptionalField to sort results by. Accepted values: added_at, updated_at. Defaults to updated_at.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.updated_at_gtstringoptionalFilter memberships updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter memberships updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter memberships updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter memberships updated at or before this ISO8601 timestamp (inclusive)salesloft_cadences_get#Fetch a single cadence record from Salesloft by its ID.1 param
Fetch a single cadence record from Salesloft by its ID.
cadence_idintegerrequiredThe unique identifier of the cadence to fetchsalesloft_cadences_list#Fetch multiple cadence records from Salesloft. The records can be filtered, paged, and sorted according to the respective parameters.21 params
Fetch multiple cadence records from Salesloft. The records can be filtered, paged, and sorted according to the respective parameters.
archivedbooleanoptionalFilter to return archived cadencesgroup_idsstringoptionalFilter cadences by group IDs. Comma-separated list or JSON array string.idsstringoptionalFilter by specific cadence IDs. Comma-separated list of IDs.include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatalimit_paging_countsbooleanoptionalLimit the paging counts returned in the response metadatanamestringoptionalFilter cadences by nameoverride_contact_restrictionsbooleanoptionalOverride contact restrictions when filtering cadencesowned_by_guidstringoptionalFilter cadences by owner GUIDpageintegeroptionalPage number for pagination, starting from 1pending_actions_assigned_tostringoptionalFilter cadences by the user GUID that pending actions are assigned topeople_addablebooleanoptionalFilter to cadences that people can be added toper_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.sharedbooleanoptionalFilter to cadences that are sharedsort_bystringoptionalField to sort results by. Accepted values: created_at, updated_at, name. Defaults to updated_at.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.tag_idsstringoptionalFilter cadences by tag IDs. Comma-separated list of tag IDs.team_cadencebooleanoptionalFilter by team cadences (true) or personal cadences (false)updated_at_gtstringoptionalFilter cadences updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter cadences updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter cadences updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter cadences updated at or before this ISO8601 timestamp (inclusive)salesloft_calls_get#Fetch a single call activity record from Salesloft by its ID.1 param
Fetch a single call activity record from Salesloft by its ID.
call_idintegerrequiredThe unique identifier of the call to fetchsalesloft_calls_list#Fetch multiple call activity records from Salesloft. The records can be filtered by person, user, sentiment, disposition, and timestamps, and paged and sorted.21 params
Fetch multiple call activity records from Salesloft. The records can be filtered by person, user, sentiment, disposition, and timestamps, and paged and sorted.
connectedbooleanoptionalFilter to calls where a connection was madecreated_at_gtstringoptionalFilter calls created after this ISO8601 timestamp (exclusive)created_at_gtestringoptionalFilter calls created at or after this ISO8601 timestamp (inclusive)created_at_ltstringoptionalFilter calls created before this ISO8601 timestamp (exclusive)created_at_ltestringoptionalFilter calls created at or before this ISO8601 timestamp (inclusive)dispositionstringoptionalFilter calls by disposition (e.g. answered, voicemail, no_answer)idsstringoptionalFilter by specific call IDs. Comma-separated list of IDs.include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatalimit_paging_countsbooleanoptionalLimit the paging counts returned in the response metadatapageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.person_idintegeroptionalFilter calls by associated person IDpositivebooleanoptionalFilter to calls marked as positivesentimentstringoptionalFilter calls by sentiment (e.g. positive, neutral, negative)sort_bystringoptionalField to sort results by. Accepted values: created_at, updated_at. Defaults to updated_at.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.updated_at_gtstringoptionalFilter calls updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter calls updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter calls updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter calls updated at or before this ISO8601 timestamp (inclusive)user_guidstringoptionalFilter calls by user GUIDsalesloft_email_templates_get#Fetch a single email template record from Salesloft by its ID.2 params
Fetch a single email template record from Salesloft by its ID.
email_template_idintegerrequiredThe unique identifier of the email template to fetchinclude_signaturebooleanoptionalWhether to include the email signature in the responsesalesloft_email_templates_list#Fetch multiple email template records from Salesloft. The records can be filtered by title, tag, group, cadence, and timestamps, and paged and sorted.20 params
Fetch multiple email template records from Salesloft. The records can be filtered by title, tag, group, cadence, and timestamps, and paged and sorted.
cadence_idintegeroptionalFilter email templates by cadence IDfilter_by_ownerbooleanoptionalFilter to return only templates owned by the authenticated usergroup_idintegeroptionalFilter email templates by group IDidsstringoptionalFilter by specific email template IDs. Comma-separated list of IDs.include_archived_templatesbooleanoptionalWhether to include archived templates in the resultsinclude_cadence_templatesbooleanoptionalWhether to include cadence-specific templates in the resultsinclude_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatalimit_paging_countsbooleanoptionalLimit the paging counts returned in the response metadatalinked_to_team_templatebooleanoptionalFilter to return only templates linked to a team templatepageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.searchstringoptionalFilter email templates by title or subjectsort_bystringoptionalField to sort results by. Accepted values: created_at, updated_at, last_used_at. Defaults to updated_at.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.tagstringoptionalFilter email templates by tag nametag_idsstringoptionalFilter email templates by tag IDs. Comma-separated list of tag IDs.updated_at_gtstringoptionalFilter templates updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter templates updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter templates updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter templates updated at or before this ISO8601 timestamp (inclusive)salesloft_emails_get#Fetch a single email activity record from Salesloft by its ID.2 params
Fetch a single email activity record from Salesloft by its ID.
email_idintegerrequiredThe unique identifier of the email to fetchscoped_fieldsstringoptionalComma-separated list of fields to scope the response tosalesloft_emails_list#Fetch multiple email activity records from Salesloft. The records can be filtered by person, account, cadence, status, timestamps, and engagement signals, and paged and sorted.33 params
Fetch multiple email activity records from Salesloft. The records can be filtered by person, account, cadence, status, timestamps, and engagement signals, and paged and sorted.
account_idintegeroptionalFilter emails by associated account IDaction_idintegeroptionalFilter emails by action IDbouncedbooleanoptionalFilter to only bounced emailscadence_idintegeroptionalFilter emails by cadence IDcrm_activity_idstringoptionalFilter emails by CRM activity IDdraft_with_aibooleanoptionalFilter to emails drafted with AI assistanceemail_addressesstringoptionalFilter emails by recipient email address(es). Comma-separated list.email_template_idintegeroptionalFilter emails by the email template usedhas_clicksbooleanoptionalFilter to emails that have link clickshas_repliesbooleanoptionalFilter to emails that have replieshas_viewsbooleanoptionalFilter to emails that have been viewed/openedidsstringoptionalFilter by specific email IDs. Comma-separated list of IDs.include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatalimit_paging_countsbooleanoptionalLimit the paging counts returned in the response metadataone_offbooleanoptionalFilter to one-off emails (not part of a cadence)pageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.person_idintegeroptionalFilter emails by associated person IDpersonalizationstringoptionalFilter emails by personalization valuescoped_fieldsstringoptionalComma-separated list of fields to scope the response tosent_at_gtstringoptionalFilter emails sent after this ISO8601 timestamp (exclusive)sent_at_gtestringoptionalFilter emails sent at or after this ISO8601 timestamp (inclusive)sent_at_ltstringoptionalFilter emails sent before this ISO8601 timestamp (exclusive)sent_at_ltestringoptionalFilter emails sent at or before this ISO8601 timestamp (inclusive)sort_bystringoptionalField to sort results by. Accepted values: updated_at, recipient, send_time, account, subject, views, clicks, replies. Defaults to updated_at.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.statusstringoptionalFilter emails by statusstep_idintegeroptionalFilter emails by cadence step IDupdated_at_gtstringoptionalFilter emails updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter emails updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter emails updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter emails updated at or before this ISO8601 timestamp (inclusive)user_idintegeroptionalFilter emails by user IDsalesloft_notes_create#Create a new note in Salesloft. Notes require content, an associated object type (person or account), and the ID of that object. Optionally link the note to a call.8 params
Create a new note in Salesloft. Notes require content, an associated object type (person or account), and the ID of that object. Optionally link the note to a call.
associated_with_idintegerrequiredID of the person or account to associate the note withassociated_with_typestringrequiredType of object the note is associated with. Accepted values: person, accountcontentstringrequiredThe text content of the notecall_idintegeroptionalID of the call to associate this note with. The call cannot already have a note.crm_activity_metadataobjectoptionalJSONB metadata for CRM activity trackingskip_crm_syncbooleanoptionalIf true, the note will not be synced to the CRMsubjectstringoptionalThe subject of the note's CRM activity. Defaults to 'Note'.user_guidstringoptionalGUID of the user to create the note for. Only team admins may create notes on behalf of other users. Defaults to the requesting user.salesloft_notes_delete#Delete a note from Salesloft by its ID. Only notes owned by the authorized account can be deleted.1 param
Delete a note from Salesloft by its ID. Only notes owned by the authorized account can be deleted.
note_idintegerrequiredThe unique identifier of the note to deletesalesloft_notes_get#Fetch a single note record from Salesloft by its ID.1 param
Fetch a single note record from Salesloft by its ID.
note_idintegerrequiredThe unique identifier of the note to fetchsalesloft_notes_list#Fetch multiple note records from Salesloft. The records can be filtered by associated object, timestamps, and IDs, and paged and sorted.13 params
Fetch multiple note records from Salesloft. The records can be filtered by associated object, timestamps, and IDs, and paged and sorted.
associated_with_idintegeroptionalFilter notes by the ID of the associated person or account. associated_with_type must also be present.associated_with_typestringoptionalType of the associated object. Accepted values: person, accountidsstringoptionalFilter by specific note IDs. Comma-separated list of IDs.include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatalimit_paging_countsbooleanoptionalLimit the paging counts returned in the response metadatapageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.sort_bystringoptionalField to sort results by. Accepted values: created_at, updated_at. Defaults to updated_at.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.updated_at_gtstringoptionalFilter notes updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter notes updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter notes updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter notes updated at or before this ISO8601 timestamp (inclusive)salesloft_notes_update#Update an existing note in Salesloft by its ID.4 params
Update an existing note in Salesloft by its ID.
contentstringrequiredThe text content of the notenote_idintegerrequiredThe unique identifier of the note to updatecall_idintegeroptionalID of the call to associate this note with. If the note is already associated to a call, it will become associated to the requested call.crm_activity_metadataobjectoptionalJSONB metadata for CRM activity trackingsalesloft_people_create#Create a new person record in Salesloft. Either email_address or phone and last_name must be provided as a unique lookup on the team.38 params
Create a new person record in Salesloft. Either email_address or phone and last_name must be provided as a unique lookup on the team.
account_idintegeroptionalID of the Account to link this person toautotag_datebooleanoptionalWhether to add today's date as a tag to this person in Y-m-d format. Default is false.citystringoptionalCity where the person is locatedcontact_restrictionsarrayoptionalCommunication methods to prevent for this person. Accepted values: call, email, messagecountrystringoptionalCountry where the person is locatedcrm_idstringoptionalID of the person in your external CRM. Requires crm_id_type. Salesforce IDs must be exactly 18 characters and a Lead (00Q) or Contact (003) object.crm_id_typestringoptionalThe CRM that the provided crm_id is for. Must be one of: salesforcecustom_fieldsobjectoptionalCustom fields defined by the team for this persondo_not_contactbooleanoptionalIf true, prevents this person from being called, emailed, or added to a cadenceemail_addressstringoptionalEmail address of the person. Required if phone and last_name are not provided.eu_residentbooleanoptionalWhether this person is a European Resident for GDPR complianceexternal_sourcestringoptionalThe name of the external source from where this person was importedfirst_namestringoptionalFirst name of the personhome_phonestringoptionalHome phone number without formattingimport_idintegeroptionalID of the Import this person is a part ofjob_senioritystringoptionalJob seniority of the person. Accepted values: director, executive, individual_contributor, manager, vice_president, unknownlast_namestringoptionalLast name of the person. Required together with phone if email_address is not provided.linkedin_urlstringoptionalLinkedIn profile URL of the personlocalestringoptionalTime locale of the personmobile_phonestringoptionalMobile phone number without formattingowner_idintegeroptionalID of the User that owns this personperson_company_industrystringoptionalCompany industry specific to this person, unrelated to the linked company objectperson_company_namestringoptionalCompany name specific to this person, unrelated to the linked company objectperson_company_websitestringoptionalCompany website specific to this person, unrelated to the linked company objectperson_stage_idintegeroptionalID of the PersonStage of this personpersonal_email_addressstringoptionalPersonal email address of the personpersonal_websitestringoptionalPersonal website URL of the personphonestringoptionalPhone number without formattingphone_extensionstringoptionalPhone extension without formattingsecondary_email_addressstringoptionalAlternate email address of the personskip_permission_checksbooleanoptionalFlag to indicate this is an intake form request that should bypass permission checksstatestringoptionalState or region where the person is locatedtagsarrayoptionalAll tags applied to this persontitlestringoptionalJob title of the persontwitter_handlestringoptionalTwitter handle of the personwork_citystringoptionalWork location city of the personwork_countrystringoptionalWork location country of the personwork_statestringoptionalWork location state or region of the personsalesloft_people_delete#Delete a person from Salesloft by their ID. This operation is not reversible without contacting support.1 param
Delete a person from Salesloft by their ID. This operation is not reversible without contacting support.
person_idintegerrequiredThe unique identifier of the person to deletesalesloft_people_get#Fetch a single person record from Salesloft by their ID.1 param
Fetch a single person record from Salesloft by their ID.
person_idintegerrequiredThe unique identifier of the person to fetchsalesloft_people_list#Fetch multiple person records from Salesloft. The records can be filtered by email, account, stage, owner, cadence, contact restrictions, timestamps, and more, and paged and sorted.53 params
Fetch multiple person records from Salesloft. The records can be filtered by email, account, stage, owner, cadence, contact restrictions, timestamps, and more, and paged and sorted.
account_idstringoptionalFilter people by account ID. Comma-separated list for multiple values.active_cadencesbooleanoptionalFilter people by whether they have an active cadencebouncedbooleanoptionalFilter people by whether an email sent to them bouncedcadence_idstringoptionalFilter people by the cadence they are currently on. Comma-separated list. Use _is_null to filter people not on a cadence.can_callbooleanoptionalFilter people who can be called given do_not_contact and contact_restrictionscan_emailbooleanoptionalFilter people who can be emailed given do_not_contact and contact_restrictionscan_textbooleanoptionalFilter people who can be sent a text message given do_not_contact and contact_restrictionscitystringoptionalFilter people by city. Supports partial matching. Comma-separated list for multiple values.companystringoptionalFilter people by company name. Comma-separated list for multiple values.countrystringoptionalFilter people by country. Supports partial matching. Comma-separated list for multiple values.created_at_gtstringoptionalFilter people created after this ISO8601 timestamp (exclusive)created_at_gtestringoptionalFilter people created at or after this ISO8601 timestamp (inclusive)created_at_ltstringoptionalFilter people created before this ISO8601 timestamp (exclusive)created_at_ltestringoptionalFilter people created at or before this ISO8601 timestamp (inclusive)crm_idstringoptionalFilter people by CRM ID. Comma-separated list for multiple values.custom_fieldsobjectoptionalFilter people by custom field values. Custom field names are case-sensitive; values are case-insensitive.do_not_contactbooleanoptionalFilter people by their do_not_contact statusemail_addressesstringoptionalFilter people by email address(es). Comma-separated list. Use _is_null to filter people with no email.eu_residentbooleanoptionalFilter people by whether they are marked as a European Union Residentfirst_namestringoptionalFilter people by first name. Comma-separated list for multiple values.idsstringoptionalFilter by specific person IDs. Comma-separated list of IDs.import_idstringoptionalFilter people by import ID. Comma-separated list. Use _is_null to filter people not imported.include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatajob_senioritystringoptionalFilter people by job seniority. Comma-separated list. Use _is_null to filter people without a seniority.last_contacted_gtstringoptionalFilter people last contacted after this ISO8601 timestamp (exclusive)last_contacted_gtestringoptionalFilter people last contacted at or after this ISO8601 timestamp (inclusive)last_contacted_ltstringoptionalFilter people last contacted before this ISO8601 timestamp (exclusive)last_contacted_ltestringoptionalFilter people last contacted at or before this ISO8601 timestamp (inclusive)last_contacted_typestringoptionalFilter people by last contacted type. Comma-separated list for multiple values.last_namestringoptionalFilter people by last name. Comma-separated list for multiple values.limit_paging_countsbooleanoptionalSpecifies whether the max limit of 10k records should be applied to pagination countslocalesstringoptionalFilter people by locale. Comma-separated list. Use Null to filter people without a locale.newbooleanoptionalFilter people who have never been on a cadence or contacted in any wayowned_by_guidstringoptionalFilter people by the owner's GUID. Comma-separated list for multiple values.owner_crm_idstringoptionalFilter people by owner CRM ID. Comma-separated list. Use _is_null to filter unowned people.owner_idstringoptionalFilter people by owner user ID. Comma-separated list for multiple values.owner_is_activebooleanoptionalFilter people by whether the owner is activepageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.person_stage_idstringoptionalFilter people by person stage ID. Comma-separated list. Use _is_null to filter people with no stage.phone_numberbooleanoptionalFilter people by whether they have a phone numberrepliedbooleanoptionalFilter people by whether they have replied to an emailsort_bystringoptionalField to sort results by. Accepted values: created_at, updated_at, last_contacted_at, name, title, job_seniority, call_count, sent_emails, clicked_emails, replied_emails, viewed_emails, account, cadence_stage_name. Defaults to updated_at.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.starred_by_guidstringoptionalFilter people who have been starred by the given user GUIDs. Comma-separated list.statestringoptionalFilter people by state. Supports partial matching. Comma-separated list for multiple values.successbooleanoptionalFilter people by whether they have been marked as a successtag_idstringoptionalFilter people by tag ID. Comma-separated list. Use _is_null or _is_not_null to filter by tag presence.titlestringoptionalFilter people by job title. Supports partial matching. Comma-separated list for multiple values.updated_at_gtstringoptionalFilter people updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter people updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter people updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter people updated at or before this ISO8601 timestamp (inclusive)salesloft_people_update#Update an existing person record in Salesloft by their ID.38 params
Update an existing person record in Salesloft by their ID.
person_idintegerrequiredThe unique identifier of the person to updateaccount_idintegeroptionalUpdated account ID for this personcitystringoptionalUpdated city of the personcontact_restrictionsarrayoptionalCommunication methods to prevent for this person. Accepted values: call, email, messagecountrystringoptionalUpdated country of the personcrm_idstringoptionalID of the person in your external CRM. Requires crm_id_type. Salesforce IDs must be exactly 18 characters and a Lead (00Q) or Contact (003) object.crm_id_typestringoptionalThe CRM that the provided crm_id is for. Must be one of: salesforcecustom_fieldsobjectoptionalUpdated custom fields for the persondo_not_contactbooleanoptionalUpdate the do not contact status of the personemail_addressstringoptionalUpdated email address of the personeu_residentbooleanoptionalWhether this person is a European Resident for GDPR complianceexternal_sourcestringoptionalThe name of the external source from where this person was importedfirst_namestringoptionalUpdated first name of the personhome_phonestringoptionalUpdated home phone number of the personimport_idintegeroptionalID of the import this person was part ofjob_senioritystringoptionalJob seniority of the person. Accepted values: director, executive, individual_contributor, manager, vice_president, unknownlast_namestringoptionalUpdated last name of the personlinkedin_urlstringoptionalUpdated LinkedIn profile URLlocalestringoptionalUpdated time locale for the personmobile_phonestringoptionalUpdated mobile phone number of the personowner_idintegeroptionalUpdated owner user ID for this person recordperson_company_industrystringoptionalUpdated company industry associated with this personperson_company_namestringoptionalUpdated company name associated with this personperson_company_websitestringoptionalUpdated company website associated with this personperson_stage_idintegeroptionalUpdated person stage IDpersonal_email_addressstringoptionalUpdated personal email address of the personpersonal_websitestringoptionalUpdated personal website URL of the personphonestringoptionalUpdated phone number of the personphone_extensionstringoptionalUpdated phone extension of the personsecondary_email_addressstringoptionalUpdated secondary email address of the personskip_permission_checksbooleanoptionalFlag to indicate this is an intake form request that should bypass permission checksstatestringoptionalUpdated state or region of the persontagsarrayoptionalUpdated tags applied to this persontitlestringoptionalUpdated job title of the persontwitter_handlestringoptionalUpdated Twitter handle of the person (without @)work_citystringoptionalUpdated work city of the personwork_countrystringoptionalUpdated work country of the personwork_statestringoptionalUpdated work state or region of the personsalesloft_tasks_create#Create a new task in Salesloft. A subject is required. Optionally link the task to a person, user, and cadence step.9 params
Create a new task in Salesloft. A subject is required. Optionally link the task to a person, user, and cadence step.
subjectstringrequiredSubject line of the taskdescriptionstringoptionalA description of the task recorded for the person at completion timedue_datestringoptionalDate the task is due, in ISO-8601 date format (YYYY-MM-DD)idempotency_keystringoptionalUnique identifier to prevent duplicate tasks from being createdperson_idstringoptionalID of the person to be contactedremind_atstringoptionalDatetime at which to remind the user of the task, in ISO-8601 datetime formattask_typestringoptionalType of the task. Accepted values: call, email, generaluser_guidstringoptionalGUID of the user linked to the task. Defaults to the authenticated user.user_idintegeroptionalID of the user linked to the task. Defaults to the authenticated user.salesloft_tasks_delete#Delete a task from Salesloft by its ID. This operation is not reversible.1 param
Delete a task from Salesloft by its ID. This operation is not reversible.
task_idintegerrequiredThe unique identifier of the task to deletesalesloft_tasks_get#Fetch a single task record from Salesloft by its ID.1 param
Fetch a single task record from Salesloft by its ID.
task_idintegerrequiredThe unique identifier of the task to fetchsalesloft_tasks_list#Fetch multiple task records from Salesloft. The records can be filtered by user, person, account, state, type, time interval, timestamps, and more, and paged and sorted.29 params
Fetch multiple task records from Salesloft. The records can be filtered by user, person, account, state, type, time interval, timestamps, and more, and paged and sorted.
account_idstringoptionalFilter tasks by the account to which they are associated. Comma-separated list for multiple values.completed_at_gtstringoptionalFilter tasks completed after this ISO8601 timestamp (exclusive)completed_at_gtestringoptionalFilter tasks completed at or after this ISO8601 timestamp (inclusive)completed_at_ltstringoptionalFilter tasks completed before this ISO8601 timestamp (exclusive)completed_at_ltestringoptionalFilter tasks completed at or before this ISO8601 timestamp (inclusive)completed_time_intervalstringoptionalFilter completed tasks by time interval. Accepted values: today, yesterday, this_week, previous_week, this_monthcurrent_statestringoptionalFilter tasks by current state. Comma-separated list. Accepted values: scheduled, completedidempotency_keystringoptionalFilter tasks by idempotency keyidsstringoptionalFilter by specific task IDs. Comma-separated list of IDs.include_counts_acted_on_gtstringoptionalInclude counts acted on after this ISO8601 timestamp (exclusive)include_counts_acted_on_gtestringoptionalInclude counts acted on at or after this ISO8601 timestamp (inclusive)include_counts_acted_on_ltstringoptionalInclude counts acted on before this ISO8601 timestamp (exclusive)include_counts_acted_on_ltestringoptionalInclude counts acted on at or before this ISO8601 timestamp (inclusive)include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatalimit_paging_countsbooleanoptionalSpecifies whether the max limit of 10k records should be applied to pagination countslocalestringoptionalFilter tasks by locale of the associated person. Comma-separated list for multiple values.pageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.person_idstringoptionalFilter tasks by the person to which they are associated. Comma-separated list for multiple values.sort_bystringoptionalField to sort results by. Accepted values: due_date, due_at, utc_offset, company, updated_at, completed_at, salesloft.prioritizers/rhythm. Defaults to due_date.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to ASC.sourcestringoptionalFilter tasks by source. Comma-separated list for multiple values.task_typestringoptionalFilter tasks by type. Comma-separated list. Accepted values: call, email, generaltime_interval_filterstringoptionalFilter tasks by time interval. Accepted values: overdue, today, tomorrow, this_week, next_weekupdated_at_gtstringoptionalFilter tasks updated after this ISO8601 timestamp (exclusive)updated_at_gtestringoptionalFilter tasks updated at or after this ISO8601 timestamp (inclusive)updated_at_ltstringoptionalFilter tasks updated before this ISO8601 timestamp (exclusive)updated_at_ltestringoptionalFilter tasks updated at or before this ISO8601 timestamp (inclusive)user_idstringoptionalFilter tasks by the user to which they are assigned. Comma-separated list for multiple values.salesloft_tasks_update#Update an existing task in Salesloft by its ID.12 params
Update an existing task in Salesloft by its ID.
task_idintegerrequiredThe unique identifier of the task to updatecurrent_statestringoptionalCurrent state of the task. Valid option: completeddescriptionstringoptionalA description of the task recorded for the person at completion timedue_atstringoptionalDatetime the task is due, in ISO-8601 datetime formatdue_datestringoptionalDate the task is due, in ISO-8601 date format (YYYY-MM-DD)is_loggedbooleanoptionalA flag to indicate that the task should only be loggedperson_idstringoptionalID of the person to be contactedremind_atstringoptionalDatetime at which to remind the user of the task, in ISO-8601 datetime formatsubjectstringoptionalSubject line of the tasktask_typestringoptionalTask type. Accepted values: call, email, generaluser_guidstringoptionalGUID of the user linked to the task. Defaults to the authenticated user.user_idintegeroptionalID of the user linked to the task. Defaults to the authenticated user.salesloft_users_get_current#Fetch the authenticated current user's information from Salesloft. This endpoint does not accept any parameters.0 params
Fetch the authenticated current user's information from Salesloft. This endpoint does not accept any parameters.
salesloft_users_list#Fetch multiple user records from Salesloft. Non-admin users will only see their own user or all on team depending on group visibility policy.22 params
Fetch multiple user records from Salesloft. Non-admin users will only see their own user or all on team depending on group visibility policy.
activebooleanoptionalFilter users by active status. Defaults to not applied.calendar_connection_statusbooleanoptionalFilter users by calendar connection status. True returns only users with a connected calendar; false returns only users without.emailsstringoptionalFilter users by exact email address match. Comma-separated list for multiple values.group_idstringoptionalFilter users by group ID. Comma-separated list. Use _is_null to filter users not in any group.guidstringoptionalFilter users by GUID. Comma-separated list for multiple values.has_crm_userbooleanoptionalFilter users by whether they have a CRM user mappedidsstringoptionalFilter by specific user IDs. Comma-separated list of IDs.include_calendar_connection_statusbooleanoptionalWhether to include calendar connection status in the response. When true, adds a calendar_connection_status object to each user.include_paging_countsbooleanoptionalWhether to include total count and page count in the response metadatalast_loginstringoptionalFilter users based on last login timemanaged_arbooleanoptionalFilter users based on whether they manage Automation Rulesmanager_user_guidstringoptionalFilter users by their manager's user GUID. Comma-separated list for multiple values.pageintegeroptionalPage number for pagination, starting from 1per_pageintegeroptionalNumber of results per page in the range [1, 100]. Defaults to 25.permissionsstringoptionalFilter users by specific permissions. Comma-separated list for multiple values.role_idstringoptionalFilter users by role ID. Comma-separated list for multiple values.searchstringoptionalSpace-separated keywords to search First Name, Last Name, or Email (case-insensitive substring match)seat_packagestringoptionalFilter users by assigned license. Comma-separated list for multiple values.sort_bystringoptionalField to sort results by. Accepted values: id, seat_package, email, name, group, last_login, role. Defaults to id.sort_directionstringoptionalDirection of sort: ASC or DESC. Defaults to DESC.visible_onlybooleanoptionalWhen true, only shows users actionable based on team privacy settings. When false, shows all users including deactivated. Defaults to true.work_countrystringoptionalFilter users by assigned work country. Comma-separated list for multiple values.