Tutorial: Configure Airtable for automatic user provisioning
This tutorial describes the steps you need to perform in both Airtable and Microsoft Entra ID to configure automatic user provisioning. When configured, Microsoft Entra ID automatically provisions and de-provisions users and groups to Airtable using the Microsoft Entra provisioning service. For important details on what this service does, how it works, and frequently asked questions, see Automate user provisioning and deprovisioning to SaaS applications with Microsoft Entra ID.
- Create users in Airtable.
- Remove users in Airtable when they do not require access anymore.
- Keep user attributes synchronized between Microsoft Entra ID and Airtable.
- Provision groups and group memberships in Airtable.
- Single sign-on to Airtable (recommended).
The scenario outlined in this tutorial assumes that you already have the following prerequisites:
- A Microsoft Entra tenant.
- One of the following roles: Application Administrator, Cloud Application Administrator, or Application Owner.
- An Airtable tenant.
- A user account in Airtable with Admin permissions.
- Learn about how the provisioning service works.
- Determine who will be in scope for provisioning.
- Determine what data to map between Microsoft Entra ID and Airtable.
Login to Airtable Developer Hub as an Admin user, and then navigate to
https://airtable.com/create/tokens
.Select "Personal Access Tokens" from the left hand navigation bar.
Create a new token with a memorable name such as "AzureAdScimProvisioning".
Add the "enterprise.scim.usersAndGroups:manage" scope.
Select "Create Token" and copy the resulting token for use in Step 5 below.
Add Airtable from the Microsoft Entra application gallery to start managing provisioning to Airtable. If you have previously setup Airtable for SSO you can use the same application. However it's recommended that you create a separate app when testing out the integration initially. Learn more about adding an application from the gallery here.
The Microsoft Entra provisioning service allows you to scope who will be provisioned based on assignment to the application and or based on attributes of the user / group. If you choose to scope who will be provisioned to your app based on assignment, you can use the following steps to assign users and groups to the application. If you choose to scope who will be provisioned based solely on attributes of the user or group, you can use a scoping filter as described here.
Start small. Test with a small set of users and groups before rolling out to everyone. When scope for provisioning is set to assigned users and groups, you can control this by assigning one or two users or groups to the app. When scope is set to all users and groups, you can specify an attribute based scoping filter.
If you need more roles, you can update the application manifest to add new roles.
This section guides you through the steps to configure the Microsoft Entra provisioning service to create, update, and disable users and/or groups in TestApp based on user and/or group assignments in Microsoft Entra ID.
Sign in to the Microsoft Entra admin center as at least a Cloud Application Administrator.
Browse to Identity > Applications > Enterprise applications
In the applications list, select Airtable.
Select the Provisioning tab.
Set the Provisioning Mode to Automatic.
Under the Admin Credentials section,
Enter
https://airtable.com/scim/v2
as the Airtable Tenant URL.Enter the Personal Access Token created in Step 2 above as Secret Token.
Click Test Connection to ensure Microsoft Entra ID can connect to Airtable. If the connection fails, ensure your Airtable account has Admin permissions and that your personal access token has the appropriate scope applied and try again.
In the Notification Email field, enter the email address of a person or group who should receive the provisioning error notifications and select the Send an email notification when a failure occurs check box.
Select Save.
Under the Mappings section, select Synchronize Microsoft Entra users to Airtable.
Review the user attributes that are synchronized from Microsoft Entra ID to Airtable in the Attribute-Mapping section. The attributes selected as Matching properties are used to match the user accounts in Airtable for update operations. If you choose to change the matching target attribute, you'll need to ensure that the Airtable API supports filtering users based on that attribute. Select the Save button to commit any changes.
Attribute Type Supported for filtering Required by Airtable userName String ✓ ✓ active Boolean displayName String title String emails[type eq "work"].value String preferredLanguage String name.givenName String ✓ name.familyName String ✓ name.formatted String addresses[type eq "work"].formatted String addresses[type eq "work"].streetAddress String addresses[type eq "work"].locality String addresses[type eq "work"].region String addresses[type eq "work"].postalCode String addresses[type eq "work"].country String phoneNumbers[type eq "work"].value String phoneNumbers[type eq "mobile"].value String phoneNumbers[type eq "fax"].value String externalId String nickName String urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber String urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department String urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager.value String addresses[type eq "home"].formatted String addresses[type eq "home"].streetAddress String addresses[type eq "home"].locality String addresses[type eq "home"].region String addresses[type eq "home"].postalCode String addresses[type eq "home"].country String addresses[type eq "other"].formatted String addresses[type eq "other"].streetAddress String addresses[type eq "other"].locality String addresses[type eq "other"].region String addresses[type eq "other"].postalCode String addresses[type eq "other"].country String emails[type eq "home"].value String emails[type eq "other"].value String locale String name.honorificPrefix String name.honorificSuffix String name.middleName String name.familyName String phoneNumbers[type eq "home"].value String phoneNumbers[type eq "other"].value String phoneNumbers[type eq "pager"].value String timezone String urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:costCenter String urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division String urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:organization String userType String Under the Mappings section, select Synchronize Microsoft Entra groups to Airtable.
Review the group attributes that are synchronized from Microsoft Entra ID to Airtable in the Attribute-Mapping section. The attributes selected as Matching properties are used to match the groups in Airtable for update operations. Select the Save button to commit any changes.
Attribute Type Supported for filtering Required by Airtable displayName String ✓ ✓ members Reference To configure scoping filters, refer to the following instructions provided in the Scoping filter tutorial.
To enable the Microsoft Entra provisioning service for Airtable, change the Provisioning Status to On in the Settings section.
Define the users and/or groups that you would like to provision to Airtable by choosing the desired values in Scope in the Settings section.
When you're ready to provision, click Save.
This operation starts the initial synchronization cycle of all users and groups defined in Scope in the Settings section. The initial cycle takes longer to perform than subsequent cycles, which occur approximately every 40 minutes as long as the Microsoft Entra provisioning service is running.
Once you've configured provisioning, use the following resources to monitor your deployment:
- Use the provisioning logs to determine which users have been provisioned successfully or unsuccessfully
- Check the progress bar to see the status of the provisioning cycle and how close it's to completion
- If the provisioning configuration seems to be in an unhealthy state, the application goes into quarantine. Learn more about quarantine states here.