# Search Multiple Contacts Enrich multiple contacts in a single request. This endpoint allows you to submit a list of contacts and receive enriched data for each one, including company information. : Up to 25 requests per second. You can process up to 100 contacts per request. --- ⚠️ | Parameter | Requirement | |-----------|-------------| | and | Only available to customers on the pricing plan | | Plan Restriction | Attempting to use these parameters on other plans will result in a error | | Default Behavior | When neither parameter is used, the API returns , if available | --- Endpoint: POST /v2/person Security: ApiKeyAuth ## Request fields (application/json): - `contacts` (array, required) This is a required parameter that should contain a list of contact objects. Each contact will be processed based on the provided contact details. - `contacts.contactId` (string, required) A unique sequential ID to associate with the contact object in the API response Example: "1234" - `contacts.fullName` (string) The full name of the person Example: "Dustin Moskovitz" - `contacts.location` (string) The raw location of the person Example: "Singapore,Chicago" - `contacts.linkedinUrl` (string) The LinkedIn URL of the person Example: "https://www.linkedin.com/in/dustin/" - `contacts.email` (string) The email address of the person Example: "dustin@lusha.com" - `contacts.companies` (array) Details of the company where the contact is currently employed (or previously employed if applicable) - `contacts.companies.name` (string) The name of the company, Required if no domain. Example: "Lusha" - `contacts.companies.domain` (string) The domain of the company, Required if no name. Example: "lusha.com" - `contacts.companies.isCurrent` (boolean, required) Indicates whether this is the person's current company Example: true - `contacts.companies.jobTitle` (string) The job title of the person at the company Example: "Software Engineer" - `contacts.companies.fqdn` (string) The fully qualified domain name of the company Example: "https://lusha.com" - `contacts.companies.companySocialId` (string) The social ID associated with the company (if available) Example: "1234567890" - `metadata` (object) - `metadata.refreshJobInfo` (boolean) Set this to true to refresh job information for the contact. This replaces any outdated job details with the most current information. By default, Lusha returns results for records that have at least one of the specified contact details (e.g., phone number or email address). Example: true - `metadata.filterBy` (string) Filters the results based on specific contact details. Use the following options: emailAddresses, phoneNumbers Example: "emailAddresses" - `metadata.revealEmails` (boolean) Set to retrieve only the email address of the contact. Example: true - `metadata.revealPhones` (boolean) Set to retrieve only the phone number of the contact. Example: true ## Response 200 fields (application/json): - `contacts` (object, required) The contacts of the bulk person output, keyed by contactId - `companies` (object, required) The companies of the bulk person output, keyed by companyId ## Response 400 fields (application/json): - `error` (object, required) - `error.code` (integer, required) HTTP status code - `error.message` (string, required) Error message ## Response 401 fields (application/json): - `error` (object, required) - `error.code` (integer, required) HTTP status code - `error.message` (string, required) Error message ## Response 403 fields (application/json): - `error` (object, required) - `error.code` (integer, required) HTTP status code - `error.message` (string, required) Error message ## Response 429 fields (application/json): - `error` (object, required) - `error.code` (integer, required) HTTP status code - `error.message` (string, required) Error message ## Response 500 fields (application/json): - `error` (object, required) - `error.code` (integer, required) HTTP status code - `error.message` (string, required) Error message