Skip to main content
Produce a judgment-heavy brief on one account, buyer, or business question. Huntr selects sources, gathers live data, and synthesizes an answer.

When to use it

  • Pre-meeting account plan
  • Buyer research before outreach
  • Competitive or diligence question with clear scope
  • Buying-signal investigation with date ranges

When not to use it

  • Lists of hundreds of accounts
  • Per-row enrichment of a CSV
  • “Find every VP Sales and their email”
Use Outbound pipeline or Account penetration instead. Bulk research requests return 422 BULK_ENRICHMENT_REQUIREDnot charged.

Endpoint

ModeEndpointCost
SyncPOST /researchPer completed run — tier in GET /pricing
AsyncPOST /research + callback_urlSame; returns 202 immediately
PollGET /research/{requestId}/statusFree

Sync request

curl --request POST \
  --url "${HUNTR_BASE_URL}/research" \
  --header 'content-type: application/json' \
  --header "x-api-key: ${HUNTR_API_KEY}" \
  --data '{
    "prompt": "We sell fraud-prevention APIs to fintech platforms. Research Stripe'\''s enterprise initiatives from June 2025 through June 2026. Summarize partnership angles, likely economic buyers, and deal risks.",
    "tier": "standard"
  }'

Write prompts that work

Include:
  1. Your context — what you sell and why you’re researching
  2. One primary target — company, person, or small team
  3. The decision the answer should support
  4. Specific facts you need
  5. Date ranges for time-sensitive work
Weak: “Tell me about Stripe.” Strong: “We sell fraud-prevention APIs to fintech platforms. Research Stripe’s enterprise motion from June 2025–June 2026 and identify partnership angles and risks.”

Choose a tier

TierUse when
litePublic-web research — search, news, pages
standardCompany research + tech, contact, page enrichment
deepPeople and contact research — profiles, email finding, LinkedIn
Call GET /pricing for current tier prices and model overrides.

Structured output

Pass a flat schema when downstream code needs predictable keys:
{
  "prompt": "Account plan for Linear as an engineering productivity vendor...",
  "tier": "deep",
  "schema": {
    "summary": "Concise account summary",
    "economic_buyer": "Likely economic buyer title and name if found",
    "recommended_angles": "Partnership or outreach angles",
    "risks": "Deal risks or blockers"
  }
}
  • Keys = top-level result fields
  • Values = descriptions of what each field should contain
  • Not JSON Schema
Responses may include per-field confidence: live, model, or not_found.

Async for internal tools

curl --request POST \
  --url "${HUNTR_BASE_URL}/research" \
  --header 'content-type: application/json' \
  --header "x-api-key: ${HUNTR_API_KEY}" \
  --data '{
    "prompt": "Research Notion'\''s enterprise security posture and who owns buying decisions.",
    "tier": "deep",
    "callback_url": "https://your-server.com/webhooks/huntr"
  }'
Returns 202 with request_id and poll_url. Results are stored for 1 hour.

Engineering notes

Embed in a sales tool

async function accountBrief(company, userContext) {
  const res = await fetch(`${BASE}/research`, {
    method: "POST",
    headers: { "content-type": "application/json", "x-api-key": KEY },
    body: JSON.stringify({
      prompt: `${userContext} Research ${company} for an upcoming enterprise meeting. Cover leadership priorities, recent initiatives, and practical conversation angles.`,
      tier: "standard",
      schema: {
        summary: "One paragraph account summary",
        angles: "Bullet-style outreach angles",
        risks: "Deal risks",
      },
    }),
  });
  if (res.status === 422) {
    const err = await res.json();
    if (err.code === "BULK_ENRICHMENT_REQUIRED") throw new Error("Use outbound pipeline, not research");
  }
  if (!res.ok) throw new Error(await res.text());
  return res.json();
}

Data confidence

Check _data_source on free-text results: live, mixed, or model. Treat model-only fields with lower confidence — especially emails, phones, and URLs.

Failed runs

Failed research returns price: 0. Handle 500 with retry; do not assume a charge.

Hybrid with direct endpoints

For one account you can combine:
  1. company-tech-stack + company-jobs — cheap deterministic signals
  2. /research — synthesis and narrative only on accounts that pass your threshold
Do not call /research per row in a list.

Next step