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

# Integrator quickstart

> API key, first search, then Claude or your ATS — the technical path.

This is the path if you are wiring FreshTalent into Claude, Cursor, or an ATS / CRM / outreach tool. Recruiters stay in the [dashboard quickstart](/quickstart).

## Dashboard names vs identifiers

| Dashboard                | REST                   | MCP         |
| ------------------------ | ---------------------- | ----------- |
| Search                   | `GET /people`          | `search`    |
| Companies                | `GET /companies`       | `expand`    |
| Lists                    | `/lists`               | `collect`   |
| Targets                  | `/targets`             | `watch`     |
| Monitoring               | `GET /events`          | `events`    |
| Settings → Notifications | `/signals/preferences` | `subscribe` |

<Steps>
  <Step title="Get an API key">
    In the dashboard under **API Keys**, create a key. It is shown once.

    <Warning>Keep keys server-side. Never ship `ft_live_…` in a browser app or a public repo.</Warning>
  </Step>

  <Step title="Run one search">
    Same query the recruiter typed, as compact JSON:

    ```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
    curl \
      --get "https://api.freshtalent.ai/v1/people" \
      --data-urlencode "nl=ex-palantir FDEs, left 18mo" \
      --data-urlencode "view=compact" \
      -H "Authorization: Bearer $FRESHTALENT_API_KEY"
    ```

    The response is `{ data, query, meta }`. `data` is compact people. `query` is the structured filter that actually ran: save it for repeat people searches, or add `data` to a List. Target discovery uses a different schema and is not an exact replay of the graph search. See [Search query compatibility](/api-reference/targets/create#search-query-compatibility).
  </Step>

  <Step title="Pick a surface">
    | Surface                                 | Use it when                                               |
    | --------------------------------------- | --------------------------------------------------------- |
    | [Claude / Cursor / VS Code](/mcp-setup) | An agent should run Search → Lists → Targets → Monitoring |
    | [REST](/api-reference/overview)         | Your app, ATS sync, outreach sequencer                    |
  </Step>

  <Step title="Push movement into the ATS">
    Poll `GET /events?since=24h`. Each row is one profile diff (Left company, Open to work, …) with the person slug and LinkedIn URL. Upsert by URL into Greenhouse, Ashby, Lever, HubSpot, or your sequencer.

    Full recipe: [ATS, CRM, and outreach](/connect/ats-crm).
  </Step>
</Steps>

## Copy-paste: Node

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
const params = new URLSearchParams({
  nl: "ex-palantir FDEs, left 18mo",
  view: "compact",
});

const res = await fetch(
  `https://api.freshtalent.ai/v1/people?${params}`,
  { headers: { Authorization: `Bearer ${process.env.FRESHTALENT_API_KEY}` } },
);

if (!res.ok) throw new Error(`HTTP ${res.status}: ${await res.text()}`);
const { data, query, meta } = await res.json();
console.log(meta.count, "matches");
console.log("echoed query", query);
```

For a complete script with list creation, search results, checkpoints, and HTTP error handling, follow [Build your first integration](/guides/first-integration).

## Next

<CardGroup cols={2}>
  <Card title="Claude, Cursor, VS Code" icon="bot" href="/mcp-setup">
    Eight tools over `https://api.freshtalent.ai/mcp`. Host configs and a prompt that actually works.
  </Card>

  <Card title="ATS & CRM" icon="building-2" href="/connect/ats-crm">
    Poll events, map stages, keep the CRM as source of outreach truth.
  </Card>

  <Card title="API reference" icon="code" href="/api-reference/overview">
    Playground for every public endpoint.
  </Card>

  <Card title="Auth, errors, limits" icon="shield" href="/authentication">
    Keys, 401s, 300 req/min, Target slots.
  </Card>
</CardGroup>
