# Resumes & documents

> Upload CVs, let the parser structure them, and manage every file on a candidate record.

_Collection: Companies, Contacts & Candidates (records) — Kepler Help Center. Canonical: https://keplercrm.com/support/articles/resumes-and-documents/_

Every CV that enters Kepler is processed by its **AI resume parser**, turning the document into structured, searchable profile data for review — so your database stays match-ready.

## Uploading documents

Open a candidate and go to the **Documents** tab, then click **Upload**. PDF, DOCX and TXT files are supported; legacy `.doc` files are not. Files are categorised — a CV is tagged as **Resume** — and Kepler also recognises files named like a CV ("CV", "resume", "curriculum vitae") automatically.

## Where documents come from

  - **Manual upload** on the Documents tab.

  - **Bulk CV import** — files uploaded via [Adding candidates from CVs](/support/articles/import-candidates-from-cvs/) attach to the created candidate.

  - **Email attachments** — CVs arriving in synced threads appear on the matched candidate with the sender shown as the source.

  - **Portal & LinkedIn applications** — an applicant's CV is attached automatically when you accept them from the Inbound queue.

## What the parser extracts

| Data | Result |
| --- | --- |
| Contact details | Structured into profile fields |
| Work history & tenure | Structured experience entries on the Profile tab |
| Skills & languages | Searchable attributes |
| Qualifications & certifications | Searchable attributes |
| Salary, notice & right to work | Match-ready fields |
| Your custom attributes | Autofilled where the CV contains the answer |

Parsing fills **empty** fields; it won't overwrite values you've entered. Where AI proposes changing an existing value, the change goes through [Notifications](/support/articles/ai-suggestions/) first. Profile changes from re-parsing are revisioned — you can **revert** to the previous version if a new CV made things worse.

## Previewing and downloading

Click a document to preview or download it. Kepler hands out a short-lived signed link rather than a public URL, and only members of the workspace the file belongs to can request one.

> **NOTE:** Parsing runs to structure your database. For current information on subprocessors, retention and training use, see AI & data privacy or contact your workspace administrator.
