API & MCP Docs

Company intelligence for AI agents and growth teams. Access verified emails, tech stacks, and web signals via REST or our MCP server.

Sign up to get your API keyStart free →

Endpoints

MethodPathDescriptionCost
GET/api/v1/lookup?domain={domain}Full company enrichment — verified emails, tech stack, people, signals1 lookup
GET/api/v1/companies?sector=&size=&tech=Filtered company list1 lookup per result
GET/api/v1/peopleFiltered people list1 lookup per result
GET/api/v1/people/{id}Single person enrichment1 lookup
GET/api/v1/search?q={query}Search companies by name or domain1 lookup per result
GET/api/v1/techTop 100 technologies with company counts1 lookup
GET/api/v1/tech/{slug}Companies using a specific technology1 lookup per result
GET/api/v1/signalsTechnology change signals1 lookup per result
GET/api/v1/career-movesPeople changing companies1 lookup per result
GET/api/v1/meYour plan, usage, and API key infoFree
POST/api/v1/api-key/regenerateGenerate or regenerate your API keyFree

Authentication

All API requests require a Bearer token. Sign up free at agentdata.run/signup to get your API key.

curl https://agentdata.run/api/v1/lookup?domain=stripe.com \
  -H "Authorization: Bearer YOUR_API_KEY"

Email Filtering

The /v1/lookup endpoint returns SMTP-verified emails. Free provider emails (Gmail, Yahoo, etc.) are always excluded. By default, only emails with confidence ≥ 50 are returned.

ParameterDefaultDescription
min_confidence50Minimum confidence score (0-95). Use 90 for outreach-safe emails only.
verification_statusallFilter by status. Comma-separated: valid, catch-all, catch-all-unknown, unknown.
# Only outreach-safe emails (confidence 90+, verified or catch-all)
curl "https://agentdata.run/api/v1/lookup?domain=stripe.com&min_confidence=90&verification_status=valid,catch-all" \
  -H "Authorization: Bearer YOUR_API_KEY"

Email Verification

Every email is SMTP-verified against the receiving mail server. Free provider emails (Gmail, Yahoo, Hotmail) are excluded from all responses.

StatusConfidenceMeaning
valid90-95SMTP confirmed — mailbox exists and server is not catch-all
catch-all55-85Server accepts all addresses — email likely valid but can't be individually confirmed
catch-all-unknown65-80SMTP accepted but catch-all detection was inconclusive
unknown45-75Server didn't respond or returned an inconclusive result
unverified50Not yet verified — queued for SMTP check

Invalid and disposable emails are filtered out by default (confidence below 50). Emails are re-verified every 30-90 days.

Rate Limits

All users: 5 requests per second. All endpoints including signals and career moves are available on every account.

Lookup Costs

Every API call that returns company or people data consumes lookups from your monthly allowance. Re-visiting a domain you've already looked up within the last 30 days is free.

  • /v1/lookup — 1 lookup per domain. Re-visits within 30 days are free.
  • /v1/companies, /v1/people, /v1/search — 1 lookup per result returned. Results are capped to your remaining lookups.
  • /v1/tech/{slug} — 1 lookup per company in the response.
  • /v1/tech — 1 lookup (flat fee for the index).
  • /v1/me, /v1/api-key/regenerate — Free.

Response Headers

All data endpoints return usage headers so you can track consumption programmatically.

HeaderDescription
X-PlanYour current plan
X-Lookups-RemainingLookups remaining after this request
X-Lookups-ConsumedLookups consumed by this request

Example: /v1/lookup

Full company enrichment in a single call.

curl https://agentdata.run/api/v1/lookup?domain=stripe.com \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "domain": "stripe.com",
  "company": {
    "name": "Stripe",
    "description": "Financial infrastructure for the internet",
    "sector": "Financial Services & Fintech",
    "vertical": "Payments",
    "b2b_b2c": "b2b",
    "business_model": "saas",
    "sales_motion": "plg",
    "size": "large",
    "founded_year": 2010,
    "headquarters_city": "San Francisco",
    "headquarters_country": "US",
    "employee_count": 8000,
    "linkedin": "https://linkedin.com/company/stripe",
    "email_pattern": "first.last",
    "is_catch_all": false,
    "mx_provider": "google-workspace",
    "signals": {
      "has_pricing_page": true,
      "has_api_docs": true,
      "has_blog": true,
      "has_careers_page": true
    }
  },
  "emails": {
    "data": [
      {
        "email": "jane.smith@stripe.com",
        "name": "Jane Smith",
        "title": "VP Engineering",
        "confidence": 95,
        "verification_status": "valid",
        "verified_at": "2026-04-14T10:30:00Z",
        "source": "found",
        "is_role_based": false
      }
    ],
    "total": 42,
    "verified": 38,
    "returned": 10,
    "capped": true
  },
  "technologies": [
    { "name": "React", "category": "Framework", "confidence": "high" }
  ],
  "people": {
    "data": [
      { "id": "...", "name": "...", "title": "CTO", "seniority": "c_level" }
    ],
    "total": 156,
    "returned": 10,
    "capped": true
  },
  "lookup": {
    "consumed": true,
    "remaining": 249,
    "cached_until": null
  }
}

Error Codes

StatusMeaningAction
400Bad requestCheck required parameters (e.g. domain, q)
401Authentication requiredAdd Bearer token header
403Subscription or feature requiredSign up free at agentdata.run/signup
404Not foundDomain or person not in our database
429Rate limit or lookup limitSlow down or try again later
500Internal errorRetry or contact support

MCP Server

Add AgentData to Claude Desktop, Cursor, or any MCP-compatible client.

{
  "mcpServers": {
    "agentdata": {
      "command": "npx",
      "args": ["agentdata-mcp-server", "--api-key", "YOUR_API_KEY"]
    }
  }
}

Or use the hosted server:

{
  "mcpServers": {
    "agentdata": {
      "transport": "http",
      "url": "https://mcp.agentdata.run/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

The MCP server exposes the same email filters. Agents can ask for outreach-safe emails:

"Look up stripe.com and only show me verified emails with confidence above 90"

Ready to start?

Sign up free and get your API key in seconds.