Figma

Connect & Ingest data from Figma

Figma is a collaborative design platform for building user interfaces, prototypes, and design systems. The Sling Figma connector extracts data from the Figma REST API, supporting users, team projects, files, comments, versions, components, and styles.

circle-check

Setup

The following credentials and inputs are accepted:

Secrets:

  • personal_access_token (required) -> Your Figma Personal Access Token

Inputs:

  • team_id (required) -> The Figma team ID to extract data from. Find it in the URL when viewing your team page: figma.com/files/team/<team_id>

  • anchor_date (optional) -> The starting date for historical data extraction (default: 1 year ago). Format: YYYY-MM-DDTHH:MM:SSZ

Getting Your Personal Access Token

  1. Go to Settings (click your profile icon → Settings)

  2. Navigate to the Security tab

  3. Scroll down to Personal access tokens

  4. Click Generate new token

  5. Give your token a descriptive name (e.g., "Sling Integration")

  6. Select the following scopes:

    • File content: Read-only

    • File metadata: Read-only

    • Comments: Read-only (or Read and write if creating comments)

    • Team library: Read-only

  7. Click Generate token and copy the token (it starts with figd_)

Finding Your Team ID

  1. Log in to Figma and navigate to your team page

  2. Look at the URL: https://www.figma.com/files/team/<team_id>/...

  3. The numeric value after /team/ is your team ID

Using sling conns

Here are examples of setting a connection named FIGMA. We must provide the type=api property:

Environment Variable

See here to learn more about the .env.sling file.

Sling Env File YAML

See here to learn more about the sling env.yaml file.

With anchor date for historical data:

Replication

Here's an example replication configuration to sync Figma data to a PostgreSQL database:

Sync all endpoints with incremental where supported:

Endpoints

Endpoint
Description
Incremental

me

Current authenticated user information

No

team_projects

All projects within the team

No

project_files

All files within each project

No

file_metadata

File metadata (name, last modified, version, editor type)

No

file_comments

Comments on each file, with incremental sync

Yes

file_versions

Version history for each file

Yes

team_components

Published components in the team library

No

team_styles

Published styles in the team library

No

To discover available endpoints:

Rate Limiting

The Figma API uses a tiered rate limiting system with a leaky bucket algorithm:

  • Rate limits vary by endpoint tier (Tier 1, 2, 3)

  • The API returns 429 Too Many Requests when limits are exceeded

The connector automatically:

  • Uses conservative rate limiting (5 requests/second)

  • Limits concurrency to 3 parallel requests

  • Retries with exponential backoff on 429 (rate limit) responses up to 10 times

  • Stops on 401 (authentication failed) responses

  • Stops on 403 (forbidden) responses

Common Use Cases

Design Activity Tracking

Design System Inventory

If you are facing issues connecting, please reach out to us at [email protected]envelope, on discordarrow-up-right or open a Github Issue herearrow-up-right.

Last updated

Was this helpful?