> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# GetLeads: Count Contacts

> Count contacts matching GetLeads filters before running a credit-consuming search. Includes inputs, outputs, SDK V2 examples, and Deepline cost.

Count contacts matching GetLeads filters before running a credit-consuming search.

<Info>
  Tool ID: `getleads_count_contacts`
</Info>

## Run this action

Use the TypeScript SDK for a single call. Put `ctx.tools.execute(...)` inside a Play when the call should be durable, scheduled, or run across a CSV.

```ts theme={null}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'getleads_count_contacts',
  {
    "domains": [
      "example.com"
    ],
    "job_titles": [
      "VP of Engineering"
    ],
    "seniority": [
      "c-level"
    ]
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={null}
deepline tools execute getleads_count_contacts --input '{
  "domains": [
    "example.com"
  ],
  "job_titles": [
    "VP of Engineering"
  ],
  "seniority": [
    "c-level"
  ]
}' --json
```

## Example response

The SDK exposes this shape at `result.toolResponse.raw`. Values below are representative.

```json theme={null}
{
  "data": {
    "ok": true,
    "total_matching": 123,
    "total_matching_is_minimum": true
  }
}
```

Use `deepline tools get getleads_count_contacts --json` for the latest machine-readable contract.

## Input reference

Contact search filters. All fields are optional. At least one filter or `where_sql` is required. Filters can be top-level or nested under a `filters` object (both are merged).

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.domains` | `array` | No | — | — |
| `payload.job_titles` | `array` | No | — | — |
| `payload.seniority` | `array` | No | — | — |
| `payload.job_functions` | `array` | No | — | — |
| `payload.industries` | `array` | No | — | — |
| `payload.countries` | `array` | No | — | — |
| `payload.headquarters_countries` | `array` | No | — | — |
| `payload.company_size` | `array` | No | — | LinkedIn size-band labels (e.g. "51 to 200"). |
| `payload.company_linkedin_urls` | `array` | No | — | — |
| `payload.revenue` | `array` | No | — | — |
| `payload.cities` | `array` | No | — | — |
| `payload.states` | `array` | No | — | — |
| `payload.exclude_domains` | `array` | No | — | — |
| `payload.exclude_countries` | `array` | No | — | — |
| `payload.exclude_headquarters_countries` | `array` | No | — | — |
| `payload.exclude_industries` | `array` | No | — | — |
| `payload.exclude_job_titles` | `array` | No | — | — |
| `payload.email_status` | `array` | No | — | Email verification status. Use \["VALID"] for deliverable emails. |
| `payload.technologies` | `array` | No | — | Technologies/tools a company uses. |
| `payload.funding_types` | `array` | No | — | Last funding round type (e.g. "Seed", "Series A", "IPO"). |
| `payload.headquarters_cities` | `array` | No | — | — |
| `payload.company_name` | `string` | No | — | — |
| `payload.email_domain` | `string` | No | — | — |
| `payload.first_name` | `string` | No | — | — |
| `payload.last_name` | `string` | No | — | — |
| `payload.email_address` | `string` | No | — | — |
| `payload.linkedin_url` | `string` | No | — | — |
| `payload.company_description` | `string` | No | — | Keyword search over company LinkedIn About text. |
| `payload.person_description` | `string` | No | — | Keyword search over person LinkedIn bio. |
| `payload.linkedin_headline` | `string` | No | — | — |
| `payload.education` | `string` | No | — | — |
| `payload.certifications` | `string` | No | — | — |
| `payload.languages` | `string` | No | — | — |
| `payload.job_start_date_min` | `string` | No | — | Earliest current-role start date (YYYY-MM-DD). Format: `date`. |
| `payload.job_start_date_max` | `string` | No | — | Latest current-role start date (YYYY-MM-DD). Format: `date`. |
| `payload.skills` | `string` | No | — | Keyword search over contact skills. |
| `payload.domain_list_id` | `string` | No | — | Saved domain list id. |
| `payload.company_size_min` | `integer` | No | — | — |
| `payload.company_size_max` | `integer` | No | — | — |
| `payload.employees_min` | `integer` | No | — | Minimum company headcount (band-overlap matching). |
| `payload.employees_max` | `integer` | No | — | Maximum company headcount (band-overlap matching). |
| `payload.employee_profiles_on_linkedin_min` | `integer` | No | — | Minimum exact LinkedIn employee-profile headcount (hard cutoff). |
| `payload.employee_profiles_on_linkedin_max` | `integer` | No | — | Maximum exact LinkedIn employee-profile headcount (hard cutoff). |
| `payload.founded_year_min` | `integer` | No | — | Earliest founding year. |
| `payload.founded_year_max` | `integer` | No | — | Latest founding year. |
| `payload.total_funding_min` | `integer` | No | — | Minimum total funding raised (USD). |
| `payload.total_funding_max` | `integer` | No | — | Maximum total funding raised (USD). |
| `payload.require_email` | `boolean` | No | — | — |
| `payload.require_phone` | `boolean` | No | — | — |
| `payload.require_company_profile` | `boolean` | No | — | Skip contacts with no company name. Defaults on for Swarm domain-only searches that request company columns. |
| `payload.require_domain_or_headline` | `boolean` | No | — | Rank contacts with a company domain or LinkedIn headline first; remaining matches still appear later. Defaults on for Swarm. |
| `payload.has_mobile_app` | `boolean` | No | — | — |
| `payload.has_web_app` | `boolean` | No | — | — |
| `payload.open_to_work` | `boolean` | No | — | Only contacts with LinkedIn Open to Work signal. |
| `payload.is_hiring` | `boolean` | No | — | Only contacts with LinkedIn Hiring badge. |

<Info>
  This input schema is too large to embed without slowing the page. Get the complete live contract with `deepline tools get getleads_count_contacts --json`.
</Info>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.ok` | `boolean` | No | — | — |
| `result.data.total_matching` | `integer` | No | — | — |
| `result.data.total_matching_is_minimum` | `boolean` | No | — | — |
| `result.data.max_export_rows` | `integer` | No | — | — |
| `result.data.exportable_rows` | `integer` | No | — | — |
| `result.data.export_capped` | `boolean` | No | — | — |
| `result.data.message` | `string` | No | — | — |
| `result.data.code` | `string` | No | — | — |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Provider response payload.",
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "total_matching": {
            "type": "integer"
          },
          "total_matching_is_minimum": {
            "type": "boolean"
          },
          "max_export_rows": {
            "type": "integer"
          },
          "exportable_rows": {
            "type": "integer"
          },
          "export_capped": {
            "type": "boolean"
          },
          "message": {
            "type": "string"
          },
          "code": {
            "type": "string"
          }
        },
        "required": [],
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [GetLeads provider guide](/docs/providers/getleads/guide)
* [SDK V2 quickstart](/docs/sdk-v2/quickstart)
* [SDK reference](/docs/sdk-v2/sdk-reference)
* [Run tools across a CSV](/docs/sdk-v2/batch-csv)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.