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

# Job Title → Contacts

> Find people by the title they hold today. One filter of the Seamless.AI Contact Search API.

> [!NOTE]
>
> `POST /search/contacts` · Credits charged per results returned · v1, v2 · Part of the [Contact Search API](/api-catalog/contact-search)

## Introduction

Find people by the title they hold today. Titles match on relevance, so "VP of Sales" also finds "Vice President, Sales". Set `titlesExactMatch` to `true` for exact titles only. Combine it with any other filter in the same request (AND logic).

## AI agent prompt

```text theme={null}
Read https://docs.seamless.ai/api-catalog/contact-filters/job-title. Using SEAMLESS_API_KEY, call POST https://api.seamless.ai/api/client/v1/search/contacts with the `jobTitle` filter to find contacts matching: <your target>. Page with nextToken and keep each searchResultId.
```

## Example

```bash cURL theme={null}
curl -X POST https://api.seamless.ai/api/client/v1/search/contacts \
  -H "Token: $SEAMLESS_API_KEY" -H "Content-Type: application/json" \
  -d '{"jobTitle": ["Chief Technology Officer"], "limit": 25}'
```

```python Python theme={null}
import os, requests
rows = requests.post("https://api.seamless.ai/api/client/v1/search/contacts",
    headers={"Token": os.environ["SEAMLESS_API_KEY"]},
    json={"jobTitle": ["Chief Technology Officer"], "limit": 25}).json()["data"]
```

## Reference

| Parameter | Type | Required | Description |
| - | - | - | - |
| `jobTitle` | string\[] | Yes | Filter contacts by job title. Matches are based on relevance to the provided title strings. Up to 10 titles can be specified. |
| `titlesExactMatch` | boolean | No | Controls how `jobTitle` values are matched. When `false` (default), titles match on relevance, so `"VP of Sales"` also matches `"Vice President, Sales"`. When `true`, only exact title matches are returned. Default `false`. |
| `limit` | integer | No | Results per page, up to 500. Default `50`. |
| `nextToken` | string | No | Cursor from `supplementalData.nextToken` to fetch the next page. |

## Response

Rows are contact previews with `searchResultId`, name, title, seniority, company, location, and LinkedIn URL, but no emails or phones. Send `searchResultId` to [Contact Research](/api-catalog/contact-enrichment) to get them. Fields: [Contact Search](/api-catalog/contact-search).

Auth: `Token` header ([API keys](/authentication/api-keys)) · Errors: [status codes](/api-http-status-codes) · Billing: [rate limits and credits](/rate-limits-and-credits)


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