| GET | /auth/CheckApiKey | CheckApiKey, Check If your API key is working. | Not stated |
| POST | /li_account/GetAll | GetAll, Get a paginated collection of all LinkedIn accounts. Get up to 100 accounts per request. | Not stated |
| GET | /li_account/GetById | GetById, Get a LinkedIn account by id | Not stated |
| DELETE | /li_account/RemoveAccount/{accountId} | RemoveAccount, Remove a LinkedIn account. With force=true the account is first removed from all active campaigns before deletion. | Not stated |
| POST | /li_account/Connect | Connect, Connect a LinkedIn account using username and password. Returns immediately; poll GetAccountStatus to track progress. | requires the 'Account Login API' feature |
| POST | /li_account/ConnectWithCookies | ConnectWithCookies, Connect a LinkedIn account using session cookies. Member id is auto-extracted by authenticating with the cookies. | requires the 'Account Login API' feature |
| GET | /li_account/GetAccountStatus/{accountId} | GetAccountStatus, Get the current connection status of a LinkedIn account. Cached for 10 seconds. | Not stated |
| POST | /li_account/SubmitPin | SubmitPin, Submit a PIN for an account awaiting PIN verification. 409 if the account is not awaiting a PIN. | Not stated |
| POST | /li_account/Reconnect | Reconnect, Reconnect an existing LinkedIn account using its stored credentials. Returns immediately; poll GetAccountStatus. | Not stated |
| POST | /li_account/ReloginSalesNavigator | ReloginSalesNavigator, Re-authenticate the Sales Navigator session. Account must be connected and have an active Sales Navigator subscription. | Not stated |
| POST | /li_account/ReloginRecruiter | ReloginRecruiter, Re-authenticate the Recruiter session. Account must be connected and have an active LinkedIn Recruiter subscription. | Not stated |
| POST | /li_account/Resync | Resync, Resync the profile of a LinkedIn account. Returns immediately; poll GetAccountStatus. | Not stated |
| GET | /li_account/GetProxyCountries | GetProxyCountries, Get all supported proxy country codes usable when connecting an account. | Not stated |
| GET | /li_account/GetAccountProxy/{accountId} | GetAccountProxy, Get the proxy assigned to a LinkedIn account. Returns only the country code for platform-managed proxies, or full connection details for custom proxies. | Not stated |
| POST | /li_account/UpdateProxy | UpdateProxy, Update the proxy assigned to a LinkedIn account. Provide either proxyCountryCode (platform-managed) or customProxy (your own). | Not stated |
| POST | /li_account/UpdateInboxConfiguration | UpdateInboxConfiguration, Update the inbox scrape configuration. Controls how far back inbox messages are synced when the account connects. | Not stated |
| GET | /list/GetById | GetById, Get a lead or company list by Id | Not stated |
| POST | /list/GetAll | GetAll, Get a paginated collection of all company and lead lists. Get up to 100 lists per request. | Not stated |
| POST | /list/GetLeadsFromList | GetLeadsFromList, Get a paginated collection of leads from a lead list. Get up to 1000 leads per request. | Not stated |
| DELETE | /list/DeleteLeadsFromList | DeleteLeadsFromList, Deletes the specified leads from a lead list. | Not stated |
| DELETE | /list/DeleteLeadsFromListByProfileUrl | DeleteLeadsFromListByProfileUrl, Deletes the specified leads from a lead list by LinkedIn profile url. | Not stated |
| POST | /list/GetCompaniesFromList | GetCompaniesFromList, Get a paginated collection of companies from a company list. Get up to 1000 companies per request. | Not stated |
| POST | /list/AddLeadsToList | AddLeadsToList, Add leads to a lead list. Add up to 100 leads per request. | Not stated |
| POST | /list/AddLeadsToListV2 | AddLeadsToListV2, Add leads to a lead list. Add up to 100 leads per request. | Not stated |
| POST | /list/GetListsForLead | GetListsForLead, Retrieves the lists associated with a specific lead. | Not stated |
| POST | /list/CreateEmptyList | CreateEmptyList, Create an empty lead or company list. You pass the list name and the list type (USER_LIST or COMPANY_LIST). | Not stated |
| PATCH | /list/UpdateLeadCustomFields/lists/{listId}/leads/custom-fields | UpdateLeadCustomFields, Update (upsert) custom fields on a lead in a list. Keys are field names, values are field values. | Not stated |
| POST | /lead/GetLead | GetLead, Retrieves the details of a specific lead based on their LinkedIn profile URL. | Not stated |
| POST | /lead/AddTags | AddTags, Adds tags to the lead. Existing tags will not be changed. | Not stated |
| POST | /lead/GetTags | GetTags, Gets the tags for a lead. | Not stated |
| POST | /lead/ReplaceTags | ReplaceTags, Removes the existing tags and replaces them with the new tags. | Not stated |
| POST | /lead_tags/CreateTags | CreateTags, Create one or multiple tags for your workspace. You can assign these tags to leads. | Not stated |
| POST | /campaign/GetAll | GetAll, Get a paginated collection of all campaigns. Get up to 100 campaigns per request. | Not stated |
| GET | /campaign/GetById | GetById, Get a Campaign by id | Not stated |
| POST | /campaign/Resume | Resume, Resumes the specified campaign. | Not stated |
| POST | /campaign/Pause | Pause, Pauses the specified campaign. | Not stated |
| POST | /campaign/AddLeadsToCampaign | AddLeadsToCampaign, Add leads to a campaign. Add up to 100 leads per request. | Not stated |
| POST | /campaign/AddLeadsToCampaignV2 | AddLeadsToCampaignV2, Add leads to a campaign. Add up to 100 leads per request. | Not stated |
| POST | /campaign/StopLeadInCampaign | StopLeadInCampaign, Stops the progression of a lead in a campaign. | Not stated |
| POST | /campaign/GetLeadsFromCampaign | GetLeadsFromCampaign, Gets the leads in a campaign (the "Lead Analytics" screen); shows only Pending leads about to start executing actions. | Not stated |
| POST | /campaign/GetCampaignsForLead | GetCampaignsForLead, Retrieves the campaigns a lead is in, matched by email, LinkedIn ID or profile URL. | Not stated |
| POST | /campaign/StartCampaign | StartCampaign, Activates a campaign that was created via Create. Call this after Create (and after any UpdateSequence / UpdateSchedule / UpdateAccounts configuration) to start running the campaign. | Not stated |
| POST | /campaign/UpdateSettings | UpdateSettings, Updates the general settings of a campaign: name, lead list, and exclusion options. Allowed statuses: DRAFT, SCHEDULED, PAUSED. | Not stated |
| POST | /campaign/UpdateSchedule | UpdateSchedule, Replaces the schedule of a campaign. Defines when the campaign runs each day, which days it is active, the timezone, and optional start/end dates. | Not stated |
| POST | /campaign/UpdateAccounts | UpdateAccounts, Replaces the entire list of LinkedIn sender accounts assigned to a campaign. This is a full replacement, not a merge. | Not stated |
| POST | /campaign/Create | Create, Creates a campaign in DRAFT status; activate it with StartCampaign. A campaign cannot be activated without a sequence. | Not stated |
| POST | /campaign/UpdateSequence | UpdateSequence, Creates or fully replaces the sequence (workflow) of a campaign. The START node is implicit; the root of the request must be your first action node. | Not stated |
| GET | /campaign/GetCampaignSequence | GetCampaignSequence, Retrieves the current sequence (workflow) of a campaign as a PublicSequenceNodeDto, directly reusable as the sequence field in Create and UpdateSequence. | Not stated |
| POST | /campaign/CreateCampaignFromTemplate | CreateCampaignFromTemplate, Creates a new campaign by cloning the sequence and schedule of an existing campaign (the template). The new campaign is created in DRAFT status. | Not stated |
| PATCH | /campaign/UpdateLeadCustomFields/campaigns/{campaignId}/leads/custom-fields | UpdateLeadCustomFields, Update (upsert) custom fields on a lead in a campaign. Keys are field names, values are field values. | Not stated |
| POST | /campaign/AddLinkedInAccountsToCampaign | AddLinkedInAccountsToCampaign, Add LinkedIn accounts as senders to an existing campaign. Previously added senders remain unchanged. | Not stated |
| POST | /campaign/RemoveLinkedInAccountsFromCampaign | RemoveLinkedInAccountsFromCampaign, Remove LinkedIn accounts from a campaign. Up to 100 LinkedIn accounts can be processed per request. | Not stated |
| POST | /stats/GetOverallStats | Get Overall Stats, Gets the overall stats (by day and overall) for the given sender accountIds, campaignIds and date range. | Not stated |
| POST | /stats/GetOverallStatsByCampaign | GetOverallStatsByCampaign, Gets the overall stats broken down per campaign for the specified filters (same filters as GetOverallStats). | Not stated |
| POST | /inbox/GetConversationsV2 | GetConversationsV2, Get a paginated collection of LinkedIn conversations. Get up to 100 lists per request. | Not stated |
| POST | /inbox/GetConversationsV3 | GetConversationsV3, Get a cursor-paginated collection of LinkedIn conversations. Up to 100 items per request. | Not stated |
| GET | /inbox/GetChatroom/{accountId}/{conversationId} | GetChatroom, Get a LinkedIn conversation with its messages by Id. | Not stated |
| POST | /inbox/SendMessage | SendMessage, Send a message to a LinkedIn conversation. | Not stated |
| POST | /inbox/SetSeenStatus | SetSeenStatus, Mark a given conversation as seen or unseen based on the seen parameter. | Not stated |
| POST | /webhooks/CreateWebhook | Create Webhook, This API creates a new webhook that listens to specified events, optionally filtered by campaign IDs. | Not stated |
| GET | /webhooks/GetWebhookById | Get Webhook By Id, Get a webhook by Id. | Not stated |
| POST | /webhooks/GetAllWebhooks | GetAllWebhooks, Get all webhooks. | Not stated |
| PATCH | /webhooks/UpdateWebhook | Update Webhook, This API updates an existing webhook by modifying its configuration, such as name, URL, event type, associated campaigns, and status. | Not stated |
| DELETE | /webhooks/DeleteWebhook | Delete Webhook, Deletes an existing webhook by webhookId. | Not stated |
| POSTasync | /enrichment/enrich-email | EnrichEmail, Creates an email-enrichment job for a single lead. Enrichment runs asynchronously - poll enrich-email/check-job/{jobId} with the returned jobId until the job reaches a terminal status. | not documented per call in the API docs; HeyReach sells enrichment credits for email finding (one-time plan allocation, top-ups) |
| GETasync | /enrichment/enrich-email/check-job/{jobId} | CheckEnrichEmailJob, Polls the status of an email-enrichment job created via enrich-email (jobId in the path). | Not stated |
| POST | /blacklist/GetLeads | GetLeads, Get a paginated collection of the blacklisted leads in your workspace, newest first. The blacklist is workspace-scoped - each workspace keeps its own, and an API key only ever sees its own workspace's entries. | Not stated |
| POST | /blacklist/AddLeads | AddLeads, Add up to 100 leads to your workspace's blacklist in one call. A blacklisted lead is excluded from your campaigns. | Not stated |
| POST | /blacklist/RemoveLeads | RemoveLeads, Remove up to 100 leads from your workspace's blacklist by entry ids (from AddLeads or GetLeads). | Not stated |
| POST | /blacklist/GetCompanies | GetCompanies, Get a paginated collection of the blacklisted companies in your workspace, newest first. The blacklist is workspace-scoped - each workspace keeps its own, and an API key only ever sees its own workspace's entries. | Not stated |
| POST | /blacklist/AddCompanies | AddCompanies, Add up to 100 companies to your workspace's blacklist in one call. Leads working at a blacklisted company are excluded from your campaigns. | Not stated |
| POST | /blacklist/RemoveCompanies | RemoveCompanies, Remove up to 100 companies from your workspace's blacklist by entry ids (from AddCompanies or GetCompanies). | Not stated |
| POST | /MyNetwork/GetMyNetworkForSender | GetMyNetworkForSender, Gets paginated list of the network for the specified sender | Not stated |
| POST | /MyNetwork/IsConnection | IsConnection, Gets a value indicating if the lead is a connection to the sender | Not stated |
| POST | /management/organizations/users | GetAllUsers, Get all existing and invited users in your organization. Filter by role and invitation status. | Not stated |
| POST | /management/organizations/users/invite/admins | InviteAdmins, Invite one or multiple users as admins in your organization. The invitation emails will not be sent, only an invitation URL is generated. | Not stated |
| POST | /management/organizations/users/invite/members | InviteMembers, Invite one or multiple users in your organization. Specify the relevant permissions for each invited user. | Not stated |
| POST | /management/organizations/users/invite/managers | InviteManagers, Invite one or multiple users as managers in your organization. Manager users are special kind of users that exist outside your organization and are invited to specific workspaces. | Not stated |
| GET | /management/organizations/users/{userId} | GetUserById, Get information about a given user. | Not stated |
| POST | /management/organizations/users/workspaces/{workspaceId} | GetWorkspaceUsers, Get all users in a given workspace along with their role and permissions. | Not stated |
| GET | /management/organizations/workspaces | GetAllWorkspaces, List all workspaces in your organization. | Not stated |
| POST | /management/organizations/workspaces | CreateWorkspace, Create new workspace in your organization | Not stated |
| PATCH | /management/organizations/workspaces/{workspaceId} | UpdateWorkspace, Update a given workspace in your organization. | Not stated |
| POST | /management/organizations/linkedin-accounts | GetLinkedInAccounts, Retrieve LinkedIn accounts across your organization. Supports pagination, optional keyword search and filtering by workspaceIds (empty/omitted returns all workspaces). | Not stated |
| DELETE | /management/organizations/linkedin-accounts/{linkedInAccountId} | DeleteLinkedInAccount, Delete (soft-delete) a LinkedIn account by its ID; with forceDelete=false (default) it fails with 400 if the account belongs to an active campaign. | Not stated |
| POST | /management/organizations/linkedin-accounts/MoveToWorkspace | MoveToWorkspace, Move a LinkedIn account from its current workspace to another workspace. Requires the Master (Organization) API Key. | Not stated |
| GET | /management/organizations/api-keys/workspaces/{workspaceId} | GetWorkspaceApiKeys, Get Public API, Make, Zapier, N8N and other relevant integration keys for a given workspace. | Not stated |
| POST | /management/organizations/api-keys/workspaces/{workspaceId} | CreateWorkspaceApiKeys, Generate new API/Integration (Make, Zapier, N8N etc...) keys in a given workspace. | Not stated |