# How to find the right people at a target company

_By Apoorv Khanna, September 28, 2026_

Finding someone with “director” in their title is easy. Finding the person who owns your specific problem takes a more precise brief.

With Vaaya, start with a role search, check the people it returns and buy contact enrichment only for the shortlist. The result should be a small set of people whose responsibilities and current company you can explain.

## Start with a responsibility

You need the company's domain, its resolved name, the relevant function and any geographic constraint. Describe who uses, manages or buys your product. Those can be different people.

Connect through [Vaaya's installation page](https://vaaya.ai/install), then give the agent this prompt:

```text
Find people currently responsible for [function/problem] at [company domain].
Relevant title variants: [titles]. Geography: [if required].
Use Vaaya consult first. Keep research within [budget].
Return at most [number] candidates with profile links and evidence of their
current company and responsibility. Flag ambiguous identities.
Find professional contact details only for candidates that pass review.
Do not send messages or collect personal contact details for this task.
```

## 1. Search broadly enough to find the function

`vaaya/onefind` accepts a plain-English `query` and an optional `limit` of up to 25. Put the company and responsibility in the query. Ask for a small first set so you can inspect whether the search interpreted the role correctly. The route is documented in the [OneFind reference](https://vaaya.ai/docs/reference/onefind).

For explicit filters, the current [catalog](https://vaaya.ai/api/catalog) also exposes `contactout/people-search`. It supports `company`, `job_title`, `location` and `seniority` arrays. `company_filter: "current"` and `current_titles_only: true` express a current-role search; `page_size` caps a page at 25.

These filters narrow discovery. They do not remove the need to inspect employment evidence. If the first page contains the wrong function, fix the query before adding pages.

## 2. Verify the identity and current role

For each candidate, match the name, company and responsibility to available professional evidence. A company leadership page, current professional profile or recent first-party announcement can help. Preserve the source and retrieval date.

Watch for a former employee whose old title still ranks in search, two people with the same name and a person at a similarly named business. An ambiguous match belongs in a review queue. Adding an email to the row does not resolve that ambiguity.

Titles also vary by company. A platform lead may own the work while a vice president controls budget. Write why the person is relevant instead of silently treating every senior title as the buyer.

## 3. Deduplicate before enriching

Use the canonical professional-profile URL when available. Otherwise compare normalized name, company and role, keeping uncertain matches separate until reviewed. Retain multiple evidence links on one person record.

Assign a decision to each candidate: shortlisted, needs review or excluded. Enrich only shortlisted people when the next task needs a contact channel. A meeting-preparation brief may need names and responsibilities without any addresses.

For profile-based enrichment, `contactout/linkedin-contacts` requires `profile`. Its `include_phone` option is optional. That route can return both work and personal addresses, so filter the output to the professional contact scope you requested. The [GTM guide](https://vaaya.ai/docs/reference/gtm) describes the supported enrichment routes.

## 4. Keep identity and deliverability separate

If you need a work email, retain the enrichment provider's status and run a deliverability check when appropriate. `tomba/email-verifier` requires `email`. Preserve the returned verdict and verification time; an uncertain or catch-all result should remain uncertain.

The final table can use this illustrative schema:

| Field | What to preserve |
| --- | --- |
| Person and profile | Name plus a stable professional-profile URL |
| Current role | Title, responsibility and source date |
| Match reason | Why this person fits the requested function |
| Work email | Found address, or an empty field |
| Verification | Provider verdict and checked time |
| Review status | Shortlisted, ambiguous or excluded |

This is a field design, not a sample of found people. Keep personal details outside the table when they are irrelevant to the task.

## Handle misses without manufacturing a contact

If no one matches, broaden one dimension at a time: title variants, geography or adjacent responsibility. Record the change so a broad result is not mistaken for an exact match.

For an unavailable provider, inspect the error and remaining budget before trying a supported alternative. Never turn a guessed email pattern into a verified field. End with the matched people, unresolved candidates and the next missing fact. A shorter list with current evidence is ready for someone to review.

## Questions

**Should I search by title or responsibility?**

Provide both. Describe the responsibility, then include plausible title variants so an exact-title search does not miss the right team.

**Does finding an email verify the person?**

No. Identity and current employment require separate checks. An email verifier tests deliverability signals; it does not establish that you matched the right person.

**Can I leave missing contact details blank?**

Yes. Keep unknown fields empty and explain the gap. Do not infer a work address from a company email pattern and label it verified.
