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
- In Figma, open Settings › Security › Personal access tokens and choose Generate new token. Give it read access to file content and variables.
- In Basemode, open Connections, choose Figma and paste the token.
- 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:
- Open the design system's Automate page and copy the webhook address.
- Register it in Figma for the
LIBRARY_PUBLISHevent, 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.