---
title: "Search companies"
method: POST
path: "/enrichment/company/search"
tags: ["crm"]
---

# Search companies

`POST /enrichment/company/search`

## Request

- Base URL: `https://www.dench.com/api/v1`
- URL: `https://www.dench.com/api/v1/enrichment/company/search`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Search for companies through the enrichment gateway (also `dench companies find`).

## Request body

- object
  - `domain` string
  - `name` string
  - `linkedinUrl` string
  - `keywords` string: Words matched in the company's description. Every word of every comma-separated phrase must appear, so use one or two distinctive words ("fintech", "payments"), not a long phrase ("B2B fintech platform"); put industry, size and location in their own filters.
  - `industries` string[]: Exact enum, e.g. Software Development. Accepted values: see `dench leads filters` or https://dench.com/references/find-filter-options.json.
  - `locations` string[]: Cities, states, countries, or metros (free text). Accepted values: see `dench leads filters` or https://dench.com/references/find-filter-options.json.
  - `headcountRanges` string[]: Exact buckets: 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+.
  - `exactMatch` boolean: Match free-text filters (name, locations, keywords) as whole strings. Default false. Domain, linkedinUrl and enum filters are always exact.
  - `limit` integer
  - `offset` integer
  - `pageToken` string: Opaque token from a previous response's metadata.nextPageToken.
  - `preferCache` boolean

## Response `200`

Successful response

- object
  - `source` 'live' | 'cache', required
  - `companies` object[], required: Search results normalized to the CRM upsert shape.
    - `name` string
    - `website` string
    - `description` string
    - `founded` number
    - `headcount` number
    - `industry` string
    - `linkedinUrl` string
    - `linkedinID` string
  - `resolvedCompanyIds` string[], required
  - `creditsCharged` number, required
  - `billing` object
    - `estimatedCents` integer, required: Search cost ceiling authorized by Dench billing, in cents.
    - `chargedCents` integer, required: Actual workspace search charge reported by Dench billing, in cents.
  - `metadata` object
    - `total` number: Total matches for the search. Stable across pages; absent when only an estimate exists.
    - `totalIsEstimate` boolean: True when the total is a lower bound rather than exact.
    - `offset` number
    - `nextPageToken` string: Opaque token for the next page. Pass it back as pageToken; absent on the last page.

## Other responses

- `400`: Invalid request
- `401`: Missing or invalid authentication
- `404`: Operation or resource not found
- `500`: Server error

---

[API](https://skmtc.dev/dench/apis/dench-api.md) - [All operations](https://skmtc.dev/dench/apis/dench-api/llms.txt) - [OpenAPI document](https://skmtc.dev/dench/apis/dench-api/revisions/4a145b38f19c?raw)
