Before you start
Who can use this feature
Available on the Organization and Enterprise plans
Organization admins only
You need an existing Microsoft Entra ID account.
This guide describes how to set up SCIM using a Microsoft Entra ID custom application. The instructions help you provision both Users and Groups via SCIM. If you are interested only in provisioning Users via SCIM, you can configure Microsoft Entra ID using the Figma application.
Organizations using SAML SSO in Microsoft Entra ID can use SCIM Groups to automatically assign users to a workspace or billing group in Figma.
You must configure a custom application in order to use the SCIM Groups functionality. For ease of management, if you use the custom application to manage SCIM Groups, we recommend you also manage SCIM Users in the custom application. If you were previously using the Figma application to manage Users, you should stop and use the custom application instead.
While you can continue to use the Entra ID Figma application to manage your SAML SSO, you can also migrate SAML SSO configuration to the custom application.
We recommend having both Figma and Entra ID open in separate tabs. This allows you to switch between them throughout the setup process.
You must configure SCIM in an active organization. Microsoft recommends testing SAML/SCIM configurations in a sandbox environment. However, there isn’t a way to create a sandbox or test environment in Figma. We recommend testing the custom application with a test user, such as yourself, or a small group of users first.
Set up automatic provisioning with SCIM
Generate an API token
You can generate an API token in your organization's admin settings:
- Open Figma in the file browser and select Admin in the sidebar.
- Select the Settings tab and navigate to the in the Login and provisioning section.
- In the Login and provisioning section, click SCIM provisioning.
- Click Generate API token.
- Copy the API token value.
Find your Tenant ID
Your identity provider will need a SCIM base URL to configure SCIM. Your Tenant ID will make up part of this URL. You can find your Tenant ID in your organization's admin settings:
- Open Figma in the file browser and select Admin in the sidebar.
- Select the Settings tab and navigate to the in the Login and provisioning section.
- In the Login and provisioning section, click SAML SSO.
- Copy the Tenant ID.
- Use your Tenant ID to create the SCIM base URL:
-
https://www.figma.com/scim/v2/[tenantID](Figma organizations) -
https://figma-gov.com/scim/v2/[tenantID](Figma for Government organizations)
-
Add a Custom Application to Entra ID
- Open Entra ID in the overview page.
- Select Enterprise applications.
- Go to the All applications section.
- Click + New application.
- Click + Create your own application.
- Enter a name for your application, such as "Figma Custom App", select the Integrate any other application you don't find in the gallery (Non-gallery) option, and click Create.
Configure SCIM in Entra ID
You'll need your Tenant ID and API Token from Figma. Remember to swap the <TENANT ID> placeholder in the URL below with the Tenant ID Figma generated.
Note: These instructions are modified from Microsoft's Entra ID Tutorial. Check out Configure Figma for automatic user provisioning for screenshots and detailed explanations.
- In your Entra ID Portal go to Enterprise Applications > All Applications
- Select the Figma Custom app.
- Go to the Manage section and select Provisioning.
- Set the Provisioning Mode to Automatic.
- Enter the following details in the Admin Credentials section:
- Enter the URL in the Tenant URL field:
https://www.figma.com/scim/v2/<TenantID> - Enter the API Token in the Secret Token field.
- Click Test Connection to make sure that Entra ID can connect to Figma.
- Enter the URL in the Tenant URL field:
- Enter the desired email address in the Notification Email field.
- Check the box next to Send an email notification when a failure occurs and click Save to apply.
- In the Mappings section, select Provision Microsoft Entra ID Users to Figma, set Enabled to yes.
- In the Attribute Mappings section, review the Entra ID Attribute and the corresponding Figma Attribute.
- Click the Save button to apply any changes.
- In the Mappings section, select Provision Microsoft Entra ID Groups, if you plan to provision groups to Figma, set Enabled to yes.
- Click Save to apply any changes.
- Under Settings, toggle the Provisioning Status to on.
- Define which users and/or groups you would like to provision to Figma. Choose from:
- Sync all users and groups
- Sync only assigned users and groups
- Click Save to apply your provisioning settings.
Caution: If a user is deactivated in Entra ID, this will remove their Figma account from your organization and they will lose all permissions. If you reactivate the user in Entra ID and re-add them to your organization, someone will need to manually add them to their previous teams, projects and files.
Assign a test user/group
Assign a test user and/or group to the Figma Custom App in Entra ID. This allows you to complete the SCIM setup process and test the application.
- Select Assign users and groups from the options.
- Click + Add user/group to open the assignments page.
- Click Users and groups, then click None selected.
- Search for the test user/group.
- Click to add and return to the assignments page.
- Click Assign to return to application page.
Test the application
With both Figma and Entra ID configured you can test the application. You’ll need to test this process with the user you added earlier.
If you skipped this step, you’ll need to assign a user to Figma first. We recommend adding your own account.
Provision a Workspace or Billing Group with a SCIM group
To provision a workspace or billing group:
- Set up a workspace or billing group.
- Create a group in Microsoft Entra ID.
- Assign the group to the Figma Custom application.
You can also unassign a group and view SCIM groups in Figma.
Set up a workspace or billing group
You must create at least one workspace or billing group before setting up the corresponding group in Microsoft Entra ID.
Create a group in Microsoft Entra ID
Note: The name of the group in Microsoft Entra ID must match the name of the corresponding workspace or billing group.
- Under Manage > Groups, click New group and enter a name of the group.
- Click All groups, search for the new group, and then click it.
- Click View group members.
- Click Add members to add member.
Assign the group to the Figma Custom application
- In your Entra ID Portal go to Enterprise Applications > All Applications.
- Select the Figma Custom app.
- Under Manage > Users and groups, click Add user/group.
- Click None Selected under Users and groups, then choose a group to add.
- Click None Selected under Select a role, then choose an AppRole.
When you add a group to the Figma Custom app, Microsoft Entra ID will link the group to any workspace or billing group with a matching name. All users in the group will be assigned to the associated workspace or billing group once the group status is active.
Note:
- Members of your organization won’t notice when they are assigned to a billing group. If they are assigned to a workspace, the workspace name will automatically appear in their sidebar in the file browser.
- If a user is included in multiple groups, the first group added to the Figma Custom application in Microsoft Entra ID takes precedence.
- Depending on the group size, the workspace and billing group assignments may take up to 30 minutes.
- Group sizes are limited to 5,000 users.
- While a group name has to match a Workspace name or a Billing group name when first provisioning, its name can be changed afterwards after the first provisioning, which links the SCIM group with the corresponding Workspace or Billing group.
Unassign a group
Unlinking a group in Microsoft Entra ID removes the SCIM group in Figma. All users managed by the group will be unassigned from their respective workspace or billing group.
- In your Entra ID Portal go to Enterprise Applications > All Applications.
- Select the Figma Custom app.
- Under Manage > Users and groups, choose a group.
- Click Remove.
View SCIM groups in Figma
You can view the members of any SCIM group you’ve created in Figma.
- From the file browser, click Admin in the left sidebar.
- Select the Members tab.
- Click the SCIM group filter and select a group to view members of the group.
Seat Management and SCIM group management
If you manage Figma seats via the deprecated figma permissions using SingleAppRoleAssignment to manage attribute mapping, you may run into an SingleAppRoleAssignment conflict, since the Seats and SCIM groups are both managed by Entra groups.
If you encountered a MultipleGrantsNotSupported error on SingleAppRoleAssignment, please follow these steps to correct the error message. These instructions map custom attributes to AppRoles using a different expression language statement.
Note: It is safe to ignore these instructions if you do not see a MultipleGrantsNotSupported error message.
Configure the member role for Figma
- Open the Figma Enterprise App.
- Navigate to the Provisioning section.
- Click Edit attribute mappings.
- Expand Mappings and select Provision Microsoft Entra ID Users.
- Click Edit for the
urn:ietf:params:scim:schemas:extension:figma:enterprise:2.0:User:figmaPermissionattribute. -
Set its expression to:
IIF(Instr(Join("", AppRoleAssignmentsComplex([appRoleAssignments])), "FigmaFull", , )>"0", "", IIF(Instr(Join("", AppRoleAssignmentsComplex([appRoleAssignments])), "FigmaViewerRestricted", , )>"0", "viewerRestricted", "full")) - Click OK to save
- Click Edit for the
urn:ietf:params:scim:schemas:extension:figma:enterprise:2.0:User:figjamPermissionattribute. -
Set its expression to:
IIF(Instr(Join("", AppRoleAssignmentsComplex([appRoleAssignments])), "FigJamFull", , )>"0", "full", IIF(Instr(Join("", AppRoleAssignmentsComplex([appRoleAssignments])), "FigJamViewerRestricted", , )>"0", "viewerRestricted", "")) - Click Edit for the
urn:ietf:params:scim:schemas:extension:figma:enterprise:2.0:User:devModePermissionattribute. -
Set its expression to:
IIF(Instr(Join("", AppRoleAssignmentsComplex([appRoleAssignments])), "DevModeFull", , )>"0", "full", IIF(Instr(Join("", AppRoleAssignmentsComplex([appRoleAssignments])), "DevModeViewerRestricted", , )>"0", "viewerRestricted", "")) - Click OK to save.
- Back on the Attribute Mapping page, click Save to confirm your changes.