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

# Teamtailor

> Connect Teamtailor to your Atako agents — 10 read and 4 write actions.

Let your agents work with your Teamtailor ATS — browse jobs, candidates, applications and stages, add candidates and notes, and move applications through stages.

## Connection

* **Authentication**: API key.

<Note>
  app.teamtailor.com → Settings → Integrations → API keys → New API key. Choose "Admin" scope with read/write access to candidates, jobs, job applications, and notes. Copy the key.

  See [Teamtailor's documentation](https://app.teamtailor.com/settings/integrations/api-keys).
</Note>

## Read actions (10)

| Action                  | Description                                                                                       |
| ----------------------- | ------------------------------------------------------------------------------------------------- |
| `get_candidate`         | Fetch a single candidate by id.                                                                   |
| `get_job`               | Fetch a single job by id.                                                                         |
| `get_job_application`   | Fetch a single job application by id.                                                             |
| `list_candidates`       | List candidates, filterable by email or search term.                                              |
| `list_departments`      | List departments in the organization.                                                             |
| `list_job_applications` | List job applications, filterable by job-id, candidate-id, and rejected status. Supports include. |
| `list_jobs`             | List jobs, filterable by status. Supports page\[size], page\[number] and include.                 |
| `list_locations`        | List office locations in the organization.                                                        |
| `list_stages`           | List hiring process stages, filterable by job-id.                                                 |
| `list_users`            | List Teamtailor users in the organization.                                                        |

## Write actions (4)

| Action                   | Description                                                                                                                                                                                                                                                                                                                                                               |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `add_candidate_note`     | Add a note to a candidate. Body: JSON:API envelope \{ data: \{ type: "notes", attributes: \{ note }, relationships: \{ candidate: \{ data: \{ type: "candidates", id } } } } }. note is a required string (free text). candidate-id is a required string.                                                                                                                 |
| `create_candidate`       | Create a new candidate. Body: JSON:API envelope \{ data: \{ type: "candidates", attributes: \{ first-name, last-name, email, phone, pitch, tags } } }. first-name, last-name and email are strings; phone and pitch are optional strings; tags is an optional array of strings.                                                                                           |
| `create_job_application` | Create a job application linking a candidate to a job. Body: JSON:API envelope \{ data: \{ type: "job-applications", relationships: \{ candidate: \{ data: \{ type: "candidates", id } }, job: \{ data: \{ type: "jobs", id } } }, attributes: \{ cover-letter (optional string) } } }. candidate-id and job-id are required strings. cover-letter is an optional string. |
| `move_application_stage` | Move a job application to a different stage. Body: JSON:API envelope \{ data: \{ id, type: "job-applications", relationships: \{ stage: \{ data: \{ type: "stages", id } } } } }. stage-id is a required string — use list\_stages to discover available stage ids.                                                                                                       |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](/integrations/permissions) for the grant model and [Security](/integrations/security) for how credentials are protected.
