Skip to main content

Overview

The Actions API allows you to programmatically execute enrichments and other actions on your contacts and companies. This endpoint enables you to automate complex data enrichment pipelines by chaining multiple actions together in a single request. An “actions run” is a concatenated series of actions that executes one or more enrichments on a set of contacts or companies. Each action runs sequentially on each entity.

Request Body

The request must include a actions array and one of the following target specifiers: Each action object in the array must have:

Available Actions

Get contact from LinkedIn

Scrapes complete profile information from LinkedIn. Type: SCRAPE_LEAD_FROM_LINKEDIN Options:
Use When: You have LinkedIn URLs and want complete profile data

Enrich with email

Finds professional email addresses for contacts. Type: ENRICH_WITH_EMAIL Options:
Use When: You need to find email addresses for contacts Tip: Combine with VERIFY_LEAD_EMAIL for best results

Enrich with phone

Finds phone numbers for contacts. Type: ENRICH_WITH_PHONE Options:
Use When: You need phone numbers for outreach

Verify contact email addresses

Verifies email addresses for deliverability. Type: VERIFY_LEAD_EMAIL Options: None required Use When: You have email addresses and want to verify they’re valid before sending Best Practice: Always verify emails before running email campaigns

Verify contact phone number

Verifies phone numbers for validity. Type: VERIFY_LEAD_PHONE Options: None required Use When: You have phone numbers and want to verify they’re valid

Search contacts from company

Finds and imports LinkedIn contacts working at a target company. Targets companies (companyIds / companyGroupIds). Type: SEARCH_LEADS_FROM_LINKEDIN_COMPANY Options:
Mutex rules:
  • text is exclusive with savedFilterId, filters, and keyword.
  • savedFilterId is exclusive with filters (but can be combined with keyword).
  • At least one of text, savedFilterId, filters, or keyword must be provided.
Recommended payload (agents / MCP / new integrations):
Use When: You have target companies (companyIds or companyGroupIds) and want LinkedIn contacts matching a role/seniority/persona description imported into Enginy.

Find company LinkedIn URL

Finds the LinkedIn page of a company and stores its URL on the company record. Targets companies (companyIds / companyGroupIds). Type: COMPANY_LINKEDIN_FROM_NAME Options:
With no options the best LinkedIn search result is accepted. Each flag adds a constraint on which result is accepted; a run that matches nothing stores nothing, so the company can be retried with a looser mode. Discovery cascade (recommended for maximum coverage): run the action up to three times over the still-unmatched companies, strictest mode first:
  1. { "matchOnlyExactDomain": true } — exact website-domain match
  2. { "matchOnlyExactName": true } — exact name match
  3. { "matchOnlySimilarName": true } — similar-name match
Use When: Companies are missing their LinkedIn URL and you want to find it before scraping (SCRAPE_COMPANY_FROM_LINKEDIN) or searching contacts (SEARCH_LEADS_FROM_LINKEDIN_COMPANY).

Export to CRM

Exports enriched contact or company data to your connected CRM. Type: EXPORT_TO_CRM Options:
Use When: You want to sync enriched data to your CRM Tip: Use this as the last step in your enrichment pipeline

Sync contacts with CRM

Pulls the latest CRM field values back into Enginy for contacts. By default it uses each contact’s stored CRM identifiers for a fast incremental sync. Set fullResync: true to clear those identifiers and re-match every contact in the CRM from scratch — use this when records have drifted or were re-keyed in the CRM. Targets contacts (contactIds / contactGroupIds). Type: SYNC_LEAD_WITH_CRM Options:
Example (full resync of a contact list):
Use When: A connected CRM is the source of truth and you want Enginy contacts refreshed with the latest CRM data.

Sync companies with CRM

Pulls the latest CRM field values back into Enginy for companies. By default it uses each company’s stored CRM identifiers for a fast incremental sync. Set fullResync: true to clear those identifiers and re-match every company in the CRM from scratch. Targets companies (companyIds / companyGroupIds). Type: SYNC_COMPANY_WITH_CRM Options:
Example (full resync of a company list):
Use When: A connected CRM is the source of truth and you want Enginy companies refreshed with the latest CRM data.

Common Use Cases

New Lead Qualification Pipeline

Goal: Quickly qualify and enrich new leads from an event
Result: Fully enriched, verified leads in your CRM ready for outreach

List Cleaning & Verification

Goal: Clean and verify an existing contact list
Result: Verified contact list with verification status updated in CRM

Multi-Channel Outreach Preparation

Goal: Prepare contacts for both email and phone outreach
Result: Contacts with verified emails and phone numbers ready for SDR team