> ## 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.

# DiscoLike: Search Indexed Contacts

> Find indexed business contacts at target company domains or by contact and company filters. Includes inputs, outputs, SDK V2 examples, and Deepline cost.

Find indexed business contacts at target company domains or by contact and company filters.

> [!NOTE]
>
> Tool ID: `discolike_search_indexed_contacts`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'discolike_search_indexed_contacts',
  {
    "filter_industry": [
      "ACCOUNTING"
    ],
    "negate_filter_industry": [
      "ACCOUNTING"
    ],
    "filter_country": [
      "US"
    ]
  },
);

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

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute discolike_search_indexed_contacts --input '{
  "filter_industry": [
    "ACCOUNTING"
  ],
  "negate_filter_industry": [
    "ACCOUNTING"
  ],
  "filter_country": [
    "US"
  ]
}' --json
```

## Example response

The SDK returns this shape at `result.toolResponse.raw`. The example values illustrate the response.

```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
{
  "data": {
    "results": {},
    "total_contacts": 123,
    "total_domains": 123
  }
}
```

Use `deepline describe discolike_search_indexed_contacts --json` for the latest machine-readable contract.

## Input reference

Full contact filters combining persona and company filters.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.filter_industry` | `array` | No | — | Filter by industry category. Valid values: ACCOUNTING (Professional services related to financial record-keeping, analysis, reporting, auditing, tax, and related advisory/consulting services for businesses and individuals. Includes large multidisciplinary accounting networks and the Big Four (Deloitte, PwC, EY, KPMG), even when they also provide broader consulting services.), ADVERTISING\_AND\_MARKETING (The creation and execution of promotional strategies for products, services, or brands, See the live schema for the complete constraint. |
| `payload.negate_filter_industry` | `array` | No | — | Exclude contacts at companies in specified industries. Valid values: ACCOUNTING (Professional services related to financial record-keeping, analysis, reporting, auditing, tax, and related advisory/consulting services for businesses and individuals. Includes large multidisciplinary accounting networks and the Big Four (Deloitte, PwC, EY, KPMG), even when they also provide broader consulting services.), ADVERTISING\_AND\_MARKETING (The creation and execution of promotional strategies for products, See the live schema for the complete constraint. |
| `payload.filter_country` | `array` | No | — | Filter by company country using ISO-3166-1 alpha-2 codes (e.g., US, GB, DE). Also accepts region aliases: EU, LATAM, MENA, APAC, NORDICS, DACH, BENELUX, GCC, ASEAN, CEE, ANZ. |
| `payload.negate_filter_country` | `array` | No | — | Exclude contacts at companies in specified countries. Accepts same codes and region aliases as filter\_country. |
| `payload.filter_state` | `array` | No | — | Filter by company state/region. |
| `payload.negate_filter_state` | `array` | No | — | Exclude contacts at companies in specified states. |
| `payload.employee_range` | `string` | No | — | Filter by employee count range. Format: 'min,max' (e.g., '51,200'). Maps to buckets: 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+. |
| `payload.revenue_range` | `string` | No | — | — |
| `payload.seniority` | `array` | No | — | Filter by seniority bucket: executive, vp, director, manager, senior\_ic, mid\_level, entry\_level |
| `payload.negate_seniority` | `array` | No | — | Exclude contacts with these seniority levels: executive, vp, director, manager, senior\_ic, mid\_level, entry\_level |
| `payload.department` | `array` | No | — | Filter by department. Valid values: Operations, Executive, Technology, Sales - Marketing, Finance, Legal, Human Resources, Medical - Science, Customer Service, Research & Development, Administration, Public Relations, Investor Relations, Pro Services, Other. |
| `payload.negate_department` | `array` | No | — | Exclude contacts in specified departments. Same valid values as `department`. |
| `payload.skills` | `array` | No | — | Filter by skills. Multiple skills can be provided. |
| `payload.name` | `string` | No | — | Filter by contact name (partial match supported). |
| `payload.title` | `array` | No | — | Filter by job title. Each item is a separate match term. Supports quoted phrases and + prefix for required terms. |
| `payload.negate_title` | `array` | No | — | Exclude contacts with specified job titles. |
| `payload.summary` | `string` | No | — | Filter by profile summary text (semantic search). |
| `payload.negate_summary` | `string` | No | — | Exclude contacts matching this summary description. |
| `payload.person_country` | `array` | No | — | Filter by contact's country using ISO-3166-1 alpha-2 codes (e.g., US, GB, DE). Also accepts region aliases: EU, LATAM, MENA, APAC, NORDICS, DACH, BENELUX, GCC, ASEAN, CEE, ANZ. |
| `payload.negate_person_country` | `array` | No | — | Exclude contacts in specified countries. Accepts same codes and region aliases as person\_country. |
| `payload.person_state` | `array` | No | — | Filter by contact's state/region. |
| `payload.has_email` | `boolean` | No | `false` | Only include contacts with email addresses. |
| `payload.email_validated` | `boolean` | No | `false` | Only include contacts with validated email addresses. |
| `payload.has_phone` | `boolean` | No | `false` | Only include contacts with phone numbers. |
| `payload.has_mobile` | `boolean` | No | `false` | Only include contacts with mobile phone numbers. |
| `payload.has_linkedin` | `boolean` | No | `false` | Only include contacts with LinkedIn profiles. |
| `payload.min_connections` | `integer` | No | — | Minimum LinkedIn connections required. Minimum: 0. |
| `payload.persona_id` | `array` | No | — | Filter by specific persona IDs. |
| `payload.icp_text` | `string` | No | — | Natural language description of ideal contact profile for semantic matching. Maximum length: 4000. |
| `payload.negate_icp_text` | `string` | No | — | Exclude contacts matching this profile description. Maximum length: 4000. |
| `payload.icp_prompt` | `string` | No | — | Natural language ICP description. Automatically extracts structured contact filters (seniority, department, industry, country, employee/revenue range, etc.), cleans the semantic description, and applies them before running the contact search. User-provided filters take precedence over wizard-extracted ones. Maximum length: 4000. |
| `payload.domain` | `array` | No | — | Filter contacts at specific company domains. |
| `payload.inclusion_query_id` | `array` | No | — | Include only contacts from companies in these saved queries. |
| `payload.exclusion_query_id` | `array` | No | — | Exclude contacts from companies in these saved queries. |
| `payload.max_records` | `integer` | No | `100` | Maximum number of contacts to return (20-10000). Minimum: 20. Maximum: 10000. |
| `payload.max_companies` | `integer` | No | — | Maximum number of enriched companies to return. Cannot be combined with `max_records`. when set, the internal total contact cap is derived from `max_companies * results_by_company`, capped at 10000. Minimum: 1. Maximum: 10000. |
| `payload.offset` | `integer` | No | `0` | Number of results to skip for pagination. Minimum: 0. Maximum: 10000. |
| `payload.results_by_company` | `integer` | No | `5` | Maximum contacts per company domain. Default 5 — i.e. without this parameter the endpoint returns up to 5 contacts from any one company so results spread across more distinct companies. Set `results_by_company=0` to remove the cap (return every matching contact per company, up to `max_records` total — or the global ceiling of 10000 when paired with `max_companies`). When the value is non-zero, `offset` is forced to 0 (pagination is disabled). Minimum: 0. Maximum: 100. |
| `payload.include_search_contacts` | `boolean` | No | `false` | Include contacts from the search index (broader coverage). |
| `payload.consensus` | `integer` | No | `1` | Number of query vectors to combine for consensus search. Minimum: 1. Maximum: 20. |
| `payload.exclude_persona_ids` | `array` | No | — | DiscoLike persona IDs to leave out of this search, such as the `persona_id` values returned by earlier calls to this tool. Deepline creates a temporary DiscoLike exclusion list for this one search and deletes it afterwards. Only DiscoLike persona IDs are accepted. LinkedIn URLs, emails, and names are not supported by DiscoLike exclusion lists. Minimum items: 1. Maximum items: 1000. Items must be unique. |

> [!NOTE]
>
> This input schema is too large for an inline display. Read the complete live contract with `deepline describe discolike_search_indexed_contacts --json`.

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Response for POST /contacts/discover — indexed contacts grouped by company domain. |
| `result.data.results` | `record` | Yes | — | Map of domain → company firmographics plus nested contacts. |
| `result.data.total_contacts` | `integer` | Yes | — | Total matching contacts across all pages (not just this batch). |
| `result.data.total_domains` | `integer` | Yes | — | Number of unique domains represented in this batch of results. |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

> [!NOTE]
>
> This output schema is too large for an inline display. Read the complete live contract with `deepline describe discolike_search_indexed_contacts --json`.

## Deepline cost

* Pricing model: `provider_usage` (provider usage).
* Estimated Deepline credits: `2.1` per pricing unit.

## Related documentation

* [DiscoLike provider guide](https://deepline.com/docs/providers/discolike/guide.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


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