# TAM By People

> TAM By People is a paid API for AI agents from agents.blitz-api.ai, paid per call via MPP, price unknown, status unknown (last checked 2026-10-14).

Returns deduplicated companies whose current employees match people and firmographic filters, each with a matched-people count, for TAM sizing.

## Facts

- Endpoint: POST https://agents.blitz-api.ai/v2/company/tam-by-people?utm_source=zero.xyz
- Price: price unknown
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-14
- Activations on Zero: 0
- Provider: agents.blitz-api.ai
- Website: https://agents.blitz-api.ai
- Canonical page: https://www.zero.xyz/c/agents-blitz-api-ai-tam-by-people-1991cd31
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_6b1WQ8UGjyh8l06llz7-F

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agents-blitz-api-ai-tam-by-people-1991cd31 -d '<json body>'
```

Example prompt: Size my TAM by finding all US companies in the SaaS industry with at least 3 current employees who are VP-level or above in Engineering — show me up to 50 companies with how many matching people each has.

## When to prefer this

Use this endpoint when you need to size a total addressable market (TAM) or build an account list grounded in the actual people profile of a company's workforce — not just firmographic attributes alone. It is ideal when the buyer persona (title, function, level, location) is the primary filter and you want to know which companies have matching employees and how many. Prefer this over TAM By Jobs when your ICP is defined by current employee profiles rather than open job postings, and over plain Company Search when you need people-signal enrichment on each account.

## Known failure modes

- Overly restrictive filters return zero results — loosen people or firmographic constraints
- min_per_company set too high causes partial pages — continue paging until cursor is null
- Invalid cursor value causes pagination error — restart from cursor: null
- Combining too many exclude/include filters may conflict and return empty results
- Malformed country_code or enum values (e.g. job_level) return validation errors

## How this service works

Returns the distinct companies whose current employees match the people and firmographic filters (deduplicated), each with its matched-people count. Takes the same input as [Find People](/api-reference/people-search/find-people). Optional people.min_per_company floors that count; when it filters heavily, a page may be partial, so keep paging until cursor is null. Cost: 1 record per result (max = max_results)

## Output

An array of deduplicated company objects (with LinkedIn URL, name, domain, industry, size, HQ location, employee count on LinkedIn, followers, founding year) each annotated with a matched_people count indicating how many current employees satisfy the filter criteria, plus a pagination cursor and result count.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "example": {
  "cursor": null,
  "people": {
   "location": {
    "city": {
     "exclude": [],
     "include": []
    },
    "continent": [],
    "country_code": [
     "US"
    ],
    "sales_region": []
   },
   "education": {
    "exclude": [],
    "include": []
   },
   "job_level": [],
   "job_title": {
    "exclude": [],
    "include": [],
    "include_linkedin_headline": false
   },
   "job_function": [],
   "min_connections": 500
  },
  "company": {
   "hq": {
    "city": {
     "exclude": [],
     "include": []
    },
    "continent": [],
    "country_code": [],
    "sales_region": []
   },
   "name": {
    "exclude": [],
    "include": []
   },
   "type": {
    "exclude": [],
    "include": []
   },
   "revenue": {
    "max": 0,
    "min": 0
   },
   "ad_spend": {
    "max": 0,
    "min": 0
   },
   "industry": {
    "exclude": [],
    "include": []
   },
   "keywords": {
    "exclude": [],
    "include": []
   },
   "sic_code": {
    "exclude": [],
    "include": []
   },
   "naics_code": {
    "exclude": [],
    "include": []
   },
   "web_traffic": {
    "max": 0,
    "min": 0
   },
   "founded_year": {
    "max": 0,
    "min": 0
   },
   "linkedin_url": [],
   "total_funding": {
    "max": 0,
    "min": 0
   },
   "employee_count": {
    "max": 0,
    "min": 1
   },
   "employee_range": [
    "1-10",
    "11-50",
    "51-200",
    "201-500",
    "501-1000",
    "1001-5000",
    "5001-10000",
    "10001+"
   ],
   "lead_investors": {
    "exclude": [],
    "include": []
   },
   "last_funding_type": {
    "exclude": [],
    "include": []
   },
   "last_funding_year": {
    "max": 0,
    "min": 0
   },
   "last_funding_amount": {
    "max": 0,
    "min": 0
   },
   "min_linkedin_followers": 1
  },
  "max_results": 3
 },
 "properties": {
  "cursor": {
   "anyOf": [
    {
     "type": "string",
     "minLength": 3
    },
    {
     "type": "null"
    }
   ],
   "default": null,
   "examples": [
    null
   ],
   "description": "Cursor to paginate through the results"
  },
  "people": {
   "type": "object",
   "properties": {
    "location": {
     "type": "object",
     "properties": {
      "city": {
       "type": "object",
       "properties": {
        "exclude": {
         "type": "array",
         "items": {
          "type": "string",
          "minLength": 1
         },
         "default": [],
         "examples": [
          [
           "Remote"
          ]
         ]
        },
        "include": {
         "type"
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "results",
  "results_length",
  "max_results",
  "cursor"
 ],
 "properties": {
  "cursor": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ],
   "examples": [
    null
   ]
  },
  "results": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "company",
     "matched_people"
    ],
    "properties": {
     "company": {
      "type": "object",
      "examples": [
       {
        "hq": {
         "city": "Noida",
         "state": "Uttar Pradesh",
         "region": "APAC",
         "continent": "Asia",
         "country_code": "IN",
         "country_name": "India"
        },
        "name": "Company Name",
        "size": "1-10",
        "type": "Privately Held",
        "about": "Short company description / about us…",
        "domain": "communication-support.be",
        "website": "https://www.communication-support.be",
        "industry": "Advertising Services",
        "followers": 58,
        "linkedin_id": 10509138,
        "specialties": [
         "graphisme",
         "conseils communication",
         "web"
        ],
        "founded_year": 2003,
        "linkedin_url": "https://www.linkedin.com/company/xxx",
        "employees_on_linkedin": 2
       }
      ],
      "required": [
       "linkedin_url",
       "linkedin_id",
       "name",
       "about",
       "specialties",
       "industry",
       "type",
       "size",
       "employees_on_linkedin",
       "followers",
       "founded_year",
       "hq",
       "domain",
       "website"
      ],
      "properties": {
       "hq": {
        "anyOf": [
         {
          "type": "object",
          "examples": [
           {
            "city": "Noida",
            "state": "Uttar Pradesh",
            "region": "APAC",
            "continent": "Asia",
            "country_code": "IN",
            "country_name": "India"
           }
          ],
          "required": [
           "city",
           "state",
           "country_code",
           "country_name",
           "region",
           "continent"
          ],
          "properties": {
           "city": {
            "anyOf": [
             {
              "type": "string"
             },
             {
              "type": "null"
             }
            ]
           },
           "state": {
            "anyOf": [
             {
              "type": "string"
 
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agents-blitz-api-ai-tam-by-people-1991cd31/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agents.blitz-api.ai](https://www.zero.xyz/host/agents.blitz-api.ai/llms.txt)
