# Get Decision Makers Resolve each supplied company to a Lusha company ID, rank the most relevant decision makers per company using the buying-committee-ranker model, and return them grouped per company. Results are free previews — name, title, company, location, LinkedIn, seniority, and department — with has and canReveal fields. Reveal emails and phones separately via Enrich Contacts. Accepted company identifiers (exactly one required per entry): - domain — resolved to a Lusha company ID server-side - id — encrypted Lusha company ID (vN.…); legacy numeric IDs accepted during transition Endpoint: POST /v3/contacts/decision-makers Security: ApiKeyAuth ## Request fields (application/json): - `companies` (array, required) 1–N companies. Each entry must contain exactly one of domain or id. - `companies.domain` (string) Company domain, resolved to a Lusha company ID server-side. Mutually exclusive with id. Example: "google.com" - `companies.id` (string) Encrypted Lusha company ID (vN.…); legacy numeric IDs accepted. Mutually exclusive with domain. Example: "v1.AbCdEfGhIjKlMnOpQrStUvWxYz012345" - `companies.clientReferenceId` (string) Caller-supplied correlation token, echoed back on the matching result. Example: "ref-1" ## Response 200 fields (application/json): - `requestId` (string) Example: "550e8400-e29b-41d4-a716-446655440000" - `results` (array) - `results.clientReferenceId` (string) Echoed from the matching request entry. Example: "ref-1" - `results.companyId` (string) Encrypted Lusha company ID the decision makers belong to. Omitted on NOT_FOUND entries. Example: "v1.AbCdEfGhIjKlMnOpQrStUvWxYz012345" - `results.domain` (string) Requested domain, echoed back on a NOT_FOUND entry. Example: "unknown-co.com" - `results.decisionMakers` (array) Ranked decision makers, highest relevance first. - `results.decisionMakers.clientReferenceId` (string) Example: "my-ref-1" - `results.decisionMakers.id` (string) Example: "4389064704" - `results.decisionMakers.firstName` (string) Example: "Orit" - `results.decisionMakers.lastName` (string) Example: "Shilvock" - `results.decisionMakers.jobTitle` (object) - `results.decisionMakers.jobTitle.title` (string) Example: "Vice President of Partnerships" - `results.decisionMakers.jobTitle.departments` (array) Example: ["Business Development"] - `results.decisionMakers.jobTitle.seniority` (string) Example: "Vice President" - `results.decisionMakers.company` (object) - `results.decisionMakers.company.name` (string) Example: "Lusha" - `results.decisionMakers.company.domain` (string) Example: "www.lusha.com" - `results.decisionMakers.location` (object) - `results.decisionMakers.location.country` (string) Example: "Israel" - `results.decisionMakers.location.state` (string) Example: "Tel Aviv District" - `results.decisionMakers.location.city` (string) Example: "Tel Aviv" - `results.decisionMakers.socialLinks` (object) - `results.decisionMakers.socialLinks.linkedin` (string) Example: "https://www.linkedin.com/in/orit-shilvock-6243bb5" - `results.decisionMakers.has` (array) Example: ["firstName","lastName","jobTitle","location","socialLinks","emails"] - `results.decisionMakers.canReveal` (array) - `results.decisionMakers.canReveal.field` (string) Enum: "emails", "phones" - `results.decisionMakers.canReveal.credits` (integer) Credit cost (0 when already revealed for this account) Example: 1 - `results.decisionMakers.signalTypes` (array) Example: ["promotion","companyChange"] - `results.decisionMakers.error` (object) Per-item error in a batch response - `results.decisionMakers.error.code` (string) Enum: "NOT_FOUND", "COMPLIANCE_RESTRICTED", "ENRICH_FAILED" - `results.decisionMakers.error.message` (string) Example: "Contact not found" - `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"] ## Response 401 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"] ## Response 402 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"] ## Response 403 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"] ## Response 429 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"]