Figma integration

Last updated date:

How Seedling connects to Figma, which read-only information it uses, and how access and deletion are controlled.

1. Overview

The Figma integration reads only manually allowlisted teams, projects, or files through a plan or personal access token.

Figma does not provide API discovery for every team ID, so at least one team ID, project ID, or file key is required and remains part of the exact connection boundary.

2. Connection and scope

Seedling verifies the provider account before storing the connection. A personal connection remains actor-owned; a workspace connection is administered for the selected Seedling workspace. Credentials are never inferred from an email address or silently promoted between scopes.

Figma plan or personal access token
Prefer a plan-owned token. Personal tokens inherit the creating user's access and lifecycle; both require explicit team, project, or file allowlists.
Connection ownership
Seedling supports actor-owned personal access and administrator-managed workspace access for this connector. The selected scope and exact connection remain fixed through synchronization, rotation, disconnect, and purge.

3. Figma data Seedling accesses

Seedling uses synchronized information for source-backed search, operating context, verification, and customer-approved workflows. Availability depends on the connected account, selected resources, provider plan, and native permissions.

Workspace structure
Allowlisted teams, projects, files, pages, and file/version metadata.
Design content
Document nodes, components, component sets, styles, libraries, and supported text or metadata.
Collaboration
Comments, authors, replies, timestamps, versions, and sharing signals returned by Figma.

4. Read-only permission contract

Use Figma's read scopes for the exact allowlisted population. Scheduled synchronization does not require webhook writes.

  • current_user:read — verify the token owner.
  • projects:read and project_metadata:read — selected team/project structure.
  • file_metadata:read and file_content:read — file structure, nodes, styles, components, and supported text.
  • file_comments:read and file_versions:read — collaboration and version history.
  • library_content:read, plus optional team_library_content:read — published library assets.
  • webhooks:read and webhooks:write are future optional app capabilities and are not required by scheduled sync.

5. Security and access

  • Provider credentials and other connection secrets are encrypted in the workspace tenant data plane, never returned to the browser, and excluded from logs and queue payloads.
  • Every source, synchronization, secret lookup, audience contribution, disconnect, and purge remains bound to the exact connection that created it.
  • The provider does not expose enough complete object-level audience evidence for Seedling to reproduce native permissions safely. Workspace content therefore uses the connection's restricted-by-default workspace-or-no-human-access policy; administrator and steward status grant no raw-content bypass.
  • For a personal connection, raw content remains visible only to the connecting member in human-facing Seedling surfaces. Personal content may contribute to trusted system exploration under workspace policy, but that authority never transfers to another member.
  • Generated output cannot bypass Seedling's human review, verification, and approval gates.

6. Retention and deletion

Connected data
Synchronized Figma records remain while the connection is active and are removed through a durable integration purge after disconnect.
Credentials
Stored Figma credentials or connection secrets and connection-owned synchronization state are deleted from active Seedling systems as part of the purge.
Backups
Deleted information may remain in encrypted, access-restricted backups until expiry, ordinarily within 35 days after active-system deletion.