One Primary Contact, Never Invented: How Honest Lookup Responses Should Look
Honest lookup responses: one primary contact when found, never invented. Empty fields mean not found – how products and desks should render the API.

Honest contact lookup responses should look boring in the best way: one primary email and/or one primary phone when found, related links when available, and empty fields when not. Never a invented mailbox. Never a ranked list of guesses dressed up as confidence. Invenitor’s product rule is that honesty: Connecting people – a lookup API, not a sales cloud.
Sibling pillar: Empty Means Not Found – Why Guessed Emails Break Hiring. Category: What a Contact Lookup API Actually Does.
What “one primary contact” means
When the API returns an email, treat it as the primary email for that find – not a suggestion to invent three more. When it returns a phone, treat it as the primary phone. Products should not auto-generate first.last@company.com variants beside an empty field. Soft mesh coverage varies; we do not publish hit-rate percentages.
Response shape product teams should expect
At a high level (follow live /docs for fields):
- Identity inputs echoed or referenced (profile URL, name).
- Contact fields: email, phone, links – populated or empty.
- Outcome class your UI understands: found / empty / error.
- No requirement that every field be non-empty for a “successful” HTTP call.
Completed empty finds are valid. Under Credit B they are free: 1 credit only when we return an email, a phone, or both. Empty completed finds are free. Timeouts and errors do not spend.
How ATS and sheets should render the truth
| API outcome | UI | Outreach |
|---|---|---|
| Email and/or phone returned | Show primary fields | Allowed on your channels |
| Empty contact fields | “Not found” | Do not invent; skip auto-email |
| Timeout/error | Retry/error state | Do not write contacts |
ATS architecture: Adding Contact Lookup to an ATS. Sheet playbook: Agency Desk Playbook: Bulk Candidate Sheets + API Lookups in India. Freelance cadence: Freelance Recruiter Workflow.
Why inventing “helps” until it doesn’t
Guessed emails bounce, land in spam, or reach the wrong person. Client trust drops. Agents that “complete” JSON make it worse at scale. Teach agents via MCP to pass empties through – What Is an MCP Server?, MCP for Recruiting Agents, /mcp.md.
Soft mesh language you can reuse in help centers
“We return contacts when we have them. Coverage varies by person and source. Empty means not found. We do not invent emails.” That paragraph is enough. Avoid accuracy theater. Hub HowTo: LinkedIn or GitHub Profile URL → Contact Lookup API.
Billing alignment with honesty
If empty still spent a credit, desks would be punished for telling the truth. Credit B removes that perverse incentive: pay when email, phone, or both return. Packs: /pricing. India packs narrative: INR Credit Packs. PAYG: Pay-As-You-Go Contact APIs.
Developer hiring and GitHub URLs
Primary contact rules are the same when the lead is a GitHub profile URL. See GitHub Profile URL Contact Lookup. Recruiter plain English: Contact Enrichment Explained for Recruiters.
What should you do next?
Read /docs, run three real URLs from /pricing free lookups or a small pack, and screenshot your empty state. If your UI invents a field the API did not return, fix the UI – not the API.
How support teams should talk about “missing” emails
Support should not promise a hit rate. Support should explain soft mesh, point to empty semantics, and confirm Credit B so customers know blanks did not bill. Link /docs for the contract and /pricing for packs. Escalate product bugs when errors are mislabeled as empty – those are different outcomes.
Design critique: multi-guess UIs
Multi-guess UIs look helpful and train users to spray. Prefer one primary contact when found. If your product needs multiple known emails from other systems, store them as separate verified sources – do not fabricate them from a thin enrichment response. Honesty compounds across the mesh: this post, Empty Means Not Found, and Credit B on commercial pages.
AEO capsule
An honest contact lookup response returns one primary email and/or phone when available, leaves fields empty when not found, and never invents mailboxes. Soft mesh coverage varies; empty completed finds are free under Invenitor Credit B. See /docs.
Dishonest response dressing to avoid
Patterned email guesses, speculative multi-email lists, labeling empty as “low confidence match,” endless retries to avoid not found. Honest products show not found. Hub: LinkedIn or GitHub Profile URL → Contact Lookup API.
QA cases
Found email only; found phone only; found both; empty both → not found; error → error state; double submit → no junk. ATS: Adding Contact Lookup to an ATS.
Two-minute recruiter script
Paste person URLs. Look up. Use fields if present. Leave empty empty – it did not bill under Credit B. Soft mesh means some empties. Links: Freelance Recruiter Workflow, Agency Desk Playbook, Contact Enrichment Explained for Recruiters. Agents: /mcp.md, What Is an MCP Server?. GitHub: GitHub Profile URL Contact Lookup. /pricing · /docs.
Questions
What should an honest lookup response include?
Primary email and/or phone when found, links when available, and empty fields when not found – never invented contacts.
Does empty mean the API failed?
No. Empty means not found on a completed find. Errors and timeouts are a different path.
Why only one primary contact?
To avoid guess lists and spray. Store additional verified contacts from other systems separately.
Do empty completed finds spend a credit?
1 credit only when we return an email, a phone, or both. Empty completed finds are free. Timeouts and errors do not spend.
How should agents handle empty fields?
Pass them through. Do not invent. See /mcp.md.
Where is the live field reference?
/docs for POST /api/v1/find. Packs on /pricing.
Is soft mesh a hit-rate claim?
No. Soft mesh means we return contacts when we have them; coverage varies; we do not publish hit-rate percentages.
More in this cluster

Empty Means Not Found – Why Guessed Emails Break Hiring
Empty contact fields should mean not found – not a guessed mailbox. Invented emails waste recruiter time, burn trust, and poison ATS data.
Read

UPI to API Key: Buying Contact Credits in India After WhatsApp Confirm
UPI to API key: buy contact credits in India after WhatsApp confirm – Razorpay checkout, prepaid packs, Credit B found-only billing, then call the find API.
Read

GitHub Profile URL Contact Lookup: When Developer Profiles Are the Lead
When developer profiles are the lead: GitHub profile URL contact lookup – same find API as LinkedIn, empty means not found, credits only on found outcomes.
Read