# Connect Figma

> Generate a Figma personal access token, paste it into KopiMark, and start syncing your own Figma files for live copy edits and translations.

_Source: https://kopimark.com/docs/guides/connect-figma/_

This is the setup step most teams stumble on, so the guide is detailed.
Once you've done it once, you won't need to do it again unless you rotate
your token.

> **Before you start** — read [Figma sync and
> cache-only mode](/docs/concepts/figma-sync-and-cache/) if you only have a
> Figma View or Collab seat. Your seat affects what you can sync.

## What you'll need

- A Figma account with access to the file you want to import.
- About two minutes inside Figma's settings.

You don't need a paid Figma plan to generate a token, but **your Figma seat
type controls your API rate limit**. Editor seats are comfortable; View
and Collab seats hit limits quickly. See [If your Figma seat is
limited](/docs/guides/figma-seat-and-rate-limits/) for workarounds.

## 1. Generate a token in Figma

1. Open Figma in the browser and click your avatar (top right).

2. Choose **Settings**, then the **Security** tab.

3. Scroll to **Personal access tokens** and click **Generate new token**.

4. Give the token a name you'll recognise — `kopimark` is fine. Set an
   expiration that matches your team's security policy (KopiMark works
   with any duration).

5. For scopes, Figma's defaults are fine. KopiMark only needs file read
   access.

6. Click **Generate** and **copy the token** immediately. Figma only shows
   it once. Tokens look like `figd_…`.

> _[image placeholder: Figma Settings → Personal access tokens with the Generate button highlighted.]_

> **Heads up** — a Figma token is tied to the person who created it, not to
> the file. The person who generates the token is the identity KopiMark
> uses to talk to Figma, so use a token from someone with reliable file
> access. If they leave the team and the token rotates, sync stops.

## 2. Paste it into KopiMark

1. In KopiMark, open the user menu (top right) and choose **Profile**.

2. Find the section labelled **Figma personal access token**.

3. Paste the `figd_…` value into the field and click **Save & verify**.
   The button flips to **Verifying…** while KopiMark calls Figma with the
   token.

4. On success, you'll see a green confirmation with your Figma display name
   ("Connected as Jane Doe"). Saving a valid token automatically turns
   **cache-only mode** off.

> _[image placeholder: KopiMark Profile page with the Figma token field and the Save & verify button.]_

If the token is invalid or has been revoked, KopiMark shows a red error
under the field. Re-check that you copied the whole `figd_…` string with
no whitespace.

## 3. Import your first Figma file

1. Go back to the **Projects** home and click **New project**.

2. Paste a Figma file URL (any link from Figma — `figma.com/file/…` or
   `figma.com/design/…` both work).

3. Pick the pages you want to import. You can always add more later.

4. Click **Create**. KopiMark fetches the file, renders the pages, and
   drops you on the project home.

The first import is the slow one — KopiMark is downloading the node tree
and rendering screenshots. Subsequent re-syncs only fetch the changed
parts.

## Rotating or removing the token

You can disconnect at any time from the same Profile section. Click
**Disconnect**. KopiMark deletes the token, re-enables cache-only mode,
and you keep access to everything you've already imported — you just can't
re-sync until you reconnect.

To rotate, disconnect first, generate a new token in Figma, and paste the
new one. There's no in-place update.

## Common problems

- **"Invalid token"** — usually a copy-paste issue. Make sure you copied
  the whole string and that the token hasn't expired in Figma.
- **"Connected as someone else"** — the token belongs to that person's
  Figma account. If that's not what you want, disconnect and use your
  own.
- **Sync fails with a 429 error** — Figma rate-limited the token.
  KopiMark will auto-switch to cache-only and show a banner; see [If your
  Figma seat is limited](/docs/guides/figma-seat-and-rate-limits/).
- **Token revoked in Figma** — KopiMark won't know until the next sync
  attempt. Re-paste a new one in Profile.

## FAQ

### What permissions does KopiMark need on my Figma token?

File read access only. Figma's default scopes when you generate a new
token are sufficient — KopiMark never writes back to your Figma file.

### Will disconnecting Figma delete my imported pages?

No. Disconnecting deletes the token and re-enables cache-only mode,
but every page you've already imported stays accessible. You just
can't re-sync from Figma until you reconnect.

### What's the difference between disconnecting in KopiMark and revoking in Figma?

Disconnecting in KopiMark only removes the token from your KopiMark
Profile. Revoking in Figma invalidates the token across every app
that was using it — KopiMark won't know until the next sync attempt
fails, at which point you'll need to paste a fresh token.

### Does KopiMark write anything back to my Figma file?

No. KopiMark reads Figma's REST API to fetch the design, then renders
its own copy of the canvas. Text edits, translations, comments, and
statuses all stay in KopiMark.

## See also

- [Figma sync and cache-only mode](/docs/concepts/figma-sync-and-cache/)
- [If your Figma seat is limited (View /
  Collab)](/docs/guides/figma-seat-and-rate-limits/)
- [Profile settings](/docs/settings/profile-settings/)

---

## All documentation

_The full docs index, in case the answer lives on another page. Fetch any item as raw Markdown by appending `.md` to its URL, or grab everything at once from https://kopimark.com/llms-full.txt._

### Start here

- [Introduction](https://kopimark.com/docs/)
- [Getting started](https://kopimark.com/docs/getting-started/)

### Concepts

- [How KopiMark works](https://kopimark.com/docs/concepts/how-kopimark-works/)
- [Figma sync and cache-only mode](https://kopimark.com/docs/concepts/figma-sync-and-cache/)
- [Roles and workspaces](https://kopimark.com/docs/concepts/roles-and-workspaces/)

### Guides

- [Connect Figma](https://kopimark.com/docs/guides/connect-figma/) _(this page)_
- [If your Figma seat is limited](https://kopimark.com/docs/guides/figma-seat-and-rate-limits/)
- [Invite your team](https://kopimark.com/docs/guides/invite-your-team/)
- [Translate with AI](https://kopimark.com/docs/guides/translate-with-ai/)
- [Review with comments](https://kopimark.com/docs/guides/review-with-comments/)
- [Statuses and approvals](https://kopimark.com/docs/guides/statuses-and-approvals/)
- [Custom fonts](https://kopimark.com/docs/guides/custom-fonts/)
- [Export copy](https://kopimark.com/docs/guides/export-copy/)
- [API and developer tokens](https://kopimark.com/docs/guides/api-and-developer-tokens/)

### Settings

- [A tour of Settings](https://kopimark.com/docs/settings/tour/)
- [Profile settings](https://kopimark.com/docs/settings/profile-settings/)
- [Workspace settings](https://kopimark.com/docs/settings/workspace-settings/)
- [Project settings](https://kopimark.com/docs/settings/project-settings/)

### Reference

- [Plans and limits](https://kopimark.com/docs/reference/plans-and-limits/)
- [Keyboard and canvas](https://kopimark.com/docs/reference/keyboard-and-canvas/)
