Represents a GitLab project access token — an API token scoped to a specific project that authenticates as a bot user with a defined project role. Project access tokens are used for programmatic project access (CI/CD integrations, deploy scripts, third-party tools) without requiring a personal user account.
The token's effective permissions are modeled via a GL_HasRole edge to the corresponding GL_ProjectRole node for the token's access level.
Each node carries GL_ProjectAccessToken as its primary kind and GL_AccessToken as a base kind, allowing queries that target all token types generically.
| Property Name | Data Type | Description |
|---|---|---|
| name | string | Token name (user-defined label) |
| active | bool | Whether the token is currently active |
| revoked | bool | Whether the token has been explicitly revoked |
| scopes | string[] | API scopes granted to this token |
| access_level | string | Project role level: Guest, Reporter, Developer, Maintainer, or Owner |
| created_at | datetime | When the token was created |
| last_used | datetime | When the token was last used |
| expires_at | datetime | Token expiration date |
flowchart TD
GL_Project[fa:fa-diagram-project GL_Project]
GL_ProjectAccessToken[fa:fa-key GL_ProjectAccessToken]
GL_ProjectRole[fa:fa-user-tie GL_ProjectRole]
GL_ProjectAccessToken -->|GL_HasRole| GL_ProjectRole
GL_Project -.->|GL_HasToken| GL_ProjectAccessToken