# Project API Keys

Generate and manage API keys to authenticate your applications with Confident AI.

API keys are used to authenticate your applications when interacting with the Confident AI API. Each project can have multiple API keys, allowing you to manage access for different environments or services.

> API keys do not count as a seat or user in your organization. You can create
> as many API keys as needed without affecting your billing.

Product preview: API Keys settings listing a masked Default Key, with its row menu open showing Deactivate, Rotate and Delete

*Provision API Keys*

## Generate an API Key

To create a new API key:

1. Navigate to **Project Settings** → **API Keys**
2. Click the **Generate New API Key** button
3. Enter a descriptive name for the key (e.g., "Production", "Development", "CI/CD Pipeline"), choose an **Expiration**, and click **Create**
4. Copy and securely store the key secret. It's only shown once, so if you lose it, delete the key and generate a new one

## Manage API Keys

To manage an existing API key, click the three-dot menu (⋮) on the right side of the row:

- **Deactivate** — Temporarily disables the key. Choose **Activate** from the same menu to re-enable it later.
- **Rotate** — Replaces the key's value. The new value works immediately, and the current one keeps working for the **Grace period** you choose, then is replaced.
- **Delete** — Permanently removes the key from your project.

> Deleting an API key is permanent and cannot be undone. Any applications using
> that key will immediately lose access to the API.

## Best Practices

- **Use descriptive names** — Name keys after their purpose (e.g., "GitHub Actions", "Production Server")
- **Rotate keys regularly** — Use **Rotate** with a grace period to phase out old values without downtime
- **Use separate keys per environment** — Create distinct keys for development, staging, and production
- **Monitor usage** — Check the "Last Used" column to identify unused keys that can be deactivated or deleted
