> ## Documentation Index
> Fetch the complete documentation index at: https://docs.serval.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Airtable

> Connect Serval to your Airtable enterprise account to grant and remove Airtable licenses through access requests and find users who no longer use Airtable.

## About Airtable

The Airtable integration manages licenses in an Airtable enterprise account. People request Airtable access in Serval like any other application. When a request is approved, Serval activates their Airtable account. When access is removed, Serval deactivates the account so it stops counting toward your billable seats.

Workflows can also list everyone who holds an active Airtable license, with their license type and the last time they used Airtable, so you can find and reclaim unused licenses.

**Authentication:** An Airtable personal access token owned by an enterprise admin, and your enterprise account ID. Serval stores the token securely and sends it only to `api.airtable.com` and to Airtable's SCIM API at `airtable.com/scim/v2`.

**Data sync:** On demand. Serval reads from Airtable when a workflow or provisioning step runs and does not run a background sync.

<Note>
  The enterprise endpoints this integration uses require an Airtable Enterprise Scale plan. Creating users who are not yet in your enterprise also requires SSO, because it goes through Airtable's SCIM API.
</Note>

## Create a personal access token

Serval acts as the enterprise admin who owns the token. We recommend a dedicated service account with admin rights in your enterprise account.

<Steps>
  <Step title="Sign in as an enterprise admin">Sign in to Airtable as the admin Serval will act as.</Step>
  <Step title="Open the token builder">Go to [airtable.com/create/tokens](https://airtable.com/create/tokens) and select **Create new token**.</Step>

  <Step title="Add scopes">
    Add these scopes:

    | Scope | Used for |
    | - | - |
    | `enterprise.account:read` | Listing the users in your enterprise |
    | `enterprise.user:read` | Reading users' state, license type and last activity |
    | `enterprise.user:write` | Activating and deactivating users |
    | `enterprise.scim.usersAndGroups:manage` | Optional. Creating users who are not yet in your enterprise |
  </Step>

  <Step title="Create the token">Create the token and copy it. Airtable shows it only once.</Step>
</Steps>

Find your enterprise account ID in the Airtable admin panel. It starts with `ent`.

## Connect in Serval

<Steps>
  <Step title="Enter your details">Enter the enterprise account ID and paste the personal access token, then submit the form.</Step>
</Steps>

## Verify the connection

Serval checks that the token is valid, that it can read your enterprise account, and that it can read enterprise users. A failed check usually means one of three things: the token was revoked, the enterprise account ID is wrong, or the token's owner is not an enterprise admin or lacks a scope listed above.

## License provisioning

Connecting Airtable creates a **User** role for the app. Requests for this role are fulfilled automatically:

* **Granting access** activates the user's Airtable account if it was deactivated. If the user is not in your enterprise yet, Serval creates them through SCIM using their email and name. This requires the SCIM scope and SSO. Without them, invite the user in Airtable instead.
* **Removing access** deactivates the user. They can no longer sign in and do not count toward billable seats. Their workspaces, bases and collaborators are kept, and granting access again reactivates them. Deprovisioning also runs when access is removed by an access review or a license reclamation.

<Note>
  Airtable only lets admins activate or deactivate users it manages: users whose email is on a domain your enterprise has claimed. For collaborators from other domains, Serval reports an error and you remove them from the enterprise in the Airtable admin panel.
</Note>

## Included workflows

| Workflow | What it does | Default approval |
| - | - | - |
| List Inactive Airtable Users | Lists license holders, including those in descendant enterprise accounts, with no Airtable activity in a given number of days (90 by default), with their license type and last activity. Users who have never been active are included. | None |
| Deactivate Airtable User | Deactivates a user by email | Installer |

<Note>
  Airtable allows 50 API requests per second per token and blocks the token for 30 seconds after it exceeds the limit. Serval waits and retries when that happens.
</Note>

***

Need help? Contact **[support@serval.com](mailto:support@serval.com)** for assistance with your Airtable integration.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.