NewsThe Basemode plugin is now on Figma Community
Docs

Figma API and webhooks

Scheduled and instant syncs on Figma Enterprise.

On Figma Enterprise, Basemode can read variables and styles straight from Figma's REST API, so a sync can run on a schedule or the moment a library is published, with nobody opening the plugin. On every other plan, use the plugin: Figma only offers variables through its API on Enterprise.

Connect Figma

  1. In Figma, open Settings › Security › Personal access tokens and choose Generate new token. Give it read access to file content and variables.
  2. In Basemode, open Connections, choose Figma and paste the token.
  3. In the design system's Settings, pick the connection and add the files to read. Paste each file's link or key. A design system can read up to 20 files, such as a primitives library and a product theme, and aliases between them resolve.

Basemode only reads the files you list. It never changes anything in Figma.

Sync on a schedule

Set Schedule to hourly or daily in the design system's settings. Before reading, Basemode asks Figma for each file's version, so a scheduled sync with nothing new in Figma costs almost nothing and changes nothing.

Sync when a library is published

Figma can tell Basemode the moment a library is published:

  1. Open the design system's Automate page and copy the webhook address.
  2. Register it in Figma for the LIBRARY_PUBLISH event, with the design system's key as the passcode.

Figma sends one event per kind of asset in a publish; Basemode folds them into a single sync. Events for files the design system doesn't read are ignored.

Styles without Enterprise

Published styles (colors, text and effects) are available through Figma's API on any plan, so a design system without Enterprise can still sync those over the API, and use the plugin for variables.