> ## 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 Change API

> Detect when your contacts change jobs or get promoted, and get their new title, employer, and contact details.

Contacts who change jobs are among the warmest leads you have: champions bring your product to their next company. The Job Change API offers two ways to work with job changes.

| Mode | Endpoint | Use when |
| - | - | - |
| **Check known contacts** | `POST /contacts/research` with `isJobChange: true` | You have a list of customers or champions and want to know who moved. |
| **Find new movers** | `POST /search/contacts` with `jobChanges` | You want everyone matching a persona who recently started a new job or got promoted. |

> **Credits**
>
> Checks use 1 credit per contact. Search is charged per results returned. [Details](/rate-limits-and-credits)

> **Delivery**
>
> Checks are async: poll or webhook. Search is synchronous.

## Check known contacts

Send each contact's name, last known company, and title. `isJobChange` works only with the `contacts` array, not with `searchResultIds`.

```bash theme={null}
curl -X POST https://api.seamless.ai/api/client/v1/contacts/research \
  -H "Token: $SEAMLESS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "isJobChange": true,
    "contacts": [
      { "contactName": "Jane Doe", "companyName": "Acme Corp", "title": "Director of Sales" }
    ]
  }'
```

When you poll, the returned contact shows where the person works now. Check these fields:

| Field | Meaning |
| - | - |
| `jobChangeAlert` | Type of change detected, such as a new hire or a promotion |
| `companyName`, `jobTitle` | Current employer and title |
| `formerCompany`, `formerTitle`, `formerStartedAt`, `formerEndedAt` | The role they left |
| `startedAtCurrentCompany`, `titleStartedAt` | When the new role started |
| `email`, `contactPhone1` | Contact details at the new company |

## Find new movers

Use the [Job Change filter](/api-catalog/contact-filters/job-changes) on Contact Search. `changeType` is one of `New Hire`, `New Promotion`, or `New Hire or New Promotion`. Add `dayRange` (`Last 60 Days` to `Last 365 Days`) to set the lookback window.

```bash 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 '{
    "jobChanges": { "changeType": "New Hire" },
    "department": ["Sales"],
    "seniority": ["VP", "C-Level"],
    "limit": 100
  }'
```

To find alumni of a specific company, use the [Past Company filter](/api-catalog/contact-filters/past-company).

## Related

* [MCP workflow: Job change trigger](/mcp/workflows/job-change-trigger)
* [Contact Research API](/api-catalog/contact-enrichment)
* [API reference: Research contacts](/api-reference/v1/contact-research/research-contacts)


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