# Search and Enrich Contacts

Find contacts and reveal their full data in a single call. Combines Search and Enrich into one request.

Provide contact identifiers the same way you would for Search Contacts. Use the reveal field to control what gets unlocked (emails, phones, or both).

Up to 100 contacts per request.

> Billing: Two charges apply — one for the search (api_search) and one per revealed field. The billing.creditsCharged in the response reflects the total.

Endpoint: POST /v3/contacts/search-and-enrich
Security: ApiKeyAuth

## Request fields (application/json):

  - `contacts` (array, required)

  - `contacts.clientReferenceId` (string)
    Example: "my-ref-1"

  - `contacts.id` (string)
    Example: "12345"

  - `contacts.linkedinUrl` (string)
    Example: "https://www.linkedin.com/in/orit-shilvock-6243bb5"

  - `contacts.email` (string)
    Example: "orit.shilvock@lusha.com"

  - `contacts.firstName` (string)
    Example: "Orit"

  - `contacts.lastName` (string)
    Example: "Shilvock"

  - `contacts.companyName` (string)
    Example: "Lusha"

  - `contacts.companyDomain` (string)
    Example: "lusha.com"

  - `reveal` (array)
    Enum: "emails", "phones"

  - `options` (object)
    Additional options for search requests

  - `options.includePartialProfiles` (boolean)
    Include partial profiles in results
    Example: true

## Response 200 fields (application/json):

  - `requestId` (string)

  - `results` (array)

  - `results.id` (string)
    Example: "4389064704"

  - `results.firstName` (string)
    Example: "Orit"

  - `results.lastName` (string)
    Example: "Shilvock"

  - `results.fullName` (string)
    Example: "Orit Shilvock"

  - `results.jobTitle` (object)

  - `results.jobTitle.title` (string)
    Example: "Vice President of Partnerships"

  - `results.jobTitle.departments` (array)
    Example: ["Business Development"]

  - `results.jobTitle.seniority` (string)
    Example: "Vice President"

  - `results.location` (object)

  - `results.location.country` (string)
    Example: "Israel"

  - `results.location.countryIso2` (string)
    Example: "IL"

  - `results.location.state` (string)
    Example: "Tel Aviv District"

  - `results.location.city` (string)
    Example: "Tel Aviv"

  - `results.location.continent` (string)
    Example: "Asia"

  - `results.location.coordinates` (array)
    Example: [34.78057098388672,32.08087921142578]

  - `results.location.isEuContact` (boolean)

  - `results.tags` (array)

  - `results.tags.id` (string)

  - `results.tags.name` (string)

  - `results.tags.color` (string)
    Example: "#FF5733"

  - `results.emails` (array)

  - `results.emails.email` (string)
    Example: "orit.shilvock@lusha.com"

  - `results.emails.type` (string)
    Enum: "work", "private", "unknown"

  - `results.emails.confidence` (string,null)
    Example: "A+"

  - `results.emails.updateDate` (string)
    Example: "2026-04-23"

  - `results.phones` (array)

  - `results.phones.number` (string)
    Example: "+14155551234"

  - `results.phones.type` (string)
    Enum: "mobile", "direct", "work", "unknown"

  - `results.phones.doNotCall` (boolean)

  - `results.phones.updateDate` (string)
    Example: "2026-04-23"

  - `results.company` (object)

  - `results.company.id` (string)
    Example: "16303253"

  - `results.company.name` (string)
    Example: "Lusha"

  - `results.company.domain` (string)
    Example: "www.lusha.com"

  - `results.company.industry` (string)
    Example: "Technology, Information & Media"

  - `results.socialLinks` (object)

  - `results.socialLinks.linkedin` (string)
    Example: "https://www.linkedin.com/in/orit-shilvock-6243bb5"

  - `results.socialLinks.xUrl` (string)
    Example: "https://twitter.com/lushaofficial"

  - `results.previousEmployment` (array)

  - `results.previousEmployment.company` (object)

  - `results.previousEmployment.company.name` (string)

  - `results.previousEmployment.company.domain` (string)

  - `results.previousEmployment.jobTitle` (object)

  - `results.previousEmployment.jobTitle.title` (string)

  - `results.previousEmployment.jobTitle.departments` (array)

  - `results.previousEmployment.jobTitle.seniority` (string)

  - `results.updateDate` (string)
    Example: "2026-04-23"

  - `results.error` (object)
    Per-item error in a batch response

  - `results.error.code` (string)
    Enum: "NOT_FOUND", "COMPLIANCE_RESTRICTED", "ENRICH_FAILED"

  - `results.error.message` (string)
    Example: "Contact not found"

  - `results.clientReferenceId` (string)
    Example: "my-ref-1"

  - `billing` (object)
    Credit usage summary for a V3 API request

  - `billing.creditsCharged` (integer)
    Total credits charged for this request
    Example: 3

  - `billing.resultsReturned` (integer)
    Number of successful results returned
    Example: 1

## Response 400 fields (application/json):

  - `statusCode` (integer, required)
    HTTP status code
    Example: 400

  - `message` (string, required)
    Error message
    Example: "Validation failed"

  - `errors` (array)
    Detailed error messages (optional, only for validation errors)
    Example: ["entityType must be one of: contact, company"]


