# GitLab Access tokens API

**Canonical:** https://apis.io/apis/gitlab/gitlab-access-tokens-api/  
**Provider:** GitLab — https://apis.io/providers/gitlab/  
**Base URL:** https://gitlab.com/api/v4  
**Documentation:** https://docs.gitlab.com/api/rest/

GitLab Access tokens API is one of 189 APIs that [GitLab](https://apis.io/providers/gitlab/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification and an AsyncAPI event-driven specification. This API exposes 16 JSON Schema definitions. Tagged areas include Access Tokens. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, authentication docs, an API reference, rate-limit docs, an AsyncAPI specification, and 16 JSON Schemas.

Use this API to interact with access tokens including: - [Personal access tokens](https://docs.gitlab.com/user/profile/personal_access_tokens/). - [Group access tokens](https://docs.gitlab.com/user/group/settings/group_access_tokens/). - [Project access tokens](https://docs.gitlab.com/user/project/settings/project_access_tokens/). - [Impersonation tokens](https://docs.gitlab.com/api/rest/authentication/#impersonation-tokens).

## Operations (34)

| Method | Path | Summary |
|---|---|---|
| GET | `/api/v4/users/{user_id}/impersonation_tokens` | List all impersonation tokens for a user |
| POST | `/api/v4/users/{user_id}/impersonation_tokens` | Create an impersonation token |
| GET | `/api/v4/users/{user_id}/impersonation_tokens/{impersonation_token_id}` | Retrieve an impersonation token for a user |
| DELETE | `/api/v4/users/{user_id}/impersonation_tokens/{impersonation_token_id}` | Revoke an impersonation token |
| POST | `/api/v4/users/{user_id}/personal_access_tokens` | Create a personal access token for a user |
| POST | `/api/v4/user/personal_access_tokens` | Create a personal access token |
| GET | `/api/v4/projects/{id}/service_accounts/{user_id}/personal_access_tokens` | List all personal access tokens for a project service account |
| POST | `/api/v4/projects/{id}/service_accounts/{user_id}/personal_access_tokens` | Create a personal access token for a project service account |
| DELETE | `/api/v4/projects/{id}/service_accounts/{user_id}/personal_access_tokens/{token_id}` | Revoke a personal access token for a project service account |
| POST | `/api/v4/projects/{id}/service_accounts/{user_id}/personal_access_tokens/{token_id}/rotate` | Rotate a personal access token for a project service account |
| GET | `/api/v4/groups/{id}/service_accounts/{user_id}/personal_access_tokens` | List all personal access tokens for a group service account |
| POST | `/api/v4/groups/{id}/service_accounts/{user_id}/personal_access_tokens` | Create a personal access token for a group service account |
| DELETE | `/api/v4/groups/{id}/service_accounts/{user_id}/personal_access_tokens/{token_id}` | Revoke a personal access token for a group service account |
| POST | `/api/v4/groups/{id}/service_accounts/{user_id}/personal_access_tokens/{token_id}/rotate` | Rotate a personal access token for a group service account |
| POST | `/api/v4/projects/{id}/access_tokens/self/rotate` | Rotate a project access token |
| POST | `/api/v4/groups/{id}/access_tokens/self/rotate` | Rotate a group access token |
| GET | `/api/v4/projects/{id}/access_tokens` | List all project access tokens |
| POST | `/api/v4/projects/{id}/access_tokens` | Create a project access token |
| GET | `/api/v4/projects/{id}/access_tokens/{token_id}` | Retrieve details on a project access token |
| DELETE | `/api/v4/projects/{id}/access_tokens/{token_id}` | Revoke a project access token |
| POST | `/api/v4/projects/{id}/access_tokens/{token_id}/rotate` | Rotate a project access token |
| GET | `/api/v4/groups/{id}/access_tokens` | List all group access tokens |
| POST | `/api/v4/groups/{id}/access_tokens` | Create a group access token |
| GET | `/api/v4/groups/{id}/access_tokens/{token_id}` | Retrieve details on a group access token |
| DELETE | `/api/v4/groups/{id}/access_tokens/{token_id}` | Revoke a group access token |
| POST | `/api/v4/groups/{id}/access_tokens/{token_id}/rotate` | Rotate a group access token |
| POST | `/api/v4/personal_access_tokens/self/rotate` | Rotate a personal access token |
| GET | `/api/v4/personal_access_tokens/self` | Retrieve a personal access token |
| DELETE | `/api/v4/personal_access_tokens/self` | Revoke a personal access token |
| GET | `/api/v4/personal_access_tokens/self/associations` | List all token associations |
| GET | `/api/v4/personal_access_tokens` | List all personal access tokens |
| GET | `/api/v4/personal_access_tokens/{id}` | Retrieve a personal access token |
| DELETE | `/api/v4/personal_access_tokens/{id}` | Revoke a personal access token |
| POST | `/api/v4/personal_access_tokens/{id}/rotate` | Rotate a personal access token |

## Machine-readable artifacts (65)

- **OpenAPI** — https://artifacts.apis.io/gitlab/openapi/gitlab-access-tokens-api-openapi.yml
- **Documentation** — https://docs.gitlab.com/api/openapi/
- **Documentation** — https://docs.gitlab.com/api/issues/
- **Authentication** — https://docs.gitlab.com/api/rest/authentication/
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-put-api-v4-application-settings-request-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-apientities-geo-node-status-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-apientities-geo-site-status-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-apientities-application-setting-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-post-api-v4-geo-status-request-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-put-api-v4-projects-id-request-schema.json
- **Documentation** — https://docs.gitlab.com/api/merge_requests/
- **Documentation** — https://docs.gitlab.com/api/pipelines/
- **Documentation** — https://docs.gitlab.com/api/jobs/
- **Documentation** — https://docs.gitlab.com/api/runners/
- **Documentation** — https://docs.gitlab.com/api/users/
- **Documentation** — https://docs.gitlab.com/api/repositories/
- **Documentation** — https://docs.gitlab.com/api/commits/
- **Documentation** — https://docs.gitlab.com/api/branches/
- **Documentation** — https://docs.gitlab.com/api/tags/
- **Documentation** — https://docs.gitlab.com/api/releases/
- **Documentation** — https://docs.gitlab.com/api/environments/
- **Documentation** — https://docs.gitlab.com/api/deployments/
- **Documentation** — https://docs.gitlab.com/api/pipeline_schedules/
- **Documentation** — https://docs.gitlab.com/api/labels/
- **Documentation** — https://docs.gitlab.com/api/milestones/
- **Documentation** — https://docs.gitlab.com/api/notes/
- **Documentation** — https://docs.gitlab.com/api/snippets/
- **Documentation** — https://docs.gitlab.com/api/packages/
- **Documentation** — https://docs.gitlab.com/api/container_registry/
- **Documentation** — https://docs.gitlab.com/api/vulnerabilities/
- **Documentation** — https://docs.gitlab.com/api/deploy_keys/
- **Documentation** — https://docs.gitlab.com/api/protected_branches/
- **Documentation** — https://docs.gitlab.com/api/wikis/
- **Documentation** — https://docs.gitlab.com/api/events/
- **Documentation** — https://docs.gitlab.com/api/search/
- **Documentation** — https://docs.gitlab.com/api/namespaces/
- **Documentation** — https://docs.gitlab.com/api/groups/
- **Documentation** — https://docs.gitlab.com/api/projects/
- **Documentation** — https://docs.gitlab.com/api/applications/
- **Documentation** — https://docs.gitlab.com/api/avatar/
- …and 25 more, listed in full on the page.

## Other GitLab APIs (12)

- [GitLab Orbit gRPC API](https://apis.io/apis/gitlab/gitlab-orbit-api/)
- [GitLab GraphQL API](https://apis.io/apis/gitlab/gitlab-graphql-api/)
- [GitLab Applications API](https://apis.io/apis/gitlab/gitlab-applications-api/)
- [GitLab Authorization API](https://apis.io/apis/gitlab/gitlab-authorization-api/)
- [GitLab Broadcast Messages API](https://apis.io/apis/gitlab/gitlab-broadcast-messages-api/)
- [GitLab Groups API](https://apis.io/apis/gitlab/gitlab-groups-api/)
- [GitLab Metadata API](https://apis.io/apis/gitlab/gitlab-metadata-api/)
- [GitLab Project Webhooks API](https://apis.io/apis/gitlab/gitlab-project-webhooks-api/)
- [GitLab Projects API](https://apis.io/apis/gitlab/gitlab-projects-api/)
- [GitLab Tokens API](https://apis.io/apis/gitlab/gitlab-tokens-api/)
- [GitLab User Info API](https://apis.io/apis/gitlab/gitlab-user-info-api/)
- [GitLab Webhook Configuration API](https://apis.io/apis/gitlab/gitlab-webhook-configuration-api/)

## Tags

Access Tokens

---

Profiled by [API Evangelist](https://apievangelist.com) and published on [APIs.io](https://apis.io/apis/gitlab/gitlab-access-tokens-api/). The API's provider profile, Kin Score and agent-readiness rating are at https://apis.io/providers/gitlab/.
