--- title: "Overview" description: "Create and manage API keys for programmatic access" --- API keys authenticate requests from your applications and services. Each key is scoped to your organization — all API calls made with a key create and access resources within that organization. | Method | Endpoint | Quick Link | |---|---|---| | `POST` | `/user/api-keys` | [Create an API key](/api-reference/api-keys/create) | | `GET` | `/user/api-keys` | [List API keys](/api-reference/api-keys/list) | | `DELETE` | `/user/api-keys/{api_key_id}` | [Archive an API key](/api-reference/api-keys/archive) | | `PUT` | `/user/api-keys/{api_key_id}/reactivate` | [Reactivate an API key](/api-reference/api-keys/reactivate) | ## Best practices - **Use one key per environment** — separate keys for development, staging, and production make rotation easy and limit blast radius if a key is compromised. - **Use one key per service** — this allows you to revoke a single service's access without affecting others. - **Rotate keys regularly** — create a new key, update your secret store, then archive the old key. - **Never hardcode keys** — use environment variables or a secrets manager. Never commit keys to version control. - **Monitor `last_used_at`** — keys with no recent activity may be safe to archive.