GitLab integration for AI agents.
GitLab integration for AI agents with secure authentication and server-side credential injection. Open Connector runs the OAuth, seals the token in an encrypted vault, and serves GitLab tools to your agent over MCP or a typed API — credentials injected server-side, every call audited, nothing leaving your infrastructure. Open source (AGPL-3.0) and self-hostable.
Real GitLab actions, managed and audited.
Your user connects GitLab once; your agent can then access the GitLab REST API — scoped to the OAuth permissions you grant and the tool allowlist you configure. Every action is least-privilege and written to a tamper-evident audit trail.
- 1
Your user grants GitLab access once (OAuth) — the token lands in the vault.
- 2
Your agent calls a tool over MCP or the typed API; Open Connector injects the credential server-side.
- 3
Every routed call appends a hash-chained audit record — nothing leaves your infra.
Supported GitLab tools.
1,741 tools are generated from the published GitLab catalog. Descriptions are plain text; each action remains subject to its configured authentication and tool allowlist.
Showing 1,741 tools. All published catalog entries are included in this page's server-rendered HTML.
- Clear the ActiveContext dead queue
- Clear the ActiveContext dead queue
- Active context
- Delete instance variable
- Deletes a specified instance variable.
- CI variables
- Delete instance cluster
- Deletes an existing instance cluster. Does not remove existing resources in the connected Kubernetes cluster.
- Clusters
- Disable a namespace for Knowledge Graph
- This endpoint disables Knowledge Graph for a specific namespace
- Knowledge graph
- Delete Admin Role
- Delete Admin Role
- Member roles
- Delete jobs from a Sidekiq queue
- Deletes jobs from a Sidekiq queue that match the specified metadata.
- Sidekiq
- Remove a namespace from a node for Zoekt indexing
- Remove a namespace from a node for Zoekt indexing
- Code search
- Delete a registered flow callback endpoint
- Deletes a registered flow callback endpoint so it no longer receives deliveries.
- Duo workflow flow callback hooks
- Delete an application
- Delete a specific application
- Applications
- Delete a broadcast message
- Deletes a specified broadcast message.
- Broadcast messages
- Clear a variant assignment for an experiment context
- Removes the cached variant assignment for the given experiment and context, returning the actor to normal rollout assignment. Defaults to current user if no context is provided.
- Experiments
- Delete cached assignments for an experiment
- Removes all cached variant assignments for the experiment with the given cache key. Useful for cleaning up completed experiments whose code has been removed from the codebase.
- Experiments
- Delete a feature
- Deletes a feature gate. Returns the same response if the feature gate does not exist.
- Features
- Delete a Geo node
- Deletes a specified Geo node.
- Geo
- Delete a Geo site
- Deletes a specified Geo site.
- Geo
- Schedule a group for deletion
- Schedules a group for deletion. Groups are deleted at the end of the retention period (30 days by default). Use the `permanently_remove` param to override the retention period.
- Groups
- Deny an access request
- Denies an access request for a specified user in a group.
- Access requests
- Revoke a group access token
- Revokes a specified group access token.
- Access tokens
- Delete a badge from a group
- Deletes a specified badge from a group.
- Badges
- Remove a billable member from a group
- Removes a specified billable member from a group and its subgroups and projects. The user does not need to be a group member to qualify for removal. For example, if the user was added directly to a project in the group, you can still remove them using this operation.
- Members
- Delete a group issue board
- Deletes a specified group issue board.
- Boards
- Delete a group issue board list
- Deletes a specified group issue board list. Only for administrators and users with the Owner role for the group.
- Boards
- Delete a group cluster
- Deletes a specified group cluster. Does not remove existing resources in the connected Kubernetes cluster.
- Clusters
- Delete a custom attribute for a group
- Deletes a specified custom attribute for a group.
- Custom attributes
- Delete a Debian group distribution
- Deletes a specified Debian group distribution for a group.
- Packages: Debian
- Destroy an epic
- Deletes an epic
- Epics
- Remove epics relation
- Remove epics relation
- Epics
- Remove an issue from the epic
- Removes an issue from the epic. Does not delete the issue.
- Epics
- Purge the dependency proxy for a group
- Purges the dependency proxy for a specified group and schedules the cached manifests and blobs for deletion. This endpoint requires the Owner role for the group.
- Dependency proxy
- Delete a group deploy token
- Deletes a group deploy token.
- Deploy resources
- Delete an enterprise user
- Deletes a specified enterprise user.
- Enterprise users
- Delete an emoji reaction from an epic
- Deletes a specified emoji reaction from an epic. Only an administrator or the user who added the reaction can delete it.
- Award emoji
- Delete an emoji reaction from an epic comment
- Deletes a specified emoji reaction from a comment on an epic. Only an administrator or the user who added the reaction can delete it.
- Award emoji
- Delete a related epic link
- Deletes a two-way relation between two specified epics. The user must have the Guest, Planner, Reporter, Developer, Maintainer, or Owner role for both groups.
- Epics
- Delete a comment from an epic discussion
- Deletes a specified comment from a epic discussion.
- Discussions
- Delete an epic note
- Deletes a specified note from an epic.
- Notes
- Delete a group hook
- Deletes a hook from a group. This is an idempotent method and can be called multiple times. Either the hook is available or not.
- Hooks
- Delete a custom header
- Deletes a custom header from a specified webhook.
- Hooks
- Delete a URL variable
- Deletes a URL variable from a specified webhook.
- Hooks
- Disable an integration
- Disables a specified integration. Integration settings are preserved.
- Integrations
- Delete an invitation to a group
- Deletes a pending invitation to a specified email address for a group.
- Invitations
- Delete a group label
- Deletes a specified group label.
- Labels
- Delete a group label
- Deletes a specified group label.
- Labels
- Delete an LDAP group link with CN or filter
- Deletes an LDAP group link using a CN or filter.Deleting by filter is only supported in the Premium tier and above.
- LDAP
- Delete LDAP group link
- Deletes an LDAP group link. Deprecated. Scheduled for removal in a future release.
- LDAP
- Delete LDAP group link
- Deletes an LDAP group link for a specific LDAP provider.Deprecated. Scheduled for removal in a future release.
- LDAP
- Revoke a personal access token for an enterprise user
- Revokes a specified personal access token for an enterprise user.
- Group credentials inventory
- Revoke a group or project access token for a group
- Revokes a specified group or project access token associated with a top-level group.
- Group credentials inventory
- Delete an SSH key for an enterprise user
- Deletes a specified SSH public key for an enterprise user associated with the top-level group.
- Group credentials inventory
- Remove member role of a group
- Removes a specified member role from a group.
- Member roles
- Remove a member from a group
- Removes a specified user from a group. The user must be a direct member.
- Members
- Remove an LDAP access level override
- Removes an LDAP access level override for a member of a group.
- Members
- Delete a group milestone
- Deletes the specified group milestone.
- Milestones
- Unprotect repository branches
- Unprotects a specified protected branch Unprotect multiple branches by using a wildcard in the `name`.
- Protected branches
- Unprotect a group environment
- Unprotects a specified protected environment for a group.
- Protected environments
- Delete the push rules of a group
- Deletes all the push rules of a specified group.
- Push rules
- Delete SAML group link
- Deletes a SAML group link for the group
- SAML group links
- Delete a SAML identity
- Deletes a specified SAML identity.
- Provider identities
- Delete a SCIM identity
- Deletes a specified SCIM identity.
- Provider identities
- Delete a group service account
- Deletes a specified group service account. Available only for group Owners and administrators.
- Service accounts
- Revoke a personal access token for a group service account
- Revokes a specified personal access token for a group service account.
- Access tokensService accounts
- Remove a group from a group
- Removes a group from a group.
- Groups
- Remove a shared project from a group
- Removes a shared project targeting this group. The group Owner can remove a shared project without access to the source project.
- Groups
- Delete a group SSH certificate
- Deletes a specified group SSH certificate.
- Keys
- Delete an uploaded file by secret and filename
- Deletes an uploaded file with a specified secret and filename. You must have the Maintainer or Owner role for the group.
- Groups
- Delete an uploaded file by ID
- Deletes an uploaded file with a specified ID. You must have the Maintainer or Owner role for the group.
- Groups
- Delete a group variable
- Deletes a specified group variable. If there are multiple variables with the same key, use `filter` to select the correct `environment_scope`.
- CI variables
- Delete a wiki page meta note
- Deletes a specified note from a wiki page meta.
- Notes
- Delete a wiki page for a group
- Deletes a specified wiki page from a group.
- Wikis
- Delete a system hook
- Deletes a specified system hook. Administrators only.
- Hooks
- Delete a custom header
- Deletes a custom header from a specified webhook.
- Hooks
- Delete a URL variable
- Deletes a URL variable from a specified webhook.
- Hooks
- Delete a GitLab for Jira (Forge) namespace subscription
- Unsubscribes a GitLab namespace from the Forge installation.
- Jira forge subscriptions
- Delete a license
- Deletes a specified license.
- Licenses
- Delete an instance member role
- Deletes an instance member role.
- Member roles
- Removes a storage limit exclusion for a Namespace
- Removes a Namespaces::Storage::LimitExclusion
- Namespaces
- Soft-delete an organization
- This feature was introduced in GitLab 19.2.
- Organizations
- Delete a recipe and package
- Deletes a specified Conan recipe and associated package files from the package registry.
- Packages: Conan
- Revoke a personal access token
- Revokes a specified personal access token. Administrators can revoke tokens for any user. Non-administrators can only revoke their own tokens.
- Access tokens
- Revoke a personal access token
- Revokes a personal access token by passing it to the API in a header.
- Access tokens
- Delete a project alias
- Deletes a specified project alias. Administrators only.
- Project alias
- Delete a project
- Deletes a specified project.
- Projects
- Deny an access request
- Denies an access request for a specified user in a project.
- Access requests
- Revoke a project access token
- Revokes a specified project access token.
- Access tokens
- Delete a metric image
- Deletes a specified metric image for an alert.
- Alert management
- Delete an approval rule for a project
- Deletes an approval rule for a specified project.
- Approval rules
- Delete an approval rule
- Private API subject to change
- Approval rules
- Delete all job artifacts in a project
- Deletes job artifacts from all jobs in a specified project.
- Job artifacts
- Delete a badge from a project
- Deletes a specified badge from a project.
- Badges
- Delete an issue board
- Deletes a specified issue board in a project.
- Boards
- Delete a list from an issue board
- Deletes a specified list from an issue board.
- Boards
- Delete an agent
- Deletes an existing agent registration. You must have the Maintainer or Owner role to use this endpoint.
- Cluster agents
- Revoke an agent token
- Revokes an agent token. You must have the Maintainer or Owner role to use this endpoint.
- Cluster agents
- Delete an agent URL configuration
- Deletes an agent URL configuration. You must have the Maintainer or Owner role to use this endpoint. This feature was introduced in GitLab 17.4.
- Cluster agents
- Delete cluster from a project
- Deletes a specified cluster from a project. Does not remove existing resources in the connected Kubernetes cluster.
- Clusters
- Delete a custom attribute for a project
- Deletes a specified custom attribute for a project.
- Custom attributes
- Delete a Debian project distribution
- Deletes a specified Debian project distribution for a project.
- Packages: Debian
- Delete a deploy key
- Deletes a deploy key from the project. If the deploy key is used only for this project, it is deleted from the system.
- Deploy resources
- Delete a project deploy token
- Deletes a project deploy token.
- Deploy resources
- Delete a deployment
- Deletes a specified deployment that is not currently the last deployment for an environment or in a `running` state.
- Deploy resources
- Delete an environment
- Deletes an environment from a project. The environment must be stopped first.
- Environments
- Schedule multiple stopped review apps for deletion
- Schedules multiple stopped review apps for deletion. The deletion is performed after 1 week. By default, only environments 30 days or older are deleted.
- Environments
- Delete a client key
- Deletes an integrated error tracking client key from a specified project.
- Error tracking
- Delete external status check service
- Deletes a specified external status check service for a project.
- External status checks
- Delete a feature flag
- Deletes a specified feature flag.
- Feature flags
- Delete feature flag user list
- Deletes a specified feature flag user list.
- Feature flags
- Delete a fork relationship
- Deletes a fork relationship between projects.
- Projects
- Delete a freeze period
- Deletes a freeze period for a specified `freeze_period_id`. You must have the Maintainer or Owner role for the project.
- Freeze periods
- Delete a project webhook
- Deletes a specified webhook for a project.
- Hooks
- Delete a custom header
- Deletes a custom header from a specified webhook.
- Hooks
- Delete a URL variable
- Deletes a URL variable from a specified webhook.
- Hooks
- Disable an integration
- Disables a specified integration. Integration settings are preserved.
- Integrations
- Delete an invitation to a project
- Deletes a pending invitation to a specified email address for a project.
- Invitations
- Delete an issue
- Deletes a specified issue.
- Projects
- Delete an emoji reaction from an issue
- Deletes a specified emoji reaction from an issue. Only an administrator or the user who added the reaction can delete it.
- Award emoji
- Delete an issue link
- Deletes a specified issue link, removing the two-way relationship.
- Issues
- Delete a metric image from an incident
- Deletes a metric image from an incident.
- Metric images
- Delete an emoji reaction from an issue comment
- Deletes a specified emoji reaction from a comment on an issue. Only an administrator or the user who added the reaction can delete it.
- Award emoji
- Delete a comment from an issue discussion
- Deletes a specified comment from a issue discussion.
- Discussions
- Delete an issue note
- Deletes a specified note from an issue.
- Notes
- Delete a project from a CI/CD job token allowlist
- Deletes a project from the CI/CD job token allowlist of a specified project.
- Projects job token scope
- Delete a group from a CI/CD job token allowlist
- Deletes a group from the CI/CD job token allowlist of a specified project.
- Projects job token scope
- Delete job artifacts
- Deletes job artifacts from a specified job in a project.
- Job artifacts
- Delete an existing label
- Deprecated in GitLab 12.4. Use DELETE /projects/:id/labels/:name instead.
- Labels
- Delete a project label
- Deletes a specified label from a project.
- Labels
- Delete a software license policy
- Deletes a specified software license policy from a project.
- Licenses
- Remove a member from a project
- Removes a specified user from a project. The user must be a direct member.
- Members
- Delete a merge request
- Deletes a specified merge request for a project. Administrators and project Owners only.
- Merge requests
- Delete an approval rule for a merge request
- Deletes a specified approval rule for a merge request. The `report_approver` or `code_owner` rules are system-generated, and you cannot edit them.
- Merge request approvals
- Delete an emoji reaction from a merge request
- Deletes a specified emoji reaction from a merge request. Only an administrator or the user who added the reaction can delete it.
- Award emoji
- Remove a merge request dependency
- Removes a merge request dependency.
- Merge requests
- Delete context commits from a merge request
- Deletes specified context commits from a merge request.
- Merge requests
- Delete a draft note
- Deletes a draft note for a specified merge request.
- Draft notes
- Delete an emoji reaction from a merge request comment
- Deletes a specified emoji reaction from a comment on a merge request. Only an administrator or the user who added the reaction can delete it.
- Award emoji
- Delete a comment from a merge request discussion
- Deletes a specified comment from a merge request discussion.
- Discussions
- Delete a merge request note
- Deletes a specified note from a merge request.
- Notes
- Delete a project milestone
- Deletes a specified project milestone. Only for users with the Planner, Reporter, Developer, Maintainer, or Owner role for the project.
- Milestones
- Delete a Registered Model by Name
- https://mlflow.org/docs/2.19.0/rest-api.html#delete-registeredmodel
- MLOps
- Delete a recipe and package
- Deletes a specified Conan recipe and associated package files from the package registry.
- Packages: Conan
- Delete recipe revision
- Deletes a specified recipe revision from the registry. If the recipe revision is the only one, the package is deleted as well. This feature was introduced in GitLab 18.1.
- Packages: Conan
- Delete a package revision
- Deletes a specified package revision from the registry. If the package reference has only one package revision, the package reference is deleted as well. This feature was introduced in GitLab 18.1.
- Packages: Conan
- Delete a project package
- Deletes a specified project package.
- Packages
- Delete a package file
- Deletes a specified package file.
- Packages
- Delete a package protection rule
- Deletes a package protection rule from a specified project.
- Projects
- Unpublish Pages
- Unpublishes Pages from a specified project. You must have the Maintainer or Owner role for the project.
- GitLab Pages
- Delete Pages domain
- Deletes a specified Pages domain in a project.
- GitLab Pages
- Delete a pipeline schedule
- Deletes a pipeline schedule for a project.
- Pipeline schedules
- Delete a variable for a pipeline schedule
- Deletes a specified variable for a pipeline schedule.
- Pipeline schedules
- Delete a pipeline
- Deletes a specified pipeline for a project.
- Pipelines
- Unprotect repository branches
- Unprotects a specified protected branch or wildcard protected branch.
- Protected branches
- Unprotect a protected environment for a project
- Unprotects a specified protected environment for a project.
- Protected environments
- Unprotect repository tags
- Unprotects a specified protected tag or wildcard protected tag.
- Protected tags
- Delete the push rules of a project
- Deletes all the push rules of a specified project.
- Push rules
- Delete a container repository protection rule
- Deletes a specified container repository protection rule.
- Projects
- Delete a container registry protection tag rule
- Deletes a container registry protection tag rule from a project. This feature was introduced in GitLab 18.9.
- Projects
- Delete registry repository
- Deletes a specified repository in the registry. This operation is executed asynchronously and might take some time to execute.
- Container registry
- Delete multiple registry repository tags
- Deletes multiple registry repository tags based on the specified criteria.
- Container registry
- Delete a registry repository tag
- Deletes a specified container registry repository tag.
- Container registry
- Delete a release
- Delete a release. Deleting a release doesn't delete the associated tag. Requires at least the Developer role for the project. This feature was introduced in GitLab 11.7.
- Releases
- Delete a release link
- Deletes a specified asset link from a release.
- Releases
- Delete a remote mirror from a project
- Deletes a specified remote mirror from a project.
- Remote mirrors
- Delete a repository branch
- Deletes a specified branch from the repository.
- Branches
- Delete a comment from a commit discussion
- Deletes a specified comment from a commit discussion.
- Discussions
- Delete a file in a repository
- Deletes a specified file in a repository. Use the Commits API to delete multiple files with a single request.
- Files
- Delete all merged branches
- Deletes all branches that are merged into the default branch for a project.
- Branches
- Delete a tag
- Deletes a specified repository tag.
- Tags
- Unassign a runner from a project
- Unassigns a specified project runner from a project. You cannot unassign a runner from the owner project. Use the delete a runner operation instead.
- RunnersProjects
- Delete a secure file
- Deletes a specified secure file from a project.
- Secure files
- Delete a project service account
- Deletes a specified project service account. Available only for project Owners, Maintainers, and administrators.
- Service accounts
- Revoke a personal access token for a project service account
- Revokes a specified personal access token for a project service account.
- Access tokensService accounts
- Disable an integration
- Disables a specified integration. Integration settings are preserved.
- Integrations
- Delete a shared project link in a group
- Deletes a shared project link in a group.
- Projects
- Delete a comment from a snippet discussion
- Deletes a specified comment from a snippet discussion.
- Discussions
- Delete a snippet note
- Deletes a specified note from a snippet.
- Notes
- Delete a project snippet
- Deletes a specified project snippet.
- Snippets
- Delete an emoji reaction from a snippet
- Deletes a specified emoji reaction from a snippet. Only an administrator or the user who added the reaction can delete it.
- Award emoji
- Delete an emoji reaction from a snippet comment
- Deletes a specified emoji reaction from a comment on a snippet. Only an administrator or the user who added the reaction can delete it.
- Award emoji
- Delete a Terraform state
- Deletes a Terraform state for a specified project.
- Terraform
- Unlock a Terraform state
- Unlocks a Terraform state for a specified project.
- Terraform
- Delete a Terraform state version
- Deletes a specified Terraform state version.
- Terraform
- Delete a Terraform state protection rule
- This feature was introduced in GitLab 19.0.
- Projects
- Delete a pipeline trigger token
- Deletes a pipeline trigger token for a project.
- CI triggers
- Delete an uploaded file by secret and filename
- Deletes an uploaded file with a specified secret and filename. You must have the Maintainer or Owner role for the project.
- Projects
- Delete an uploaded file by ID
- Deletes an uploaded file with a specified ID. You must have the Maintainer or Owner role for the project.
- Projects
- Delete a variable
- Deletes a project variable. If there are multiple variables with the same key, use `filter` to select the correct `environment_scope`.
- CI variables
- Delete a vulnerability note
- Deletes a specified note from a vulnerability.
- Notes
- Delete a wiki page meta note
- Deletes a specified note from a wiki page meta.
- Notes
- Delete a wiki page for a project
- Deletes a specified wiki page from a project.
- Wikis
- Delete a runner controller
- Deletes a specified runner controller. Administrators only.
- Runner controllers
- Remove instance scope
- Removes an instance scope from a runner controller.
- Runner controllers
- Remove runner scope
- Removes a runner scope from a runner controller.
- Runner controllers
- Revoke a runner controller token
- Revokes an existing runner controller token.
- Runner controller tokens
- Delete a registered runner
- Deletes a specified registered runner.
- CI runners
- Delete a runner
- Deletes a specified runner.
- Runners
- Delete a registered runner manager
- Delete a registered runner manager
- CI runners
- Delete snippet
- Deletes a specified snippet.
- Snippets
- Delete a project topic
- Deletes a specified project topic. Administrators only.
- Project topics
- Delete an application
- Deletes a specified application owned by the authenticated user.
- Applications
- Delete an email address
- Deletes the specified email address. You cannot delete a primary email address. Any future emails sent to the deleted email address are sent to the primary email address instead.
- Users
- Delete a GPG key
- Deletes a GPG key from your user account.
- Keys
- Delete an SSH key
- Deletes a specified SSH key from the currently authenticated user.
- Keys
- Delete a user
- Deletes a user. Administrators only.
- Users
- Delete a custom attribute for a user
- Deletes a specified custom attribute for a user.
- Custom attributes
- Delete an email address for a user
- Deletes a specified email address for a user account. You cannot delete a primary email address. Administrators only.
- Users
- Delete a GPG key for a user
- Deletes a GPG key from a specified user account. Administrators only.
- Keys
- Delete authentication identity from a user
- Deletes a user authentication identity using the provider name associated with that identity. Administrators only.
- Users
- Delete an SSH key for a user
- Deletes an SSH key from a specified user account. Administrators only.
- Keys
- Revoke an impersonation token
- Revokes an impersonation token for a specified user. Administrators only.
- Access tokens
- Deletes all user vscode setting resources
- Deletes all user vscode setting resources
- VSCode
- Deletes all user vscode setting resources
- Deletes all user vscode setting resources
- VSCode
- Delete a link between an issue and a vulnerability
- Delete a link between an issue and a vulnerability
- Vulnerabilities
- Get all ActiveContext connections
- Get all ActiveContext connections
- Active context
- Get the list of batched background migrations
- Get the list of batched background migrations
- Batched background migrations
- Retrieve a batched background migration
- Retrieve a batched background migration
- Batched background migrations
- Get the list of batched background operations
- This feature was introduced in GitLab 19.1.
- Batched background operations
- Retrieve a batched background operation
- This feature was introduced in GitLab 19.1.
- Batched background operations
- List all instance variables
- Lists all instance-level variables. Use the `page` and `per_page` pagination parameters to control the pagination of results.
- CI variables
- Retrieve instance variable details
- Retrieves details of a specified instance-level variable.
- CI variables
- List all instance clusters
- Lists all instance clusters for the instance.
- Clusters
- Retrieve a single instance cluster
- Retrieves a specified instance cluster.
- Clusters
- Retrieve model information
- Retrieves information about a data model in an instance. Only available to administrators.
- Data management
- Retrieve information about a model record
- Retrieves information about a specified model record. Only available to administrators.
- Data management
- Retrieve dictionary details
- Retrieve dictionary details
- Database dictionary
- Get all enabled namespaces for Knowledge Graph
- This endpoint retrieves all namespaces that have Knowledge Graph enabled
- Knowledge graph
- Get Admin Roles for this GitLab instance
- Get Admin Roles for this GitLab instance
- Member roles
- List all pending migrations
- Lists all pending migrations for the instance.
- Migrations
- List all advanced search migrations
- Lists all advanced search migrations for the GitLab instance.
- Search
- Retrieve an advanced search migration
- Retrieves a specified advanced search migration by migration version or name.
- Search
- Retrieve security policy settings
- Retrieves the current security policy settings for this GitLab instance.
- Compliance policy settings
- Get all the Zoekt nodes
- Get all the Zoekt nodes
- Code search
- Get all the indexed namespaces for this node
- Get all the indexed namespaces for this node
- Code search
- Fetch the Duo Code Review custom instructions for a merge request
- Fetch all Duo Code Review custom instructions for a merge request.
- GitLab Duo workflows
- List registered flow callback endpoints
- Lists the flow callback endpoints registered for your organization. Secrets are not returned.
- Duo workflow flow callback hooks
- Get a registered flow callback endpoint
- Returns a single registered flow callback endpoint. Secrets are not returned.
- Duo workflow flow callback hooks
- List Duo Agent Platform tools
- List Duo Agent Platform tools
- GitLab Duo workflows
- List all agent privileges
- Lists all available agent privileges with their IDs, names, descriptions, and whether each is enabled by default. This endpoint has no supported attributes.
- GitLab Duo workflows
- Get workflow details
- Get workflow details
- GitLab Duo workflowsInternal operations
- List all workflow checkpoints
- List all workflow checkpoints
- GitLab Duo workflowsInternal operations
- Get details on a workflow checkpoint
- Get details on a workflow checkpoint
- GitLab Duo workflowsInternal operations
- List all workflow events
- List all workflow events
- GitLab Duo workflowsInternal operations
- Get workflow trace as JSONL
- Returns the full trace of a workflow session as JSON Lines (JSONL). Each line is a JSON object representing one checkpoint event in chronological order.
- GitLab Duo workflows
- Get Duo Workflows WebSocket connection details
- Get Duo Workflows WebSocket connection details
- GitLab Duo workflows
- List code review information about project
- List code review information about project
- Code review analytics
- Retrieve count of recently created issues for a group
- Retrieves the count of recently created issues for a specified group.
- Analytics
- Retrieve count of recently created merge requests for a group
- Retrieves the count of recently created merge requests for a specified group.
- Analytics
- Retrieve count of members recently added to a group
- Retrieves the count of members recently added to a specified group.
- Analytics
- Get the current appearance
- Get the current appearance
- Instance
- Get current plan limits
- List the current limits of a plan on the GitLab instance.
- Plan limits
- Retrieve application settings
- Retrieves the current application settings for this GitLab instance.
- Instance
- Retrieve application statistics
- Retrieves the current application statistics for this GitLab instance.
- Instance
- Get applications
- List all registered applications
- Applications
- List all instance audit events
- Lists all available instance audit events, limited to a maximum of 30 days for each query.
- Audit events
- Retrieve an instance audit event
- Retrieves a specified instance audit event.
- Audit events
- Return avatar url for a user
- Return avatar url for a user
- Avatars
- List all broadcast messages
- Lists all broadcast messages for the instance.
- Broadcast messages
- Retrieve a broadcast message
- Retrieves a specified broadcast message.
- Broadcast messages
- List all group or project migrations
- Lists all group or project migrations.
- Imports
- List all group or project migration entities
- Lists all group or project migration entities.
- Imports
- Retrieve a group or project migration
- Retrieves details of a group or project migration.
- Imports
- List all group or project migration entities
- Lists all group or project migration entities for a specified migration.
- Imports
- Retrieve a group or project migration entity
- Retrieves details of a group or project migration entity.
- Imports
- List all failed import records for a migration entity
- Lists all failed import records for a group or project migration entity. This feature was introduced in GitLab 16.6.
- Imports
- List dictionary tables
- Returns database dictionary tables filtered by database and optional table size
- Database dictionary
- Retrieve a single dependency list export
- Retrieves a dependency list export.
- Dependency management
- Download dependency list export
- Downloads a dependency list export.
- Dependency management
- List all deploy keys
- Lists all deploy keys for the instance.
- Deploy resources
- List all deploy tokens
- Lists all deploy tokens for the instance.
- Deploy resources
- List all certificate-based clusters
- Lists all certificate-based clusters associated with a project. This feature was introduced in GitLab 17.9.
- Clusters
- List all events
- Lists all events for the authenticated user. Does not return events associated with epics or merge requests. Returns bulk push events with limited commit details.
- Events
- List all experiments
- Lists all experiments on the GitLab instance. Each experiment has an `enabled` status that indicates whether the experiment is enabled globally, or only in specific contexts.
- Experiments
- Get current variant assignment for an experiment context
- Returns the currently cached variant assignment for the given experiment and context. Defaults to current user if no context is provided.
- Experiments
- Get Unleash features
- Get Unleash features
- Unleash
- Get a list of features
- Get a list of features
- Unleash
- Get a list of features (v2 client support)
- Deprecated in GitLab 15.6
- Unleash
- List all feature flags
- Lists all feature flags for the instance.
- Features
- List all feature flag definitions
- Lists all feature flag definitions.
- Features
- List all Geo nodes
- Lists all Geo nodes for the instance.
- Geo
- Retrieve a single Geo node
- Retrieves a single Geo Node.
- Geo
- Retrieve metrics for a Geo node
- Retrieves metrics for a specified Geo node.
- Geo
- List all Geo node statuses
- Lists all Geo node statuses.
- Geo
- Returns a Geo proxy response
- Returns a Geo proxy response
- Geo
- Returns the list of pipeline refs for the project
- Returns the list of pipeline refs for the project
- Geo
- Returns a replicable file from store (via CDN or sendfile)
- Returns a replicable file from store (via CDN or sendfile)
- Geo
- List all Geo sites
- Lists all Geo sites for the instance.
- Geo
- Retrieve a Geo site
- Retrieves a specified Geo site.
- Geo
- Retrieve a Geo site status
- Retrieves the status for a specified Geo site.
- Geo
- List all Geo site statuses
- Lists all Geo site statuses.
- Geo
- Retrieve repository URL templates
- Retrieves the repository URL templates for requesting individual packages for a group.
- Packages: Composer
- List all packages for a group
- Lists all repository packages for a specified group. Composer V2 is recommended over V1.
- Packages: Composer
- List all group repository storage moves
- Lists all group repository storage moves for an instance.
- Storage moves
- Retrieve a group repository storage move
- Retrieves a specified group repository storage move. This feature was introduced in GitLab 13.9.
- Storage moves
- List all groups
- Lists all visible groups for the authenticated user. Unauthenticated requests return only public groups.
- Groups
- Retrieve a group
- Retrieves a specified group by ID or path.
- Groups
- List all access requests for a group
- Lists all access requests for a specified group that are viewable by the authenticated user.
- Access requests
- List all group access tokens
- Lists all group access tokens for a specified group.
- Access tokens
- Retrieve details on a group access token
- Retrieves details on a specified group access token.
- Access tokens
- List all approval rules for a group
- Lists all approval rules and any associated details for a specified group. Restricted to group administrators. Use the `page` and `per_page` pagination parameters to restrict the list of approval rules.
- Approval rules
- List all group audit events
- Lists all audit events for a specified group.
- Audit events
- Retrieve a group audit event
- Retrieves an audit event for a specified group. Only available to group Owners and administrators.
- Groups
- Download a group avatar
- Downloads a group avatar image.
- Avatars
- List all badges for a group
- Lists all badges for a specified group.
- Badges
- Retrieve a badge for a group
- Retrieves a specified badge for a group.
- Badges
- Retrieve a badge preview for a group
- Previews the final `link_url` and `image_url` for a specified group after resolving the placeholder interpolation.
- Badges
- List all billable group members
- Lists all billable members of a specified top-level group. Includes members in any subgroups or projects. You must have the Owner role for the group.
- Groups
- List all indirect memberships for a billable group member
- Lists all indirect memberships for a billable member of a group. This operation works on top-level groups only. It does not work on subgroups.
- Members
- List all memberships for a billable group member
- Lists all memberships for a specified billable member of a group. The response represents only direct memberships. Inherited memberships are not included.
- Members
- List all group issue boards in a group
- Lists all group issue boards for a specified group.
- Boards
- Retrieve a group issue board
- Retrieves a specified group issue board.
- Boards
- List all group issue board lists
- Lists all group issue board lists for a specified board. Does not include `open` and `closed` lists.
- Boards
- Retrieve a group issue board list
- Retrieves a specified group issue board list.
- Boards
- List all group clusters
- Lists all group clusters for a specified group.
- Clusters
- Retrieve a group cluster
- Retrieves a specified group cluster.
- Clusters
- List all custom attributes for a group
- Lists all custom attributes for a specified group.
- Custom attributes
- Retrieve a custom attribute for a group
- Retrieves a specified custom attribute for a group.
- Custom attributes
- List all Debian group distributions
- Lists all Debian distributions for a specified group.
- Packages: Debian
- Retrieve a Debian group distribution
- Retrieves a specified Debian group distribution for a group.
- Packages: Debian
- Retrieve a Debian group distribution key
- Retrieves a specified Debian group distribution key for a group.
- Packages: Debian
- List all group epics
- Lists all epics for a specified group and its subgroups. Responses are paginated and return 20 results by default.
- Epics
- Get details of an epic
- Gets a single epic
- Epics
- Get related epics
- Get related epics
- Epics
- List all issues for an epic
- Lists all issues assigned to a specified epic that are available to the authenticated user. Responses are paginated and return 20 results by default.
- Epics
- Download Debian package
- This feature was introduced in GitLab 14.2
- Packages: Debian
- The NuGet V3 Feed Service Index
- This feature was introduced in GitLab 12.6
- Packages: NuGet
- The NuGet Search Service
- This feature was introduced in GitLab 12.8
- Packages: NuGet
- The NuGet V2 Feed Service Index
- This feature was introduced in GitLab 16.2
- Packages: NuGet
- The NuGet V2 Feed Package $metadata endpoint
- This feature was introduced in GitLab 16.3
- Packages: NuGet
- List all packages for a group
- Lists all packages for a specified group in an HTML file.
- Packages: PyPi
- Search on GitLab within a group
- This feature was introduced in GitLab 10.5.
- Search
- List all group deploy tokens
- Lists all group deploy tokens.
- Deploy resources
- Retrieve a group deploy token
- Get a single group's deploy token by ID. This feature was introduced in GitLab 14.9.
- Deploy resources
- List all descendant groups
- Lists all descendant groups for a specified group.
- Groups
- Retrieve group-level DORA metrics
- Retrieves DORA metrics for a specified group.
- DORA metrics
- List all enterprise users
- Lists all enterprise users for a specified top-level group. Use the `page` and `per_page` pagination parameters to filter the results.
- Enterprise users
- Retrieve an enterprise user
- Retrieves a specified enterprise user.
- Enterprise users
- List all epic boards in a group
- Lists all epic boards for a specified group. This feature was introduced in GitLab 15.9.
- Epics
- Retrieve a group epic board
- Retrieves a specified group epic board. This feature was introduced in GitLab 15.9.
- Epics
- List all group epic board lists
- Lists all group epic board lists for a specified board. Does not include `open` and `closed` lists. This feature was introduced in GitLab 15.9.
- Epics
- Retrieve a group epic board list
- Retrieves a specified group epic board list. This feature was introduced in GitLab 15.9.
- Epics
- List all group epics
- Lists all epics for a specified group and its subgroups. Responses are paginated and return 20 results by default.
- Epics
- Get details of an epic
- Gets a single epic
- Epics
- List all emoji reactions for an epic
- Lists all emoji reactions for a specified epic. This endpoint can be accessed without authentication if the epic is publicly accessible.
- Award emoji
- Retrieve an emoji reaction from an epic
- Retrieves a specified emoji reaction from an epic. This endpoint can be accessed without authentication if the epic is publicly accessible.
- Award emoji
- List all issues for an epic
- Lists all issues assigned to a specified epic that are available to the authenticated user. Responses are paginated and return 20 results by default.
- Epics
- List all emoji reactions for an epic comment
- Lists all emoji reactions for a specified comment on an epic. This endpoint can be accessed without authentication if the comment is publicly accessible.
- Award emoji
- Retrieve an emoji reaction from an epic comment
- Retrieves a specified emoji reaction from a comment on an epic. This endpoint can be accessed without authentication if the comment is publicly accessible.
- Award emoji
- List all linked epics for an epic
- Lists all linked epics for a specified epic.
- Epics
- List all group epic label events
- Lists all label events for a specified epic.
- Resource events
- Retrieve an epic label event
- Retrieves a label event for a specified group epic.
- Resource events
- List all group epic state events
- Lists all state events for a specified epic.
- Resource events
- Retrieve an epic state event
- Retrieves a state event for a specified group epic.
- Resource events
- List all discussions for an epic
- Lists all discussions for a specified epic.
- Discussions
- Retrieve a discussion for an epic
- Retrieves a specified discussion for an epic.
- Discussions
- List comments in an epic discussion
- Lists the comments in a specified epic discussion.
- Discussions
- Retrieve a comment from an epic discussion
- Retrieves a specified comment from a epic discussion.
- Discussions
- List all epic notes
- Lists all notes for a specified epic.
- Notes
- Retrieve an epic note
- Retrieves a specified note for an epic.
- Notes
- Retrieve a group export download
- Retrieves the exported archive for a specified group.
- Group import and export
- Download a relations export for a group
- Downloads a group relations export file.
- Group import and export
- Retrieve the status of an relations export for a group
- Retrieves the status of a relations export for a group.
- Group import and export
- List all shared groups
- Lists all groups shared with a specified group.
- Groups
- List all group hooks
- Lists all group hooks.
- Hooks
- Retrieve a group hook
- Retrieves a specified group hook.
- Hooks
- List all events
- Lists all events for a specified webhook.
- Hooks
- List all active integrations
- Lists all active integrations.
- Integrations
- Retrieve integration settings
- Retrieves the settings for a specified integration.
- Integrations
- List all pending invitations for a group
- Lists all pending invitations for a specified group viewable by the authenticated user. Returns invitations to direct members only, and not through inherited ancestor groups. This function takes pagination parameters `page` and `per_page` to restrict the list of members.
- Invitations
- List all invited groups
- Lists all groups invited to a specified group.
- Groups
- List all issues for a group
- Lists all issues for a specified group. If the group is private, you must provide credentials to authorize. In most cases, you should authenticate with a personal access token.
- Groups
- Retrieve issues statistics for a group
- Retrieves statistics for issues in a specified group.
- Groups
- List all group iterations
- Lists all iterations for a specified group. Iterations created by **Enable automatic scheduling** in iteration cadences return `null` for the `title` and `description` fields. This feature was introduced in GitLab 13.5.
- Iterations
- List all group labels
- Lists all group labels for a specified group.
- Labels
- Retrieve a group label
- Retrieves a specified group label.
- Labels
- List all LDAP group links
- Lists all LDAP group links.
- LDAP
- List all personal access tokens for a group
- Lists all personal access tokens associated with enterprise users in a top-level group. This feature was introduced in GitLab 17.8.
- Group credentials inventory
- List all group and project access tokens for a group
- Lists all group and project access tokens associated with a top-level-group. This feature was introduced in GitLab 17.10.
- Group credentials inventory
- List all SSH keys for a group
- Lists all SSH public keys associated with enterprise users in a top-level-group. This feature was introduced in GitLab 17.9.
- Group credentials inventory
- List all group member roles
- Lists all member roles in a specified group.
- Member roles
- List all direct members of a group
- Lists all direct members of a specified group viewable by the authenticated user. Does not return inherited members from ancestor groups or invited groups.
- Members
- List all members of a group
- Lists all members of a specified group viewable by the authenticated user. Also returns inherited members from ancestor groups or invited groups. If a user is a member of this group and one or more ancestor groups, only returns the highest `access_level`. Members from an invited group are returned if the invited group is public, the requester is a member of an invited group, or the requester is a member of the shared group or project.
- Members
- Retrieve a group member
- Retrieves a specified member of a group. Returns direct members and members inherited or invited through ancestor groups.
- Members
- Retrieve a direct group member
- Retrieves a specified member of a group. Returns only direct members and not inherited members through ancestor groups.
- Members
- Retrieve MR approval settings for a group
- Retrieves the merge request approval settings for a specified group.
- Merge request approvals
- List all group merge requests
- Lists all merge requests for a specified group and any subgroups.
- Merge requests
- List all group milestones
- Lists all group milestones for a specified group.
- Milestones
- Retrieve a group milestone
- Retrieves a specified group milestone.
- Milestones
- List all burndown chart events for a milestone
- Lists all burndown chart events for a specified milestone.
- Milestones
- List all issues assigned to a single milestone
- Lists all issues assigned to a specified group milestone.
- Milestones
- List all merge requests assigned to a single milestone
- Lists all merge requests assigned to a specified group milestone.
- Milestones
- Retrieve notification settings for a group
- Retrieves the notification level for a specified group.
- Notification settings
- List all packages for a group
- Lists all packages for a specified group. When accessed without authentication, only packages of public projects are returned. By default, packages with `default`, `deprecated`, and `error` status are returned. Use the `status` parameter to view other packages.
- Packages
- List all pending group members
- Lists all members in an `awaiting` state and those who are invited but do not have a GitLab account for a specified group and any subgroups and projects. This operation works on top-level groups only. It does not work on subgroups.
- Members
- Retrieve pending reassignments
- Retrieves a CSV file with a list of pending reassignments. This feature was introduced in GitLab 17.10.
- Groups
- List all projects in a group
- Lists all projects in a specified group accessible to the authenticated user. Unauthenticated requests return only public projects with a limited subset of attributes.
- Groups
- List all shared projects
- Lists all projects shared with a specified group.
- Groups
- List all protected branches
- Lists all protected branches from a group. If a wildcard is set, it is returned instead of the exact name of the branches that match that wildcard.
- Protected branches
- Retrieve a protected branch
- Retrieves a specified protected branch. Retrieve multiple branches by using a wildcard in the `name`.
- Protected branches
- List all protected environments for a group
- Lists all protected environments for a specified group.
- Protected environments
- Retrieve a protected environment for a group
- Retrieves a specified protected environment for a group.
- Protected environments
- List all provisioned users
- Lists all provisioned users for a specified group.
- Groups
- Retrieve the push rules of a group
- Retrieves the push rules of a specified group.
- Push rules
- List all registry repositories for a group
- Lists all registry repositories for a specified group.
- Container registry
- List all related epic links for a group
- Lists all related epic links for a specified group and its subgroups. The user needs to have access to both the `source_epic` and `target_epic` to view the related epic link.
- Epics
- List all releases in a group
- Lists all releases for projects in a specified group.
- Releases
- List all repository storage moves for a group
- Lists all repository storage moves for a specified group.
- Storage moves
- Retrieve a repository storage move for a group
- Retrieves a specified repository storage move for a group. This feature was introduced in GitLab 13.9.
- Storage moves
- List all runners in a group
- Lists all runners available in a specified group and any ancestor groups, including any allowed instance runners.
- RunnersGroups
- Lists SAML group links
- Get SAML group links for a group
- SAML group links
- Get SAML group link
- Get a SAML group link for the group
- SAML group links
- Retrieve SAML identities for a group
- Retrieves SAML identities for a group.
- Provider identities
- Retrieve a SAML identity
- Retrieves a specified SAML identity.
- Provider identities
- List all SAML users
- Lists all SAML users for a specified top-level group. Use the `page` and `per_page` pagination parameters to filter the results.
- Groups
- Retrieve SCIM identities for a group
- Retrieves SCIM identities for a group.
- Provider identities
- Retrieve a SCIM identity
- Retrieves a specified SCIM identity.
- Provider identities
- List all group service accounts
- Lists all service accounts in a specified group. Use the `page` and `per_page` pagination parameters to filter the results.
- Service accounts
- List all personal access tokens for a group service account
- Lists all personal access tokens for a specified group service account
- Access tokensService accounts
- List all group SSH certificates
- Lists all SSH certificates for a specified group.
- Keys
- List all subgroups
- Lists all subgroups for a specified group.
- Groups
- List all transfer locations for a group
- Lists all groups that a specified source group can be transferred to.
- Groups
- List all uploads for a group
- Lists all uploads for a specified group sorted by `created_at` in descending order. You must have the Maintainer or Owner role for the group.
- Groups
- Download an uploaded file by secret and filename
- Downloads an uploaded file with a specified secret and filename. You must have the Guest, Planner, Reporter, Developer, Maintainer, or Owner role for the group.
- Groups
- Download an uploaded file by ID
- Downloads an uploaded file with a specified ID. You must have the Maintainer or Owner role for the group.
- Groups
- List all group variables
- Lists all variables for a specified group. Use the `page` and `per_page` pagination parameters to control the pagination of results.
- CI variables
- Retrieve details of a group variable
- Retrieves details of a specified group variable. If there are multiple variables with the same key, use `filter` to select the correct `environment_scope`.
- CI variables
- List all wiki page meta notes
- Lists all notes for a specified wiki page meta.
- Notes
- Retrieve a wiki page meta note
- Retrieves a specified note for a wiki page meta.
- Notes
- List all wiki pages for a group
- Lists all wiki pages for a specified group.
- Wikis
- Retrieve a wiki page for a group
- Retrieves a specified wiki page for a group.
- Wikis
- List all system hooks
- Lists all system hooks for the instance.
- Hooks
- Retrieve a system hook
- Retrieves a specified system hook.
- Hooks
- List GitLab for Jira (Forge) namespace subscriptions
- Lists the GitLab namespaces subscribed to the Forge installation.
- Jira forge subscriptions
- Gets agentw info
- Retrieves agent info for agentw for the given workspace token
- WorkspacesInternal operations
- authorize_user_access
- Returns whether the user is authorized to access the workspace.
- WorkspacesInternal operations
- server_config
- Returns configuration for Workspaces HTTP Server.
- OAuth applicationsInternal operations
- List Gitaly object pool members
- List Gitaly object pool members
- getapiv4internalgitalyobjectpoolmembers
- List all issues for the currently authenticated user
- Lists all issues accessible by the currently authenticated user. By default, returns only issues created by the current user. To list all issues, use parameter `scope=all`.
- Issues
- Retrieve an issue
- Retrieves a specified issue. Administrators only.
- Issues
- Retrieve issues statistics for the currently authenticated user
- Retrieves statistics for issues accessible by the currently authenticated user. By default, returns only issues created by the current user. To get all issues, set the `scope` attribute to `all`.
- Issues
- Retrieve a job by job token
- Retrieves a job that was generated by a specified job token.
- CI jobs
- List all GitLab agents for Kubernetes by job token
- Lists all GitLab agents for Kubernetes with a specified `CI_JOB_TOKEN`.
- Agents
- Download job artifacts
- Downloads artifacts for a specified job.
- Jobs
- Download an SBOM scan result
- Downloads an SBOM scan result file for a specified job.
- Software composition analysis
- Retrieve user by SSH key fingerprint
- Retrieves user by SSH key fingerprint. Administrators only.
- Keys
- Retrieve user by SSH key ID
- Retrieves user by SSH key ID. Administrators only.
- Keys
- List all LDAP groups
- Lists all LDAP groups on the GitLab instance. Limited to 20 results.
- LDAP
- List all LDAP groups by provider
- Lists all LDAP groups for the specified provider. Limited to 20 results.
- LDAP
- Retrieve license information
- Retrieves information about the current license.
- Licenses
- Retrieve a license
- Retrieves information about a specified license.
- Licenses
- Download license usage data
- Downloads usage data for the currently active license.
- Licenses
- List all licenses
- Lists all information about all licenses.
- Licenses
- Get MCP response listener
- Listens for Model Context Protocol responses
- MCP
- List all instance member roles
- Lists all member roles for this GitLab instance.
- Member roles
- List all merge requests
- Lists all merge requests accessible to the authenticated user. By default, returns only merge requests created by the current user. Use `scope=all` to get all merge requests.
- Merge requests
- Retrieve metadata information for this GitLab instance
- Retrieves metadata information for the GitLab instance.
- Metadata
- List all namespaces
- Lists all namespaces available to the current user. If the user is an administrator, this endpoint returns all namespaces in the instance.
- Namespaces
- Retrieve namespace details
- Retrieves a specified namespace.
- Namespaces
- Verify namespace availability
- Verifies that a namespace is available for use.
- Namespaces
- Retrieve namespace subscription
- Retrieves GitLab subscription details for a specified namespace.
- Namespaces
- Returns an add-on purchase for the namespace
- Deprecated in GitLab 17.7
- Add on purchases
- Retrieve all limit exclusions
- Gets all records for namespaces that have been excluded
- Namespaces
- Retrieve global notification settings
- Retrieves the global notification level and email address.
- Notification settings
- Get vulnerabilities
- Returns vulnerabilities related to an occurrence.
- Dependency management
- List all offline transfer exports
- Lists all offline transfer exports
- Offline transfers
- Get offline transfer export details
- Retrieves details of an offline transfer export
- Offline transfers
- Retrieve a recipe snapshot
- Retrieves a snapshot of the files for a specified Conan recipe. The snapshot is a list of filenames with their associated MD5 hash.
- Packages: Conan
- Retrieve a recipe manifest
- Retrieves a manifest that includes a list of files and associated download URLs for a specified recipe.
- Packages: Conan
- List all recipe download URLs
- Lists all files and associated download URLs for a specified recipe in the package registry. Returns the same payload as the recipe manifest endpoint.
- Packages: Conan
- Retrieve a package snapshot
- Retrieves a snapshot of the files for a specified Conan package and reference. The snapshot is a list of filenames with their associated MD5 hash.
- Packages: Conan
- Retrieve a package manifest
- Retrieves a manifest that includes a list of files and associated download URLs for a specified package.
- Packages: Conan
- List all package download URLs
- Lists all files and associated download URLs for a specified package in the package registry. Returns the same payload as the package manifest endpoint.
- Packages: Conan
- Retrieve package references metadata
- Retrieves the metadata for all package references of a specified package. This feature was introduced in GitLab 18.0.
- Packages: Conan
- Search for a Conan package
- Searches the instance for a specified Conan package.
- Packages: Conan
- Retrieve a recipe file
- Retrieves a specified recipe file from the package registry. You must use the download URL returned from the recipe download URLs endpoint.
- Packages: Conan
- Retrieve a package file
- Retrieves a specified package file from the package registry. You must use the download URL returned from the package download URLs endpoint.
- Packages: Conan
- Verify availability of a Conan repository
- Verifies availability of a Conan repository.
- Packages: Conan
- Retrieve an authentication token
- Retrieves an authentication token. Creates a JSON Web Token (JWT) for use as a Bearer header in other requests to the package registry.
- Packages: Conan
- Verify authentication credentials
- Verifies authentication credentials for a Conan package registry.
- Packages: Conan
- Retrieve latest version for a module
- Retrieves latest version for a specified module.
- Terraform
- Retrieve download URL for latest module version
- Retrieves download URL for latest module version.
- Terraform
- List all available versions for a module
- Lists all available versions for a specified module.
- Terraform
- List all Pages domains
- Lists all Pages domains on the instance. You must have administrator access to the instance.
- GitLab Pages
- List all personal access tokens
- Lists all personal access tokens accessible by the authenticated user. For administrators, returns all personal access tokens in the instance. For non-administrators, returns all of their personal access tokens.
- Access tokens
- Retrieve a personal access token
- Retrieves details for a specified personal access token. Administrators can retrieve details on any token. Non-administrators can only retrieve details on their own tokens.
- Access tokens
- Retrieve a personal access token
- Retrieves a specified personal access token by passing it to the API in a header.
- Access tokens
- List all token associations
- Lists all groups and projects accessible by the personal access token used to authenticate the request. Generally, this includes any groups or projects that the user is a member of.
- Access tokens
- List all project aliases
- Lists all project aliases for the instance.
- Project alias
- Retrieve a project alias
- Retrieves details of a specified project alias.
- Project alias
- List all project repository storage moves
- Lists all project repository storage moves.
- Storage moves
- Retrieve a project repository storage move
- Retrieves a specified project repository storage move.
- Storage moves
- List all projects
- Lists all projects. Unauthenticated requests return only public projects with a limited subset of attributes. You can filter responses by custom attributes.
- Projects
- Retrieve a project
- Retrieves details on a specified project. This endpoint can be accessed without authentication if the project is publicly accessible.
- Projects
- List all access requests for a project
- Lists all access requests for a specified project that are viewable by the authenticated user.
- Access requests
- List all project access tokens
- Lists all project access tokens for a specified project.
- Access tokens
- Retrieve details on a project access token
- Retrieves details on a specified project access token.
- Access tokens
- List all metric images
- Lists all metric images for a specified alert.
- Alert management
- List deployment frequencies for the project
- List deployment frequencies for the project
- Analytics
- List all approval rules for a project
- Lists all approval rules and any associated details for a specified project. To restrict the list of approval rules, use the `page` and `per_page` pagination parameters.
- Approval rules
- Retrieve an approval rule for a project
- Retrieves information about a specified approval rule for a project.
- Approval rules
- Get all project approval rules
- Private API subject to change
- Approval rules
- Retrieve approval configuration for a project
- Retrieves the approval configuration for a project.
- Project approvals
- Retrieve an attestation bundle
- This feature was introduced in GitLab 18.7
- Attestations
- List all attestations for a project
- Lists all attestations for a specified project and artifact hash. This feature was introduced in GitLab 18.7.
- Attestations
- List all project audit events
- Lists all audit events for a specified project.
- Projects
- Retrieve a project audit event
- Retrieves an audit event for a specified project. Only available to users with at least the Developer role for the project.
- Projects
- Download a project avatar
- Downloads a project avatar. You can access this endpoint without authentication if the project is publicly accessible. This feature was introduced in GitLab 16.9.
- Avatars
- List all badges for a project
- Lists all badges for a specified project, including group badges.
- Badges
- Retrieve a badge for a project
- Retrieves a specified badge for a project.
- Badges
- Retrieve a badge preview for a project
- Previews the final `link_url` and `image_url` for a specified project after resolving the placeholder interpolation.
- Badges
- List all project issue boards
- Lists all issue boards in a specified project.
- Boards
- Retrieve an issue board
- Retrieves a specified issue board in a project.
- Boards
- List all board lists in an issue board
- Lists all lists in a specified issue board. Does not include `open` and `closed` lists.
- Boards
- Retrieve a board list
- Retrieves a specified list from an issue board.
- Boards
- Validate existing CI/CD configuration
- Validates the `.gitlab-ci.yml` configuration for a specified project.
- CI lint
- List all agents
- Lists all agents registered for the project. You must have the Developer, Maintainer, or Owner role to use this endpoint.
- Cluster agents
- Retrieve details on an agent
- Retrieves details on a specified agent. You must have the Developer, Maintainer, or Owner role to use this endpoint.
- Cluster agents
- List all agent tokens
- Lists all active tokens for an agent. You must have the Developer, Maintainer, or Owner role to use this endpoint.
- Cluster agents
- Retrieve an agent token
- Retrieves a specified agent token. You must have the Developer, Maintainer, or Owner role to use this endpoint. Returns a `404` if the agent token has been revoked.
- Cluster agents
- List all agent URL configurations
- Lists all agent URL configurations for a specified agent. You must have the Developer, Maintainer, or Owner role to use this endpoint. This feature was introduced in GitLab 17.4.
- Cluster agents
- Retrieve an agent URL configuration
- Retrieves an agent URL configuration. You must have the Developer, Maintainer, or Owner role to use this endpoint. This feature was introduced in GitLab 17.4.
- Cluster agents
- List all clusters in a project
- Lists all clusters in a specified project.
- Clusters
- Retrieve a cluster from a project
- Retrieves a specified cluster in a project.
- Clusters
- List all custom attributes for a project
- Lists all custom attributes for a specified project.
- Custom attributes
- Retrieve a custom attribute for a project
- Retrieves a specified custom attribute for a project.
- Custom attributes
- Search a project
- Searches for content in a specified project.
- SearchProjects
- Search project code using natural language
- Introduced in GitLab 18.11. Searches indexed project code using semantic (meaning-based) similarity rather than keyword matching. Use this when you do not know the exact symbol or file name, or to discover how a behavior is implemented across the codebase. Primary use cases: - When you do not know the exact symbol or file path - To see how a behavior or feature is implemented across the codebase - To discover related implementations (clients, jobs, workers) How to use: - Provide a concise, specific query with concrete keywords - Use directory_path to narrow scope (e.g. "app/services/") - Prefer precise intent over broad terms Results are grouped by file. Each file includes merged line ranges with content and a relevance score (0.0-1.0). The response includes an overall confidence level (high/medium/low/unknown) based on score distribution. Results are filtered by Duo context exclusion settings. Requires semantic code search to be enabled and indexed for the project namespace.
- Search
- List all Debian project distributions
- Lists all Debian distributions for a specified project.
- Packages: Debian
- Retrieve a Debian project distribution
- Retrieves a specified Debian project distribution for a project.
- Packages: Debian
- Retrieve a Debian project distribution key
- Retrieves a specified Debian project distribution key for a project.
- Packages: Debian
- List all project dependencies
- Lists all dependencies for a specified project. This operation partially mirrors the dependency list feature, which is available only for languages and package managers supported by Gemnasium. Responses are paginated and return 20 results by default.
- Dependency management
- List all deploy keys for project
- Lists all deploy keys for a specified project.
- Deploy resources
- Retrieve a deploy key
- Retrieves a specified deploy key.
- Deploy resources
- List all project deploy tokens
- Lists all project deploy tokens.
- Deploy resources
- Retrieve a project deploy token
- Retrieves a project deploy token.
- Deploy resources
- List all project deployments
- Lists all deployments in a project.
- Deploy resources
- Retrieve a deployment
- Retrieves a specified deployment.
- Deploy resources
- List all merge requests associated with a deployment
- Lists all merge requests shipped with a specified deployment.
- Deploy resources
- Retrieve project-level DORA metrics
- Retrieves DORA metrics for a specified project.
- DORA metrics
- List all environments
- Lists all environments for a specified project.
- Environments
- Retrieve an environment
- Retrieves a specified environment for a project.
- Environments
- List all project client keys
- Lists all integrated error tracking client keys for a specified project.
- Error tracking
- Retrieve Error Tracking settings for a project
- Retrieves the Error Tracking settings for a specified project.
- Error tracking
- List all visible events for a project
- Lists all visible events for a specified project. When a push exceeds the Push event activities limit, a single bulk push event is returned instead of individual commit events. Bulk push events have limited commit details: `commit_count` is `0`, `ref_count` shows the number of refs pushed, and individual commit attributes are `null`.
- Events
- Retrieve the status of a project export
- Retrieves the status of the most recent export for a specified project.
- Project import
- Download a project export
- Downloads the most recent export of a specified project.
- Project import
- Download a relations export for a project
- Downloads a project relations export file.
- Project import
- Retrieve the status of an relations export for a project
- Retrieves the status of a relations export for a project.
- Project import
- Retrieve project external status check services
- Retrieves information on external status check services for a project.
- External status checks
- List all feature flags for a project
- Lists all feature flags of the requested project. Use the `page` and `per_page` pagination parameters to control the pagination of results.
- Feature flags
- Retrieve a feature flag
- Retrieves a specified feature flag.
- Feature flags
- List all feature flag user lists for a project
- Lists all feature flag user lists for a specified project.
- Feature flags
- Retrieve a feature flag user list
- Retrieves a specified feature flag user list.
- Feature flags
- List all forks of a project
- Lists all forks of a project.
- Projects
- List all freeze periods
- Lists all freeze periods for a specified project.
- Freeze periods
- Retrieve a freeze period
- Retrieves a freeze period for a specified `freeze_period_id`. You must have the Reporter, Developer, Maintainer, or Owner role for the project.
- Freeze periods
- Retrieve setup script for Google Cloud integration
- Retrieves the setup script for Google Cloud integration.
- Project Google Cloud integration
- Retrieve configuration script for Google Cloud runner provisioning
- Retrieves the configuration script for Google Cloud runner provisioning.
- Project Google Cloud integration
- List all ancestor groups
- Lists all ancestor groups for a specified project.
- Projects
- List all webhooks for a project
- Lists all webhooks for a specified project.
- Hooks
- Retrieve a project webhook
- Retrieves a specified webhook for a project.
- Hooks
- List all events
- Lists all events for a specified webhook.
- Hooks
- Retrieve the status of a project import
- Retrieves the status of the most recent import for a specified project.
- Project import
- List all active integrations
- Lists all active integrations.
- Integrations
- Retrieve integration settings
- Retrieves the settings for a specified integration.
- Integrations
- List all pending invitations for a project
- Lists all pending invitations for a specified project viewable by the authenticated user. Returns invitations to direct members only, and not through inherited ancestor groups. This function takes pagination parameters `page` and `per_page` to restrict the list of members.
- Invitations
- List all invited groups in a project
- Lists all invited groups in a project. Unauthenticated requests return only public invited groups. Limited to 60 requests a minute per user account for authenticated requires and per IP address for unauthenticated requests. Supports offset-based pagination (up to 50,000 projects) and keyset-based pagination (greater than 50,000 projects).
- Projects
- List all project issues
- Lists all issues for a specified project. If the project is private, you need to provide credentials to authorize. In most cases, you should authenticate with a personal access token.
- Projects
- List all issue iteration events
- Lists all iteration events for a specified issue.
- Resource events
- Retrieve an issue iteration event
- Retrieves an iteration event for a specified issue.
- Resource events
- List all project issue label events
- Lists all label events for a specified issue.
- Resource events
- Retrieve an issue label event
- Retrieves a label event for a specified project issue.
- Resource events
- List all project issue milestone events
- Lists all milestone events for a specified issue.
- Resource events
- Retrieve an issue milestone event
- Retrieves a specified milestone event for a project issue.
- Resource events
- List all project issue state events
- Lists all state events for a specified issue.
- Resource events
- Retrieve an issue state event
- Retrieves a state event for a specified project issue.
- Resource events
- List all project issue weight events
- Lists all weight events for a specified issue.
- Resource events
- Retrieve single issue weight event
- Retrieves a single weight event for a specified project issue.
- Resource events
- Retrieve a project issue
- Retrieves a specified issue for a project. If the project is private or the issue is confidential, you need to provide credentials to authorize. In most cases, you should authenticate with a personal access token.
- Projects
- List all emoji reactions for an issue
- Lists all emoji reactions for a specified issue. This endpoint can be accessed without authentication if the issue is publicly accessible.
- Award emoji
- Retrieve an emoji reaction from an issue
- Retrieves a specified emoji reaction from an issue. This endpoint can be accessed without authentication if the issue is publicly accessible.
- Award emoji
- List all merge requests that close an issue on merge
- Lists all merge requests that close a specified issue when merged. If the project is private or the issue is confidential, you need to provide credentials to authorize. In most cases, you should authenticate with a personal access token.
- Projects
- List all issue links
- Lists all linked issues for a specified issue, sorted by the relationship creation datetime (ascending). Issues are filtered according to the user authorizations.
- Issues
- Retrieve an issue link
- Retrieves a specified issue link.
- Issues
- List all metric images for an incident
- Lists all metric images for an incident.
- Metric images
- List all emoji reactions for an issue comment
- Lists all emoji reactions for a specified comment on an issue. This endpoint can be accessed without authentication if the comment is publicly accessible.
- Award emoji
- Retrieve an emoji reaction from an issue comment
- Retrieves a specified emoji reaction from a comment on an issue. This endpoint can be accessed without authentication if the comment is publicly accessible.
- Award emoji
- List all participants in an issue
- Lists all users that are participants in a specified issue. If the project is private or the issue is confidential, you need to provide credentials to authorize. In most cases, you should authenticate with a personal access token.
- Issues
- List all merge requests related to an issue
- Lists all merge requests that are related to a specified issue. If the project is private or the issue is confidential, you need to provide credentials to authorize. In most cases, you should authenticate with a personal access token.
- Issues
- Retrieve time tracking stats for an issue
- Retrieves time tracking stats for a specified issue, including time estimate and time spent in seconds and human-readable format (for example, `1h 30m`).
- Issues
- Retrieve user agent details for an issue
- Retrieves user agent details for an issue.
- Issues
- List all discussions for an issue
- Lists all discussions for a specified issue.
- Discussions
- Retrieve a discussion for an issue
- Retrieves a specified discussion for an issue.
- Discussions
- List comments in an issue discussion
- Lists the comments in a specified issue discussion.
- Discussions
- Retrieve a comment from an issue discussion
- Retrieves a specified comment from a issue discussion.
- Discussions
- List all issue notes
- Lists all notes for a specified issue.
- Notes
- Retrieve an issue note
- Retrieves a specified note for an issue.
- Notes
- Retrieve issues statistics for a project
- Retrieves statistics for issues in a specified project.
- Projects
- List all project iterations
- Lists all iterations for a specified project. Iterations created by **Enable automatic scheduling** in iteration cadences return `null` for the `title` and `description` fields. This feature was introduced in GitLab 13.5.
- Iterations
- Retrieve the CI/CD job token access settings for a project
- Retrieves the CI/CD job token access settings (job token scope) of a specified project.
- Projects job token scope
- List all projects in a CI/CD job token allowlist
- Lists all projects in the CI/CD job token allowlist of a specified project.
- Projects job token scope
- List all groups in a CI/CD job token allowlist
- Lists all groups in the CI/CD job token allowlist of a specified project.
- Projects job token scope
- List all jobs for a project
- Lists all jobs for a specified project. By default, this request returns 20 results at a time because the API results are paginated.
- CI jobs
- Retrieve job artifacts
- Retrieves the artifacts archive for the latest successful job on a specified branch or tag.
- Job artifacts
- Retrieve a job
- Retrieves a job with the specified job ID.
- CI jobs
- Download the artifacts archive from a job
- This feature was introduced in GitLab 8.5
- Job artifacts
- List all files in an artifacts archive
- Lists all files in a specified artifacts archive without extracting them.
- Job artifacts
- Get a trace of a specific job of a project
- Retrieves a log file for a job.
- CI jobs
- List all project labels
- Lists all labels for a specified project. By default, this request returns 20 results at a time because the API results are paginated.
- Labels
- Retrieve a project label
- Retrieves a specified label for a project.
- Labels
- Retrieve programming language usage information
- Retrieves information about all programming languages used in a specified project.
- Projects
- List all software license policies
- Lists all software license policies for a specified project.
- Licenses
- Retrieve a software license policy
- Retrieves a specified software license policy from a project.
- Licenses
- List all direct members of a project
- Lists all direct members of a specified project viewable by the authenticated user. Does not return inherited members from ancestor groups or invited groups.
- Members
- List all members of a project
- Lists all members of a specified project viewable by the authenticated user. Also returns inherited members from ancestor groups or invited groups. If a user is a member of this project and one or more ancestor groups, only returns the highest `access_level`. Members from an invited group are returned if the invited group is public, the requester is a member of an invited group, or the requester is a member of the shared group or project.
- Members
- Retrieve a project member
- Retrieves a specified member of a project. Returns direct members and members inherited or invited through ancestor groups.
- Members
- Retrieve a direct project member
- Retrieves a specified member of a project. Returns only direct members and not inherited members through ancestor groups.
- Members
- Retrieve MR approval settings for a project
- Retrieves the merge request approval settings for a specified project.
- Merge request approvals
- List all project merge requests
- Lists all project merge requests.
- Merge requests
- List all project merge request label events
- Lists all label events for a specified merge request.
- Resource events
- Retrieve a merge request label event
- Retrieves a label event for a specified project merge request.
- Resource events
- List all project merge request milestone events
- Lists all milestone events for a specified merge request.
- Resource events
- Retrieve a merge request milestone event
- Retrieves a specified milestone event for a project merge request.
- Resource events
- List all project merge request state events
- Lists all state events for a specified merge request.
- Resource events
- Retrieve a merge request state event
- Retrieves a state event for a specified project merge request.
- Resource events
- Retrieve a merge request
- Retrieves a merge request for a specified project.
- Merge requests
- List all approval rules for a merge request
- Lists all approval rules and any associated details for a specified merge request. Use the `page` and `per_page` pagination parameters to restrict the list of approval rules.
- Merge request approvals
- Retrieve an approval rule for a specific merge request
- Retrieves information about an approval rule for a specified merge request.
- Merge request approvals
- Retrieve approval details for a merge request
- Retrieves approval details for a specified merge request. If a user has modified the approval rules for the merge request, the response includes `approval_rules_overwritten`.
- Merge request approvals
- Retrieve approval state for a merge request
- Retrieves the approval state for a specified merge request. In the response, `approved_by` contains information about all approvers of the merge request, regardless of whether those approvals satisfy any approval rule.
- Merge request approvals
- List all emoji reactions for a merge request
- Lists all emoji reactions for a specified merge request. This endpoint can be accessed without authentication if the merge request is publicly accessible.
- Award emoji
- Retrieve an emoji reaction from a merge request
- Retrieves a specified emoji reaction from a merge request. This endpoint can be accessed without authentication if the merge request is publicly accessible.
- Award emoji
- Retrieve blocked merge requests
- Retrieves merge requests blocked by a specified merge request.
- Merge requests
- List all dependencies for a merge request
- List all merge request dependencies for a specified merge request.
- Merge requests
- Retrieve a merge request dependency
- Retrieves a specified merge request dependency.
- Merge requests
- Retrieve merge request changes
- Retrieves changes for a specified merge request.
- Merge requests
- List all issues that close on merge
- Lists all issues that close on merge.
- Merge requests
- Retrieve merge request commits
- Retrieves commits for a specified merge request.
- Merge requests
- List all context commits for a merge request
- Lists all context commits for a specified merge request.
- Merge requests
- List all merge request diffs
- Lists all merge request diffs.
- Merge requests
- List all merge request draft notes
- Lists all merge request draft notes.
- Draft notes
- Retrieve a draft note
- Retrieves a draft note for a specified merge request.
- Draft notes
- Merge to default merge ref path
- Merges the changes between the merge request source and target branches into the `refs/merge-requests/:iid/merge` ref, of the target project repository, if possible. This ref has the state the target branch would have if a regular merge action was taken.
- Merge requests
- List all emoji reactions for a merge request comment
- Lists all emoji reactions for a specified comment on a merge request. This endpoint can be accessed without authentication if the comment is publicly accessible.
- Award emoji
- Retrieve an emoji reaction from a merge request comment
- Retrieves a specified emoji reaction from a comment on a merge request. This endpoint can be accessed without authentication if the comment is publicly accessible.
- Award emoji
- Retrieve merge request participants
- Retrieves participants for a specified merge request.
- Merge requests
- List all merge request pipelines
- Lists all merge request pipelines.
- Merge requests
- Retrieve merge request raw diffs
- Retrieves the raw diffs of the files changed in a merge request.
- Merge requests
- List all issues related to the merge request
- Lists all issues related to the merge request.
- Merge requests
- Retrieve merge request reviewers
- Retrieves reviewers for a specified merge request.
- Merge requests
- List all status checks for a merge request
- Lists all external status check services for a specified merge request and their status.
- External status checks
- Retrieve time tracking stats for a merge request
- Retrieves time tracking stats for a specified merge request, including time estimate and time spent in seconds and human-readable format (for example, `1h 30m`).
- Merge requests
- Retrieve merge request diff versions
- Retrieves merge request diff versions.
- Merge requests
- Retrieve a merge request diff version
- Retrieves a merge request diff version.
- Merge requests
- List all discussions for a merge request
- Lists all discussions for a specified merge request.
- Discussions
- Retrieve a discussion for a merge request
- Retrieves a specified discussion for a merge request.
- Discussions
- List comments in a merge request discussion
- Lists the comments in a specified merge request discussion.
- Discussions
- Retrieve a comment from a merge request discussion
- Retrieves a specified comment from a merge request discussion.
- Discussions
- List all merge request notes
- Lists all notes for a specified merge request.
- Notes
- Retrieve a merge request note
- Retrieves a specified note for a merge request.
- Notes
- List all merge trains for a project
- Lists all merge trains for a specified project.
- Merge trains
- Retrieve merge train status
- Retrieves the merge train status of a specified merge request.
- Merge trains
- List all merge requests in a merge train
- Lists all merge requests in a merge train for a target branch.
- Merge trains
- List all project milestones
- Lists all milestones for a specified project.
- Milestones
- Retrieve a project milestone
- Retrieves a specified project milestone.
- Milestones
- List all burndown chart events for a milestone
- Lists all burndown chart events for a specified milestone.
- Milestones
- List all issues for a project milestone
- Lists all issues assigned to a specified project milestone.
- Milestones
- List all merge requests for a project milestone
- Lists all merge requests assigned to a specified project milestone.
- Milestones
- Retrieve project pull mirror details
- Retrieves pull mirror details for a specified project.
- Project mirrors
- MLflow artifact API
- MLflow artifacts mapping to GitLab artifacts
- MLOps
- Fetch experiment by experiment_id
- https://www.mlflow.org/docs/2.19.0/rest-api.html#get-experiment
- MLOps
- Fetch experiment by experiment_name
- https://www.mlflow.org/docs/2.19.0/rest-api.html#get-experiment-by-name
- MLOps
- List experiments
- https://www.mlflow.org/docs/2.19.0/rest-api.html#search-experiments
- MLOps
- Gets metric history for a run
- https://www.mlflow.org/docs/2.19.0/rest-api.html#get-metric-history
- MLOps
- Fetch model version by name and version
- https://mlflow.org/docs/2.19.0/rest-api.html#get-modelversion
- MLOps
- Fetch the download URI for the model version.
- Returns version in MLflow format "mlflow-artifacts:<version>" https://mlflow.org/docs/2.19.0/rest-api.html#get-download-uri-for-modelversion-artifacts
- MLOps
- Gets a Model Version by alias
- https://mlflow.org/docs/2.19.0/rest-api.html#get-model-version-by-alias
- MLOps
- Fetch a Registered Model by Name
- https://www.mlflow.org/docs/2.19.0/rest-api.html#get-registeredmodel
- MLOps
- Search Registered Models within a project
- https://mlflow.org/docs/2.19.0/rest-api.html#search-registeredmodels
- MLOps
- Gets an MLFlow Run, which maps to GitLab Candidates
- https://www.mlflow.org/docs/1.28.0/rest-api.html#get-run
- MLOps
- Retrieve notification settings for a project
- Retrieves the notification level for a specified project.
- Notification settings
- List all packages for a project
- Lists all packages for a specified project. All package types are included in results. Unauthenticated requests return only packages of public projects. By default, packages with `default`, `deprecated`, and `error` status are returned. Use the `status` parameter to view other packages.
- Packages
- Get config.json
- This will be used by cargo for further requests
- Packages: Cargo
- Download a Cargo crate
- This endpoint serves the .crate file for a given package name and version
- Packages: Cargo
- Get the sparse index for a Cargo crate (4+ character name)
- Returns newline-delimited JSON, one line per published version, most recently published first. Limited to the 500 most recently published versions.
- Packages: Cargo
- Get the sparse index for a Cargo crate (1-character name)
- Returns newline-delimited JSON, one line per published version, most recently published first. Limited to the 500 most recently published versions.
- Packages: Cargo
- Get the sparse index for a Cargo crate (2-character name)
- Returns newline-delimited JSON, one line per published version, most recently published first. Limited to the 500 most recently published versions.
- Packages: Cargo
- Get the sparse index for a Cargo crate (3-character name)
- Returns newline-delimited JSON, one line per published version, most recently published first. Limited to the 500 most recently published versions.
- Packages: Cargo
- Retrieve a recipe snapshot
- Retrieves a snapshot of the files for a specified Conan recipe. The snapshot is a list of filenames with their associated MD5 hash.
- Packages: Conan
- Retrieve a recipe manifest
- Retrieves a manifest that includes a list of files and associated download URLs for a specified recipe.
- Packages: Conan
- List all recipe download URLs
- Lists all files and associated download URLs for a specified recipe in the package registry. Returns the same payload as the recipe manifest endpoint.
- Packages: Conan
- Retrieve a package snapshot
- Retrieves a snapshot of the files for a specified Conan package and reference. The snapshot is a list of filenames with their associated MD5 hash.
- Packages: Conan
- Retrieve a package manifest
- Retrieves a manifest that includes a list of files and associated download URLs for a specified package.
- Packages: Conan
- List all package download URLs
- Lists all files and associated download URLs for a specified package in the package registry. Returns the same payload as the package manifest endpoint.
- Packages: Conan
- Retrieve package references metadata
- Retrieves the metadata for all package references of a specified package. This feature was introduced in GitLab 18.0.
- Packages: Conan
- Search for a Conan package
- Searches the instance for a specified Conan package.
- Packages: Conan
- Retrieve a recipe file
- Retrieves a specified recipe file from the package registry. You must use the download URL returned from the recipe download URLs endpoint.
- Packages: Conan
- Retrieve a package file
- Retrieves a specified package file from the package registry. You must use the download URL returned from the package download URLs endpoint.
- Packages: Conan
- Verify availability of a Conan repository
- Verifies availability of a Conan repository.
- Packages: Conan
- Retrieve an authentication token
- Retrieves an authentication token. Creates a JSON Web Token (JWT) for use as a Bearer header in other requests to the package registry.
- Packages: Conan
- Verify authentication credentials
- Verifies authentication credentials for a Conan package registry.
- Packages: Conan
- Retrieve latest recipe revision
- Retrieves the revision hash and creation date of the latest package recipe. This feature was introduced in GitLab 17.11.
- Packages: Conan
- List all recipe revisions
- Lists all revisions for a package recipe. This feature was introduced in GitLab 17.11.
- Packages: Conan
- List all recipe files
- Lists all recipe files from the package registry. This feature was introduced in GitLab 17.11.
- Packages: Conan
- Retrieve a recipe file
- Retrieves a specified recipe file from the package registry. This feature was introduced in GitLab 17.8.
- Packages: Conan
- Retrieve latest package revision
- Retrieves the revision hash and creation date of the latest package revision for a specified recipe revision and package reference. This feature was introduced in GitLab 17.11.
- Packages: Conan
- List all package revisions
- Lists all package revisions for a specified recipe revision and package reference. This feature was introduced in GitLab 18.0.
- Packages: Conan
- List all package files
- Lists all package files. This feature was introduced in GitLab 18.0.
- Packages: Conan
- Retrieve a package file
- Retrieves a specified package file from the package registry. This feature was introduced in GitLab 17.11.
- Packages: Conan
- Retrieve package references metadata by recipe revision
- Retrieves the metadata for all package references associated with a specified recipe revision. This feature was introduced in GitLab 18.1.
- Packages: Conan
- Retrieve package references metadata
- Retrieves the metadata for all package references of a specified package. This feature was introduced in GitLab 18.0.
- Packages: Conan
- Search for a Conan package
- Searches the instance for a specified Conan package.
- Packages: Conan
- Retrieve an authentication token
- Retrieves an authentication token. Creates a JSON Web Token (JWT) for use as a Bearer header in other requests to the package registry.
- Packages: Conan
- Verify authentication credentials
- Verifies authentication credentials for a Conan package registry.
- Packages: Conan
- Download a Debian package file
- Downloads a specified Debian package file for a project.
- Packages: Debian
- Download a chart
- Downloads a specified chart for a project.
- Packages: Helm
- Download a chart index
- Downloads a specified chart index for a project.
- Packages: Helm
- The NuGet V3 Feed Service Index
- This feature was introduced in GitLab 12.6
- Packages: NuGet
- The NuGet Search Service
- This feature was introduced in GitLab 12.8
- Packages: NuGet
- The NuGet V2 Feed Service Index
- This feature was introduced in GitLab 16.2
- Packages: NuGet
- The NuGet V2 Feed Package $metadata endpoint
- This feature was introduced in GitLab 16.3
- Packages: NuGet
- Retrieve a project package
- Retrieves a specified project package. Only packages with status `default` or `deprecated` are returned.
- Packages
- List all package files
- Lists all package files for a specified package.
- Packages
- Download a package file
- This feature was introduced in GitLab 18.4
- Packages
- List all package pipelines
- Lists all pipelines for a specified package. The results are sorted by `id` in descending order. The results are paginated and return up to 20 records per page. This feature was introduced in GitLab 16.1.
- Packages
- List all package protection rules
- Lists all package protection rules for a specified project.
- Projects
- List all packages for a project
- Lists all packages for a specified project in an HTML file.
- Packages: PyPi
- Retrieve dependencies
- Retrieves a list of dependencies for specified gems. The response is a marshalled array of hashes for all versions of the requested gems. Because the response is marshalled, you can store it in a file.
- Packages: RubyGem
- Download the spec index file
- Downloads a RubyGems spec index file (specs.4.8.gz, latest_specs.4.8.gz, or prerelease_specs.4.8.gz) for a project.
- Packages: RubyGem
- Download a gem file
- Downloads a specified gem file for a project.
- Packages: RubyGem
- Download a gemspec file
- Downloads a gemspec file in Marshal format for a specified gem version.
- Packages: RubyGem
- Download the latest version of a module
- Downloads the latest version of a specified module. This feature was introduced in GitLab 16.7.
- Terraform
- Retrieve Pages settings for a project
- Retrieves Pages settings for a specified project. You must have the Maintainer or Owner role for the project.
- GitLab Pages
- Check pages access of this project
- Check pages access of this project
- Projects
- List all Pages domains in a project
- Lists all Pages domains in a specified project. You must have permissions to view Pages domains.
- GitLab Pages
- Retrieve a Pages domain
- Retrieves a Pages domain from a specified project. You must have permissions to view Pages domains.
- GitLab Pages
- List all pipeline schedules
- Lists all pipeline schedules for a project.
- Pipeline schedules
- Retrieve a pipeline schedule
- Retrieves a pipeline schedule for a project.
- Pipeline schedules
- List all pipelines triggered by a pipeline schedule
- Lists all pipelines triggered by a pipeline schedule in a project.
- Pipeline schedules
- Retrieve a variable for a pipeline schedule
- Retrieves a specified variable for a pipeline schedule.
- Pipeline schedules
- List all project pipelines
- Lists all pipelines in a project. By default, child pipelines are not included in the results. To return child pipelines, set `source` to `parent_pipeline`.
- Pipelines
- Retrieve the latest pipeline
- Retrieves the latest pipeline for the most recent commit on a specified ref in a project. If no pipeline exists for the commit, a `403` status code is returned. Use the `page` and `per_page` pagination parameters to control the pagination of results.
- Pipelines
- Retrieve a pipeline
- Retrieves a specified pipeline from a project. You can also get a child pipeline.
- Pipelines
- List all bridge jobs by pipeline
- Deprecated in GitLab 19.2. Use trigger_jobs endpoint instead.
- Pipelines
- List all jobs by pipeline
- Lists all jobs for a specified pipeline.
- Pipelines
- Retrieve a test report for a pipeline
- Retrieves a test report for a pipeline.
- Pipelines
- Retrieve a test report summary for a pipeline
- Retrieves a test report summary for a pipeline.
- Pipelines
- List all trigger jobs by pipeline
- Lists all trigger jobs for a specified pipeline.
- Pipelines
- List all pipeline variables
- Lists all pipeline variables for a specified pipeline. Use the `page` and `per_page` pagination parameters to control the pagination of results.
- Pipelines
- List all protected branches
- Lists all protected branches for a specified project.
- Protected branches
- Retrieve a protected branch or wildcard protected branch
- Retrieves a specified protected branch or wildcard protected branch.
- Protected branches
- List all protected environments for a project
- Lists all protected environments for a specified project.
- Protected environments
- Retrieve a protected environment for a project
- Retrieves a specified protected environment for a project.
- Protected environments
- List all protected tags
- Lists all protected tags for a specified project.
- Protected tags
- Retrieve a protected tag or wildcard protected tag
- Retrieves a specified protected tag or wildcard protected tag.
- Protected tags
- Retrieve the push rules of a project
- Retrieves the push rules of a specified project.
- Push rules
- List all container repository protection rules
- Lists all container repository protection rules for a specified project.
- Projects
- List all container registry protection tag rules
- Lists all container registry protection tag rules for a project. This feature was introduced in GitLab 18.7.
- Projects
- List all registry repositories for a project
- Lists all registry repositories for a specified project. Responses are paginated and return 20 results by default.
- Container registry
- List all registry repository tags for a project
- Lists all tags for a specified registry repository. Responses are paginated and return 20 results by default.
- Container registry
- Retrieve details of a registry repository tag
- Retrieves details of a specified registry repository tag.
- Container registry
- Retrieve the status of a project resource import
- Retrieves the status of the most recent relation import for a specified project. Because only one relation import can be scheduled at a time, you can use this endpoint to check whether the previous import completed successfully. This feature was introduced in GitLab 16.11.
- Project import
- List all releases in a project
- Lists all releases for a specified project. Sorted by `released_at`.
- Releases
- Retrieve a release by tag name
- Retrieves a release with a specified tag name.
- Releases
- List all release links
- Lists all assets as links from a release.
- Releases
- Retrieve a release link
- Retrieves a specified asset as a link from a release.
- Releases
- List all remote mirrors for a project
- Lists all remote mirrors for a specified project.
- Remote mirrors
- Retrieve a remote mirror for a project
- Retrieves a specified remote mirror for a project.
- Remote mirrors
- Retrieve a public key for a remote mirror
- Retrieves the public key of a specified remote mirror that uses SSH authentication.
- Remote mirrors
- Retrieve file archive from a repository
- Retrieves the file archive of a specified repository. This endpoint can be accessed without authentication if the repository is publicly accessible. For GitLab.com users, this endpoint has a rate limit threshold of 5 requests per minute.
- Repositories
- Retrieve a blob from a repository
- Retrieves information, such as size and content, about blobs in a repository. Blob content is Base64 encoded. This endpoint can be accessed without authentication, if the repository is publicly accessible.
- Repositories
- Retrieve raw blob content
- Retrieves the raw file contents for a blob, by blob SHA. This endpoint can be accessed without authentication if the repository is publicly accessible.
- Repositories
- List all repository branches
- Lists all repository branches from a specified project, sorted alphabetically by name. Search by name, or use regular expressions to find specific branch patterns. Returns detailed information about the branch, including its protection status, merge status, and commit details.
- Branches
- Retrieve a repository branch
- Retrieves a specified project repository branch.
- Branches
- Generate changelog data
- Generates changelog data based on commits in a repository, without committing them to a changelog file. Works exactly like `POST /projects/:id/repository/changelog`, except the changelog data is not committed to any changelog file.
- Repositories
- List all repository commits
- Lists all commits for a specified project repository.
- Commits
- List all discussions for a commit
- Lists all discussions for a specified commit.
- Discussions
- Retrieve a discussion for a commit
- Retrieves a specified discussion for a commit.
- Discussions
- List comments in a commit discussion
- Lists the comments in a specified commit discussion.
- Discussions
- Retrieve a comment from a commit discussion
- Retrieves a specified comment from a commit discussion.
- Discussions
- Retrieve a commit
- Retrieves a specified commit identified by the commit hash or name of a branch or tag.
- Commits
- List all commit comments
- Lists all the comments of a commit in a project.
- Commits
- Retrieve a commit diff
- Retrieves the diff of a commit in a project.
- Commits
- List all merge requests associated with a commit
- Lists all merge requests associated with a specified commit.
- Commits
- List all references a commit is pushed to
- Lists all references (from branches or tags) a commit is pushed to. The pagination parameters `page` and `per_page` can be used to restrict the list of references.
- Commits
- Retrieve a commit sequence
- Retrieves the commit sequence for a specified commit.
- Commits
- Retrieve a commit signature
- Retrieves the signature from a commit, if it is signed. For unsigned commits, it results in a 404 response.
- Commits
- List all commit statuses
- Lists all commit statuses for a specified project.
- Commit statuses
- Compare branches, tags, or commits
- Compares branches, tags, or commits. Retrieves the differences between two branches, tags, or commits in a specified project.
- Repositories
- Retrieve contributors metrics
- Retrieves a list of contributors to a specified repository.
- Repositories
- Retrieve diverging commit counts between two refs
- Retrieve diverging commit counts between two refs
- Repositories
- Retrieve a file from a repository
- Retrieves information about a specified file in a repository. This includes information like the name, size, and the file contents. File content is Base64 encoded.
- Files
- Retrieve file blame history from a repository
- Retrieves blame history for a specified file in a repository. Each blame range contains lines and their corresponding commit information.
- Files
- Retrieve a raw file from a repository
- Retrieves the raw file contents for a specified file in a repository.
- Files
- Retrieve repository health statistics
- Retrieves statistics related to the health of a project repository. This endpoint is rate-limited to 5 requests/hour per project when `generate` is `true`. Available only to users with push access to the repository.
- Repositories
- Retrieve a merge base
- Retrieves the merge base for two specified commits.
- Repositories
- List all repository storage moves for a project
- Lists all repository storage moves for a project.
- Storage moves
- Retrieve a repository storage move for a project
- Retrieves a specified repository storage move for a project.
- Storage moves
- List all project repository tags
- Lists all repository tags from a project, sorted by update date and time in descending order.
- Tags
- Retrieve a single repository tag
- Retrieves a repository tag with a specified name. This endpoint can be accessed without authentication if the repository is publicly accessible.
- Tags
- Retrieve X.509 signature of a tag
- Retrieves the X.509 signature from a signed tag. Unsigned tags return a `404 Not Found` response.
- Tags
- List all repository trees in a project
- Lists all repository files and directories in a specified project. This endpoint can be accessed without authentication if the repository is publicly accessible. This command provides essentially the same features as the `git ls-tree` command.
- Repositories
- List all resource groups
- Lists all resource groups for a specified project.
- CI resource groups
- Retrieve a resource group
- Retrieves a specified resource group for a project.
- CI resource groups
- Retrieve current job for a resource group
- Retrieves the current job for a specified resource group in a project.
- CI resource groups
- List all upcoming jobs for a resource group
- Lists all upcoming jobs for a specified resource group.
- CI resource groups
- List all runners for a project
- List all runners available in the project, including from ancestor groups and any allowed shared runners.
- RunnersProjects
- List all secure files for a project
- Lists all secure files for a specified project.
- Secure files
- Retrieve details of a secure file
- Retrieves details of a specified secure file in a project.
- Secure files
- Download a secure file
- Downloads the contents of a specified secure file in a project.
- Secure files
- List all project security settings
- Lists all security settings for the project. You must have the Security Manager, Developer, Maintainer, or Owner role for the project.
- Projects
- List all project service accounts
- Lists all service accounts in a specified project. Use the `page` and `per_page` pagination parameters to filter the results.
- Service accounts
- List all personal access tokens for a project service account
- Lists all personal access tokens for a specified project service account
- Access tokensService accounts
- List all active integrations
- Lists all active integrations.
- Integrations
- Retrieve integration settings
- Retrieves the settings for a specified integration.
- Integrations
- List all groups available to invite to a project
- Lists all groups that can be invited to a project.
- ProjectsGroups
- Download snapshot of a Git repository
- Downloads snapshot of a Git repository.
- Project snapshots
- List all snippets for a project
- Lists all snippets for a specified project.
- Snippets
- List all discussions for a snippet
- Lists all discussions for a specified snippet.
- Discussions
- Retrieve a discussion for a snippet
- Retrieves a specified discussion for a snippet.
- Discussions
- List comments in a snippet discussion
- Lists the comments in a specified snippet discussion.
- Discussions
- Retrieve a comment from a snippet discussion
- Retrieves a specified comment from a snippet discussion.
- Discussions
- List all snippet notes
- Lists all notes for a specified snippet.
- Notes
- Retrieve a snippet note
- Retrieves a specified note for a snippet.
- Notes
- Retrieve a project snippet
- Retrieves a specified project snippet.
- Snippets
- List all emoji reactions for a snippet
- Lists all emoji reactions for a specified snippet. This endpoint can be accessed without authentication if the snippet is publicly accessible.
- Award emoji
- Retrieve an emoji reaction from a snippet
- Retrieves a specified emoji reaction from a snippet. This endpoint can be accessed without authentication if the snippet is publicly accessible.
- Award emoji
- Retrieve snippet repository file content
- Retrieves the raw file content from a snippet repository as plain text.
- Snippets
- List all emoji reactions for a snippet comment
- Lists all emoji reactions for a specified comment on a snippet. This endpoint can be accessed without authentication if the comment is publicly accessible.
- Award emoji
- Retrieve an emoji reaction from a snippet comment
- Retrieves a specified emoji reaction from a comment on a snippet. This endpoint can be accessed without authentication if the comment is publicly accessible.
- Award emoji
- Retrieve a raw project snippet
- Retrieves the raw contents of a specified project snippet as plain text
- Snippets
- Retrieve user agent details for a project snippet
- Retrieves user agent details for a specified snippet. Available only for administrators.
- Snippets
- List all users who starred a project
- Lists all users who starred a specified project.
- Projects
- Retrieve the statistics of the last 30 days
- Retrieves the clone and pull statistics for the last 30 days from a specified project.
- Projects
- Retrieve the path to repository storage
- Retrieves the path to repository storage for a specified project. If you are using Gitaly Cluster (Praefect), see Praefect-generated replica paths instead. Administrators only.
- Projects
- List all templates of a particular type
- Lists all templates of a specified type for a project.
- Project templates
- Retrieve a template of a particular type
- Retrieves a template of a specified type for a project.
- Project templates
- Retrieve a Terraform state
- Retrieves a Terraform state by name for a specified project.
- Terraform
- Retrieve a Terraform state version
- Retrieves a specified Terraform state version.
- Terraform
- List all Terraform state protection rules for a project
- Lists all Terraform state protection rules for a project. This feature was introduced in GitLab 18.11.
- Projects
- List all transferable namespaces for a project
- Lists all namespaces where a specified project can be transferred.
- Projects
- List all project trigger tokens
- Lists all pipeline trigger tokens for a specified project.
- CI triggers
- Retrieve trigger token details
- Retrieves details of a pipeline trigger token for a project.
- CI triggers
- List all uploads
- Lists all uploads of a project sorted by `created_at` in descending order. You must have the Maintainer or Owner role for the project.
- Projects
- Download an uploaded file by secret and filename
- Downloads an uploaded file with a specified secret and filename. You must have the Guest, Planner, Reporter, Developer, Maintainer, or Owner role for the project.
- Projects
- Download an uploaded file by ID
- Downloads an uploaded file with a specified ID. You must have the Maintainer or Owner role for the project.
- Projects
- List all members of a project
- Lists all members with access to a specified project.
- Projects
- List all project variables
- Lists all variables for a project. Use the `page` and `per_page` pagination parameters to control the pagination of results.
- CI variables
- Retrieve a single variable
- Retrieves details of a specified variable. If there are multiple variables with the same key, use `filter` to select the correct `environment_scope`.
- CI variables
- List all project vulnerabilities
- Lists all vulnerabilities for a specified project.
- Vulnerabilities
- List all vulnerability notes
- Lists all notes for a specified vulnerability.
- Notes
- Retrieve a vulnerability note
- Retrieves a specified note for a vulnerability.
- Notes
- List all project vulnerability findings
- Lists all vulnerability findings for a specified project. Responses are paginated and return 20 results by default.
- Vulnerabilities
- List all wiki page meta notes
- Lists all notes for a specified wiki page meta.
- Notes
- Retrieve a wiki page meta note
- Retrieves a specified note for a wiki page meta.
- Notes
- List all wiki pages for a project
- Lists all wiki pages for a specified project.
- Wikis
- Retrieve a wiki page for a project
- Retrieves a specified wiki page for a project.
- Wikis
- The NuGet V2 Feed Find Packages by ID endpoint
- This feature was introduced in GitLab 16.4
- Packages: NuGet
- The NuGet V2 Feed Enumerate Packages endpoint
- This feature was introduced in GitLab 16.4
- Packages: NuGet
- Retrieve details of a container registry repository
- Retrieves details of a specified container registry repository.
- Container registry
- List all runner controllers
- Lists all runner controllers.
- Runners
- Retrieve a single runner controller
- Retrieves details of a specified runner controller.
- Runner controllers
- List all scopes for a runner controller
- Lists all scopes for a runner controller.
- Runner controllers
- List all runner controller tokens
- Lists all runner controller tokens.
- Runners
- Retrieve a single runner controller token
- Retrieves details of a specified runner controller token by its ID.
- Runner controller tokens
- List all available runners
- Lists all runners available to the user. For group runners, you must have the Owner role in the owner namespace.
- Runners
- List all runners
- Lists all runners in the GitLab instance (project and shared). You must have either administrator access or auditor access.
- Runners
- Retrieve details on a runner
- Retrieves details of a runner. Instance runner details are available to all authenticated users through this endpoint. For groups and projects, you must have the Maintainer or Owner role for the associated project or group.
- Runners
- List all jobs processed by a runner
- Lists all jobs that are being processed or were processed by a specified runner. The list of jobs is limited to projects where the user has the Reporter, Developer, Maintainer, or Owner role.
- RunnersJobs
- List all managers for a runner
- List all managers for a specified runner.
- Runners
- Get projects associated with a runner
- Get a paginated list of all projects associated with the specified runner. Access is restricted based on user permissions.
- RunnersProjects
- Discover Job Router information
- Discovers Job Router information for a runner. You must provide a valid runner authentication token.
- CI runners
- Search an instance
- Searches for a term across the entire GitLab instance. The response depends on the requested scope.
- Search
- Retrieve a vulnerability archive export
- Retrieves the attributes for a specified vulnerability archive export. You can use this endpoint to poll the export status until it is `finished`. Clients should use the `Poll-Interval` response header to determine how long to wait before sending the next poll. The `Poll-Interval` represents the time in milliseconds.
- Vulnerabilities
- Download a vulnerability archive export
- Downloads a vulnerability archive export.
- Vulnerabilities
- Retrieve a vulnerability export
- Retrieves a specified vulnerability export.
- Vulnerabilities
- Download a vulnerability export
- Downloads a specified vulnerability export.
- Vulnerabilities
- List all instance service accounts
- Lists all instance service accounts. Use the `page` and `per_page` pagination parameters to filter the results.
- Service accounts
- List all Sidekiq metrics
- Lists all Sidekiq metrics. Includes queue, process, and job completion metrics.
- Sidekiq
- Retrieve job completion metrics
- Retrieves statistics on the completion status of all Sidekiq jobs.
- Sidekiq
- List all Sidekiq processes
- Lists all details about all registered Sidekiq worker processes, including hostname, process ID, queues, and concurrency settings.
- Sidekiq
- List all job queue metrics
- Lists all details about all Sidekiq job queues, including backlog size and latency.
- Sidekiq
- List all snippet repository storage moves
- Lists all snippet repository storage moves. By default, `GET` requests return 20 results at a time because the API results are paginated.
- Storage moves
- Retrieve a snippet repository storage move
- Retrieves a specified snippet repository storage move.
- Storage moves
- List all snippets for current user
- Lists all snippets for the currently authenticated user.
- Snippets
- List all snippets
- Lists all snippets available to the currently authenticated user. Users with Administrator or Auditor access levels can see all snippets (both personal and project). This feature was introduced in GitLab 16.3.
- Snippets
- Retrieve a snippet
- Retrieves a specified snippet.
- Snippets
- Retrieve snippet file content
- Retrieves the raw file content from a snippet as plain text.
- Snippets
- Retrieve a raw snippet
- Retrieves the raw contents of a specified snippet as plain text
- Snippets
- List all repository storage moves for a snippet
- Lists all repository storage moves for a specified snippet. By default, `GET` requests return 20 results at a time because the API results are paginated.
- Storage moves
- Retrieve a repository storage move for a snippet
- Retrieves a repository storage move for a specified snippet.
- Storage moves
- Retrieve user agent details for a snippet
- Retrieves user agent details for a specified snippet.
- Snippets
- List all public snippets
- Lists all public snippets accessible to the currently authenticated user.
- Snippets
- Swagger compatible API description
- Swagger compatible API description
- getapiv4swaggerdoc
- Swagger compatible API description for specific API
- Swagger compatible API description for specific API
- getapiv4swaggerdocname
- List all Dockerfile templates
- Lists all Dockerfile templates.
- Templates
- Retrieve a Dockerfile template
- Retrieves a specified Dockerfile template.
- Templates
- List all .gitignore templates
- Lists all .gitignore templates.
- Templates
- Retrieve a .gitignore template
- Retrieves a specified .gitignore template.
- Templates
- List all GitLab CI/CD YAML templates
- Lists all GitLab CI/CD YAML templates.
- Templates
- Retrieve a GitLab CI/CD YAML template
- Retrieves a specified GitLab CI/CD YAML template.
- Templates
- List all license templates
- Lists all available license templates.
- Templates
- Retrieve a license template
- Retrieves a specified license template. You can pass parameters to replace the license placeholder.
- Templates
- List all to-do items
- Lists all to-do items. When no filter is applied, it returns all pending to-do items for the current user. Different filters allow the user to refine the request.
- To-dos
- List all topics
- Lists all project topics sorted by the number of associated projects.
- Project topics
- Retrieve a topic
- Retrieves a specified project topic.
- Project topics
- Download metric definitions
- Downloads all metric definitions as a single YAML file.
- Metrics
- List all non-SQL metrics
- Lists all non-SQL metrics data used in the Service ping. This action is behind the `usage_data_non_sql_metrics` feature flag. Administrators only.
- Usage data
- List all Service Ping SQL queries
- Lists all raw SQL queries used to compute Service Ping. This action is behind the `usage_data_queries_api` feature flag. Administrators only.
- Usage data
- Retrieve Service Ping payload
- Retrieves the Service Ping payload from the application cache as JSON. If no cached payload is available, returns an empty response. Requires a personal access token with the `read_service_ping` scope. Introduced in GitLab 16.9.
- Usage data
- Retrieve current user details
- Retrieves details about your user account.
- Users
- List all activity for a user
- Lists all activity for a specified user.
- Users
- List all applications
- Lists all applications owned by the authenticated user.
- Applications
- Retrieve an application
- Retrieves details of a specific application owned by the authenticated user.
- Applications
- Return the user specific counts
- Assigned open issues, assigned MRs and pending todos count
- Users
- List all email addresses for a user
- Lists all email addresses for the currently authenticated user.
- Users
- Retrieve details on an email address
- Retrieves details on a specified email address for the currently authenticated user.
- Users
- List all GPG keys
- Lists all GPG keys for the currently authenticated user.
- Keys
- Retrieve a GPG key
- Retrieves a GPG key for the currently authenticated user.
- Keys
- List all SSH keys
- Lists all SSH keys for the currently authenticated user.
- Keys
- Retrieve an SSH key
- Retrieves a specified SSH key for the currently authenticated user.
- Keys
- Retrieve your user preferences
- Retrieves your user preferences.
- Users
- Retrieve your user status
- Retrieves your user status.
- Users
- Retrieve Support PIN
- Retrieves a Support PIN for the currently authenticated user. GitLab Support may ask for this PIN to validate your identity.
- Users
- List all users
- Lists all users on the instance. This endpoint supports keyset pagination. In GitLab 17.0 and later, keyset pagination is used by default.
- Users
- Retrieve a user as a regular user
- Retrieves a specified user as a regular user.
- Users
- Retrieve association counts for a user
- Retrieves the number of groups, projects, issues, and merge requests associated with a specified user.
- Users
- List all custom attributes for a user
- Lists all custom attributes for a specified user.
- Custom attributes
- Retrieve a custom attribute for a user
- Retrieves a specified custom attribute for a user.
- Custom attributes
- List all email addresses for a user
- Lists all email addresses for a specified user account. Administrators only.
- Users
- Retrieve contribution events for a user
- Retrieves the contribution events for a specified user. Does not return events associated with epics or merge requests. Returns bulk push events with limited commit details.
- Events
- List all accounts that follow a user
- Lists all user accounts that follow a specified user.
- Users
- List all accounts followed by a user
- Lists all user accounts being followed by a specified user.
- Users
- List all GPG keys for a user
- Lists all GPG keys for a specified user account. This endpoint does not require authentication.
- Keys
- Retrieve a GPG key for a user
- Retrieves a GPG key for a specified user account. This endpoint does not require authentication.
- Keys
- Retrieve an SSH key for a user
- Retrieves an SSH key for a specified user account. This endpoint does not require authentication.
- Keys
- Retrieve a Support PIN for a user
- Retrieves a Support PIN for a specified user. GitLab Support may ask for this PIN to validate your identity. Administrators only.
- Users
- List all projects contributions for a user
- Lists all contributions to visible projects for a specified user. Returns only contributions in the past year.
- Projects
- List all impersonation tokens for a user
- Lists all impersonation tokens for a specified user. Administrators only.
- Access tokens
- Retrieve an impersonation token for a user
- Retrieves an impersonation token for a specified user. Administrators only.
- Access tokens
- List all SSH keys for a user
- Lists all SSH keys for a specified user account.
- Keys
- List all project and group memberships for a user
- Lists all project and group memberships for a specified user. Administrators only.
- Users
- List all project deploy keys for a user
- Lists all project deploy keys accessible to a specified user.
- Deploy resources
- List all personal projects for a user
- Lists all personal projects for a specified user. Does not return group or subgroup projects. If the user profile is private, returns only an empty list.
- Projects
- List all projects starred by a user
- Lists all visible projects starred by a specified user. Unauthenticated requests return only public projects.
- Projects
- Retrieve the status of a user
- Retrieves the status of a user. You can access this endpoint without authentication.
- Users
- Retrieves version information for the GitLab instance
- This feature was introduced in GitLab 8.13 and deprecated in 15.5. We recommend you instead use the Metadata API.
- Metadata
- Get the settings manifest for Settings Sync
- Get the settings manifest for Settings Sync
- VSCode
- Get a list of references to one or more vscode setting resources
- Get a list of references to one or more vscode setting resources
- VSCode
- Get a specific setting resource
- Get a specific setting resource
- VSCode
- Get the settings manifest for Settings Sync
- Get the settings manifest for Settings Sync
- VSCode
- Get a list of references to one or more vscode setting resources
- Get a list of references to one or more vscode setting resources
- VSCode
- Get a specific setting resource
- Get a specific setting resource
- VSCode
- Retrieve a vulnerability
- Retrieves a specified vulnerability.
- Vulnerabilities
- Get related issues for a vulnerability
- Get related issues for a vulnerability
- Vulnerabilities
- Retrieve the public signing key
- Retrieves the GitLab public key for signing web commits. This feature was introduced in GitLab 17.4.
- Web commits
- Update the number of replicas override for an enabled namespace
- Update the number of replicas override for an enabled namespace
- Code search
- Update the workflow status
- Update the workflow status
- GitLab Duo workflowsInternal operations
- Update an enterprise user
- Updates a specified enterprise user.
- Enterprise users
- Disable two-factor authentication for an enterprise user
- Disables two-factor authentication (2FA) for a specified enterprise user.
- Enterprise users
- Update a protected branch
- Updates a protected branch for a specified group.
- Protected branches
- Update `extern_uid` field for a SAML identity
- Updates the `extern_uid` field for a specified SAML identity.
- Provider identities
- Update `extern_uid` field for a SCIM identity
- Updates the `extern_uid` field for a specified SCIM identity.
- Provider identities
- Update a group service account
- Update a specified group service account.
- Service accounts
- Append a patch to the job trace
- Append a patch to the job trace
- Jobs
- Transfer purchased compute minutes packs to another namespace
- Deprecated in GitLab 17.7
- CI minutes
- Set status of an external control
- Sets the status of a specified external control. Use this operation to inform GitLab that a control has passed or failed a check by an external service.
- Compliance policy settings
- Update Error Tracking settings for a project
- Updates Error Tracking settings for a specified project. You must have the Maintainer or Owner role for the project.
- Error tracking
- Update the CI/CD job token access settings for a project
- Updates the **Authorized groups and projects** setting (job token scope) of a specified project.
- Projects job token scope
- Update a software license policy
- Updates a specified software license policy for a project.
- Licenses
- Updates a Model Version.
- https://mlflow.org/docs/2.19.0/rest-api.html#update-modelversion
- MLOps
- Update a Registered Model by Name
- https://mlflow.org/docs/2.19.0/rest-api.html#update-registeredmodel
- MLOps
- Update a package protection rule
- Updates a package protection rule for a specified project.
- Projects
- Update Pages settings for a project
- Updates Pages settings for a specified project. You must have the Maintainer or Owner role for the project.
- GitLab Pages
- Update a protected branch
- Updates a protected branch for a specified project.
- Protected branches
- Update a container repository protection rule
- Updates a container repository protection rule for a specified project.
- Projects
- Update a container registry protection tag rule
- Updates a container registry protection tag rule for a project. This feature was introduced in GitLab 18.9.
- Projects
- Update a project service account
- Update a specified project service account.
- Service accounts
- Update a Terraform state protection rule for a project
- This feature was introduced in GitLab 19.0.
- Projects
- Update an instance service account
- Updates a specified instance service account.
- Service accounts
- Update a user status
- Sets the status of the currently authenticated user. Any parameters that are not passed are ignored. This operation is similar but distinct from the Set a user status operation.
- Users
- Disable two-factor authentication for a user
- Disables two-factor authentication for a specified user account. Administrators only.
- Users
- Replay items from the dead queue into another queue
- Replay items from the dead queue into another queue
- Active context
- Create instance variable
- Creates a instance-level variable. The maximum number of instance-level variables can be changed.
- CI variables
- Create an instance cluster
- Creates an instance cluster by adding an existing Kubernetes cluster.
- Clusters
- Create Admin Role on the GitLab instance
- Create Admin Role on the GitLab instance
- Member roles
- Update status of a migration
- Updates the status of a migration to indicate a successful execution. This prevent them from being executed by the `db:migrate` tasks. Use this API to skip failing migrations after you determine they are safe to skip.
- Migrations
- Create workflow persistence (agent-initiated, limited privileges)
- Accessible via ai_workflows scope token. Does not accept agent_privileges or pre_approved_agent_privileges.
- GitLab Duo workflows
- Add code review comments to a merge request
- Adds review comments generated by Duo Workflows to a merge request.
- GitLab Duo workflows
- Connection details for accessing Duo Agent Platform Service directly
- Connection details for accessing Duo Agent Platform Service directly
- GitLab Duo workflows
- Register a flow callback endpoint
- Registers an HTTPS endpoint for Duo flow lifecycle callbacks. Reference the returned id via callback_hook_id when creating a flow. Secrets are never returned.
- Duo workflow flow callback hooks
- Revoke ai_workflows token
- Revoke ai_workflows token
- GitLab Duo workflowsInternal operations
- Create a flow
- Creates and starts a flow.
- GitLab Duo workflows
- Ingest AI audit events from Duo Workflow Service
- Ingest AI audit events from Duo Workflow Service
- GitLab Duo workflowsInternal operations
- Create multiple workflow checkpoint writes
- Create multiple workflow checkpoint writes
- GitLab Duo workflowsInternal operations
- Create workflow checkpoint
- Create workflow checkpoint
- GitLab Duo workflowsInternal operations
- Create workflow event
- Create workflow event
- GitLab Duo workflowsInternal operations
- Resume a paused workflow
- Resume a paused workflow
- GitLab Duo workflows
- Generate Git commands from natural text
- Generates Git commands from natural language input
- GitLab Duo
- Get connection details for third party agents
- Returns connection details including tokens for accessing third-party agents.
- GitLab Duo
- Create a new application
- This feature was introduced in GitLab 10.5
- Applications
- Renew an application secret
- Renew the secret of a specific application
- Applications
- Create a broadcast message
- Creates a broadcast message.
- Broadcast messages
- Start a group or project migration
- Starts a group or project migration. To migrate a project, specify `entities[project_entity]`.
- Imports
- Cancel a migration
- Cancels a direct transfer migration. This feature was introduced in GitLab 17.1.
- Imports
- Generate a Chat response
- Generates a response for a GitLab Duo Chat question.
- GitLab Duo
- Generate code completions
- Generates code completions. Uses the AI abstraction layer to generate code completions. Requests to this endpoint are proxied to the AI Gateway.
- postapiv4codesuggestionscompletions
- Retrieve connection details
- Retrieves user-specific connection details which can be used by IDEs or clients for telemetry, including an instance-specific application ID, application access token, and clickhouse data plane URL.
- postapiv4codesuggestionsconnectiondetails
- Retrieve direct connection details for the AI Gateway
- Retrieves user-specific connection details which can be used by IDEs or clients to send `completion` requests to Code Suggestions directly through the AI Gateway.
- postapiv4codesuggestionsdirectaccess
- Validate status of Code Suggestions
- Validates the status Code Suggestions for a specified project. This checks if the project has `code_suggestions` enabled or if an ancestor group has the Code Suggestions add-on enabled.
- postapiv4codesuggestionsenabled
- Receives notifications from the container registry when an operation occurs
- This feature was introduced in GitLab 12.10
- Container registry
- Create a deploy key
- Creates a deploy key for the GitLab instance. Requires administrator access.
- Deploy resources
- Evaluate code review
- Evaluates code changes using GitLab Duo code review
- GitLab Duo
- Force a variant assignment for an experiment context
- Forces a specific variant assignment for the given experiment and context. The assignment is stored in Redis cache and will persist until overwritten. Defaults to current user if no context is provided.
- Experiments
- Report Unleash client metrics
- Report Unleash client metrics
- Unleash
- Register Unleash client
- Register Unleash client
- Unleash
- Create or update a feature flag
- Creates or updates a feature flag value. If a feature with the given name doesn't exist yet, the operation creates one. The value can be a boolean or an integer to indicate percentage of time.
- Features
- Query the GraphQL endpoint of an existing Geo node
- Query the GraphQL endpoint of an existing Geo node
- Geo
- Create a Geo node
- Creates a Geo node.
- Geo
- Repair authentication of the Geo node
- Repairs the OAuth authentication of a primary Geo node.
- Geo
- Responsible for making HTTP GET /repo.git/info/refs?service=git-receive-pack request from secondary gitlab-shell to primary
- Responsible for making HTTP GET /repo.git/info/refs?service=git-receive-pack request from secondary gitlab-shell to primary
- Geo
- Responsible for making HTTP GET /repo.git/info/refs?service=git-upload-pack request from secondary gitlab-shell to primary
- Responsible for making HTTP GET /repo.git/info/refs?service=git-upload-pack request from secondary gitlab-shell to primary
- Geo
- Responsible for making HTTP POST /repo.git/info/refs?service=git-receive-pack request from secondary gitlab-shell to primary
- Responsible for making HTTP POST /repo.git/info/refs?service=git-receive-pack request from secondary gitlab-shell to primary
- Geo
- Responsible for making HTTP POST /repo.git/git-upload-pack request from secondary gitlab-shell to primary
- Responsible for making HTTP POST /repo.git/git-upload-pack request from secondary gitlab-shell to primary
- Geo
- Create a Geo site
- Creates a Geo site.
- Geo
- Repair a Geo site
- Repairs the OAuth authentication of a Geo site if there is an OAuth synchronization problem between the primary or secondary Geo sites.
- Geo
- Posts the current node status to the primary site
- Posts the current node status to the primary site
- Geo
- Execute a GLQL query
- Executes a GLQL query to search and filter GitLab resources.
- GLQL
- Create group repository storage moves for a storage shard
- Creates repository storage moves for all groups on a specified storage shard.
- Storage moves
- Create a group
- Creates a project group. Available only for users who can create groups.
- Groups
- Request access to a group
- Requests access to a specified group for the authenticated user.
- Access requests
- Create a group access token
- Creates a group access token for a specified group. You cannot create a token with an access level greater than your account. For example, a user with the Maintainer role cannot create a group access token with the Owner role. You must use a personal access token with this endpoint. You cannot authenticate with a group access token.
- Access tokens
- Rotate a group access token
- Rotates a group access token by passing it to the API in a header.
- Access tokens
- Rotate a group access token
- Rotates a group access token. This immediately revokes the previous token and creates a token. Generally, this endpoint rotates a specific group access token by authenticating with a personal access token. You can also use a group access token to rotate itself. If you attempt to use this endpoint to rotate a token that was previously revoked, any active tokens from the same token family are revoked. This feature was introduced in GitLab 16.0.
- Access tokens
- Create an approval rule for a group
- Creates an approval rule for a group. Restricted to group administrators. Do not use the `rule_type` field when building approval rules from the API. The field supports these rule types: - `any_approver`: A pre-configured default rule with `approvals_required` set to `0`.
- Approval rules
- Archive a group
- Archives a specified group. You must be an administrator or have the Owner role for the group.
- Groups
- Create a badge for a group
- Creates a badge for a specified group.
- Badges
- Create a group issue board
- Creates a group issue board for a specified group.
- Boards
- Create a group issue board list
- Creates a group issue board list for a specified board.
- Boards
- Create a group cluster
- Creates a group cluster for a specified group by adding an existing Kubernetes cluster.
- Clusters
- Create a Debian group distribution
- Creates a Debian group distribution for a specified group.
- Packages: Debian
- Create a new epic
- Creates a new epic
- Epics
- Create and relate epic to a parent
- Create and relate epic to a parent
- Epics
- Relate epics
- Relate epics
- Epics
- Add an issue to an epic
- Adds a specified issue to an epic. If the issue already belongs to another epic, it is removed from the original epic.
- Epics
- NPM registry bulk advisory endpoint
- This feature was introduced in GitLab 15.6
- Packages: NPM
- NPM registry quick audit endpoint
- This feature was introduced in GitLab 15.6
- Packages: NPM
- Create a dependency list export
- Creates a CycloneDX JSON export for all the project dependencies detected in a pipeline. If an authenticated user does not have the read_dependency permission, this request returns a `403 Forbidden` status code.
- Dependency management
- Create a group deploy token
- Creates a group deploy token.
- Deploy resources
- Add an emoji reaction to an epic
- Adds an emoji reaction to an epic.
- Award emoji
- Add an emoji reaction to an epic comment
- Adds an emoji reaction to a comment on an epic.
- Award emoji
- Create a related epic link
- Creates a two-way relation between two epics. The user must have the Guest, Planner, Reporter, Developer, Maintainer, or Owner role for both groups.
- Epics
- Create a to-do item for an epic
- Creates a to-do item for the current user on a specified epic. If a to-do item already exists for the user on that epic, status code 304 is returned.
- Epics
- Create an epic discussion
- Creates a discussion for a specified epic. Replies can be added to it later.
- Discussions
- Add a comment to an epic discussion
- Adds a comment to a specified epic discussion.
- Discussions
- Create an epic note
- Creates a note for an epic.
- Notes
- Create a group export
- Creates a group export for a specified group.
- Group import and export
- Schedule a relations export for a group
- Schedules a relations export for a specified group.
- Group import and export
- Create a group hook
- Creates a hook for a specified group.
- Hooks
- Resend a webhook event
- Resends a webhook event. This endpoint has a rate limit of five requests per minute for each authenticated user for a given project or group. On GitLab Self-Managed and GitLab Dedicated, an administrator can change this limit in the application settings.
- Hooks
- Trigger a test webhook
- Triggers a test webhook. This endpoint has a rate limit of five requests per minute for each authenticated user for a given project or group. On GitLab Self-Managed and GitLab Dedicated, an administrator can change this limit in the application settings.
- Hooks
- Add a member to a group
- Adds a member to a group. You can specify a user ID or invite a user by email.
- Invitations
- Create a group label
- Creates a group label.
- Labels
- Subscribe to a group label
- Subscribes the currently authenticated user to a specified group label. They will receive notifications on changes to this item.
- Resource subscriptions
- Unsubscribe to a group label
- Unsubscribes the currently authenticated user from a specified group label. They will no longer receive notifications on changes to this item.
- Resource subscriptions
- Add an LDAP group link with CN or filter
- Adds an LDAP group link using a CN or filter.Adding a group link by filter is only supported in the Premium tier and above.
- LDAP
- Sync a group with LDAP
- Syncs a specified group with its linked LDAP group. You must be an administrator or have the Owner role for the group.
- LDAP
- Rotate a personal access token for an enterprise user
- Rotates a specified personal access token for an enterprise user associated with the top-level group. This revokes the previous token and creates a token that expires after one week.
- Group credentials inventory
- Rotate a group or project access token for a group
- Rotates a specified group or project access token associated with a top-level group. This revokes the previous token and creates a new token.
- Group credentials inventory
- Add a member role to a group
- Adds a member role to a group. You can only add member roles at the root level of the group.
- Member roles
- Add a member to a group
- Adds a member to a specified group.
- Members
- Approve all pending group members
- Approves all pending users for a specified top-level group and any subgroups or projects.
- Members
- Set override flag for a member of a group
- Sets the override flag for a member of a group. By default, the access level of LDAP group members is set to the value specified by LDAP through Group Sync.
- Members
- Create a group milestone
- Creates a milestone for the specified group.
- Milestones
- Reassign placeholders
- Reassigns placeholder users with an uploaded CSV file.
- Groups
- Workhorse authorization for the reassignment CSV file
- Authorizes Workhorse to handle CSV file uploads for placeholder reassignments. This feature was introduced in GitLab 17.10
- Groups
- Transfer a project to a group
- Transfers a specified project to another group. Administrators only.
- Groups
- Protect a repository branch
- Protects a specified repository branch. Protect multiple branches by using a wildcard in the `name`.
- Protected branches
- Protect an environment for a group
- Protects a specified environment for a group.
- Protected environments
- Add push rules to a group
- Adds push rules to a specified group. Use only if you have not defined any push rules so far.
- Push rules
- Create a group repository storage move
- Creates a group repository storage move for a specified group. This operation moves only group wiki repositories and does not move repositories for projects in a group.
- Storage moves
- Restore a group
- Restores a specified group that was previously scheduled for deletion. Can not restore groups outside of the retention period (30 days by default).
- Groups
- Reset the runner registration token for a group
- Resets the runner registration token for a specified group.
- RunnersGroups
- Add SAML group link
- Add a SAML group link for a group
- SAML group links
- Create a group service account
- Creates a service account in a specified group.
- Service accounts
- Create a personal access token for a group service account
- Creates a personal access token for a specified group service account. Available only for group Owners and administrators. This feature was introduced in GitLab 16.1.
- Access tokensService accounts
- Rotate a personal access token for a group service account
- Rotates a specified personal access token for a group service account. This revokes the existing token and creates a token with the same name, description, and scopes.
- Access tokensService accounts
- Add a group to a group
- Adds a group to a group.
- Groups
- Add a group SSH certificate
- Adds a group SSH certificate for a specified group.
- Keys
- Transfer a group
- Transfers a group to another parent group or transforms a subgroup into a top-level group. You must be an administrator or have the Owner role for the group.
- Groups
- Transfer a group to an organization
- Transfer a group to an organization
- Groups
- Unarchive a group
- Unarchives a specified group. You must be an administrator or have the Owner role for the group.
- Groups
- Upload a file to a group
- Uploads a file to the specified group. Returns a markdown-formatted link to the file.
- Groups
- Workhorse authorize the file upload
- This feature was introduced in GitLab 19.0
- Groups
- Create a group variable
- Creates a group variable.
- CI variables
- Create a wiki page meta note
- Creates a note for a wiki page meta.
- Notes
- Create a wiki page for a group
- Creates a wiki page for a specified group. Requests can define the title, slug, and content.
- Wikis
- Upload an attachment to a group wiki
- Uploads a file to the `uploads` directory in a specified group wiki.
- Wikis
- Create a group import
- Creates a group import. The maximum import file size can be set by the Administrator on GitLab Self-Managed (defaults to `0` (unlimited)).
- Group import and export
- Workhorse authorize the group import upload
- This feature was introduced in GitLab 12.8
- Group import and export
- Create a system hook
- Creates a system hook.
- Hooks
- Create a test run
- Creates a test run for a webhook. Executes the webhook with mock data.
- Hooks
- Import repository from Bitbucket Cloud
- Imports a repository from Bitbucket Cloud to GitLab. Prerequisites: - The prerequisites for Bitbucket Cloud importer. This feature was introduced in GitLab 17.0.
- Project import
- Import repository from Bitbucket Server
- Imports a repository from Bitbucket Server to GitLab. The Bitbucket Project Key is only used for finding the repository in Bitbucket. You must specify a `target_namespace` if you want to import the repository to a GitLab group.
- Project import
- Import a repository from GitHub
- Imports a repository from GitHub to GitLab.
- Project import
- Cancel a GitHub project import
- Cancels an in-progress import of a GitHub project to GitLab.
- Project import
- Import GitHub gists into GitLab snippets
- Imports personal GitHub gists into GitLab snippets. You can import gists with up to 10 files. GitHub gists with more than 10 files are skipped. You should manually migrate these GitHub gists. If any gists cannot be imported, an email is sent with a list of gists that were not imported.
- Imports
- Subscribe a namespace to a JiraConnectInstallation
- Subscribes the namespace to the JiraConnectInstallation
- Jira Connect subscriptions
- Register the GitLab for Jira (Forge) system token for direct dev-info sync
- Stores the Forge app system OAuth token (X-Forge-Oauth-System header) and the Jira apiBaseUrl (from the FIT), so GitLab pushes dev-info directly to Jira. See Atlassian::Forge::SystemTokenClient.
- Jira forge installation
- Create a GitLab for Jira (Forge) namespace subscription
- Subscribes a GitLab namespace to the Forge installation so its development data syncs to Jira. Authenticated as the GitLab user (OAuth); the Jira installation and user are resolved from the Forge invocation context.
- Jira forge subscriptions
- Receive Slack events
- Receive Slack events
- Integrations
- Process Slack interaction events
- Processes interaction events from Slack
- IntegrationsInternal operations
- Get Slack interactive component options
- Retrieves options for Slack interactive components
- IntegrationsInternal operations
- Upload job artifacts
- Uploads artifacts for a specified job.
- Jobs
- Authorize artifacts upload
- Authorizes uploading artifacts for a specified job.
- Jobs
- Upload an SBOM file
- Uploads an SBOM file to be scanned for a specified job.
- Software composition analysis
- Authorize SBOM file upload
- Authorizes uploading an SBOM file to be scanned for a specified job.
- Software composition analysis
- Reuse SBOM scan results
- Reuses existing SBOM scan results if scans for the specified digest already exist.
- Software composition analysis
- Request a job
- Requests a job for a runner to execute.
- Jobs
- Create a license
- Creates a license.
- Licenses
- Render Markdown content
- Renders Markdown content as HTML.
- Markdown
- Create MCP request handler
- Handles Model Context Protocol requests
- MCP
- Create an instance member role
- Creates an instance member role.
- Member roles
- Create a subscription for the namespace
- Deprecated in GitLab 17.7
- GitLab subscriptions
- Create a compute minutes purchase record for the namespace
- Deprecated in GitLab 17.7
- CI minutes
- Creates a storage limit exclusion for a Namespace
- Creates a Namespaces::Storage::LimitExclusion
- Namespaces
- Create an add-on purchase for the namespace
- Deprecated in GitLab 17.7
- Add on purchases
- Start a new offline transfer export
- Initiates a new offline transfer export
- Offline transfers
- Start a new offline transfer import
- Initiates a new offline transfer import from object storage
- Offline transfers
- Create an organization
- Creates an organization. This feature was introduced in GitLab 17.5. This feature is behind the `allow_organization_creation` feature flag. In GitLab 18.3, the feature flag changed to `organization_switching`.
- Organizations
- List all package upload URLs
- Lists all the upload URLs for a specified collection of package files. The request must include a JSON object with the name and size of the individual files.
- Packages: Conan
- List all recipe upload URLs
- Lists all the upload URLs for a specified collection of recipe files. The request must include a JSON object with the name and size of the individual files.
- Packages: Conan
- NPM registry bulk advisory endpoint
- This feature was introduced in GitLab 15.6
- Packages: NPM
- NPM registry quick audit endpoint
- This feature was introduced in GitLab 15.6
- Packages: NPM
- Rotate a personal access token
- Rotates a specified personal access token. This revokes the previous token and creates a token that expires after one week. Administrators can revoke tokens for any user. Non-administrators can only revoke their own tokens.
- Access tokens
- Rotate a personal access token
- Rotates a personal access token by passing it to the API in a header
- Access tokens
- Create a dependency list export
- Creates a CycloneDX JSON export for all the project dependencies detected in a pipeline. If an authenticated user does not have the read_dependency permission, this request returns a `403 Forbidden` status code.
- Dependency management
- Create a project alias
- Creates a project alias.
- Project alias
- Create repository storage moves for all projects on a storage shard
- Creates repository storage moves for each project repository stored on the source storage shard. This endpoint migrates all projects at once.
- Storage moves
- Create a project
- Creates a project owned by the authenticated user. If your HTTP repository is not publicly accessible, add authentication information to the URL `https://username:password@gitlab.company.com/group/project.git`, where `password` is a public access key with the `api` scope.
- Projects
- Request access to a project
- Requests access to a specified project for the authenticated user.
- Access requests
- Create a project access token
- Creates a project access token for a specified project. You cannot create a token with an access level greater than your account. For example, a user with the Maintainer role cannot create a project access token with the Owner role. You must use a personal access token with this endpoint. You cannot authenticate with a project access token.
- Access tokens
- Rotate a project access token
- Rotates a project access token by passing it to the API in a header.
- Access tokens
- Rotate a project access token
- Rotates a project access token. This immediately revokes the previous token and creates a token. Generally, this endpoint rotates a specific project access token by authenticating with a personal access token. You can also use a project access token to rotate itself. If you attempt to use this endpoint to rotate a token that was previously revoked, any active tokens from the same token family are revoked. This feature was introduced in GitLab 16.0.
- Access tokens
- Register an external agent identity.
- Registers a new agent identity for the current user, project, agent type, and machine fingerprint combination. Returns an existing record if one already exists. Returns 403 if the identity has been revoked.
- ProjectsAi agent identities
- Upload a metric image
- Uploads a metric image for a specified alert.
- Alert management
- Workhorse authorize metric image file upload
- Workhorse authorize metric image file upload
- Alert management
- Create an approval rule for a project
- Creates an approval rule for a specified project.
- Approval rules
- Create new approval rule
- Private API subject to change
- Approval rules
- Create or update approval configuration for a project
- Creates or updates the approval configuration for a project. The currently authenticated user must be an eligible approver.
- Project approvals
- Archive a project
- Archives a specified project. You must be an administrator or be assigned the Owner role on the project.
- Projects
- Create a badge for a project
- Creates a badge for a specified project.
- Badges
- Create an issue board
- Creates an issue board in a specified project.
- Boards
- Create an issue board list
- Creates an issue board list.
- Boards
- Publish a new component project release as version to the CI/CD catalog
- Publishes a release of a catalog resource as version to the CI/CD catalog.
- CI catalog
- Validate a CI/CD configuration
- Validates a provided CI/CD configuration in the context of a specified project.
- CI lint
- Create an agent
- Creates an agent for the project. You must have the Maintainer or Owner role to use this endpoint.
- Cluster agents
- Create an agent token
- Creates a token for an agent. You must have the Maintainer or Owner role to use this endpoint. An agent can have only two active tokens at one time.
- Cluster agents
- Create an agent URL configuration
- Creates an agent URL configuration. You must have the Maintainer or Owner role to use this endpoint. An agent can have only one URL configuration at the time. This feature was introduced in GitLab 17.4.
- Cluster agents
- Add a cluster to a project
- Adds a cluster to a specified project.
- Clusters
- Create a CI configuration merge request
- Creates a merge request to add CI configuration to a specified project.
- ProjectsMerge requests
- Create a Debian project distribution
- Creates a Debian project distribution for a specified project.
- Packages: Debian
- Create a dependency list export
- Creates a CycloneDX JSON export for all the project dependencies detected in a pipeline. If an authenticated user does not have the read_dependency permission, this request returns a `403 Forbidden` status code.
- Dependency management
- Add a deploy key for a project
- Adds a deploy key for a specified project. If the deploy key already exists in another project, it is joined to the current project only if the original one is accessible by the same user.
- Deploy resources
- Enable a deploy key
- Enables a deploy key for a project so this can be used. Returns the enabled key, with a status code 201 when successful.
- Deploy resources
- Create a project deploy token
- Creates a project deploy token.
- Deploy resources
- Create a deployment
- Creates a deployment.
- Deploy resources
- Approve or reject a deployment
- Approves or rejects a deployment.
- Deploy resources
- Create an environment
- Creates an environment for a specified project.
- Environments
- Stop an environment
- Stops a specified running environment.
- Environments
- Stop stale environments
- Stops all environments that were last modified or deployed to before a specified date. Excludes protected environments.
- Environments
- Create a client key
- Creates a client key for integrated error tracking in a specified project. The public key attribute is generated automatically.
- Error tracking
- Export a project
- Exports a project. Use the `upload` hash parameter to upload the exported project to a web server or any S3-compatible platform.
- Project import
- Schedule a relations export for a project
- Schedules a relations export for a specified project.
- Project import
- Create external status check service
- Creates an external status check service for a specified project.
- External status checks
- Create a feature flag
- Creates a feature flag for a specified project.
- Feature flags
- Create a feature flag user list
- Creates a feature flag user list in a specified project.
- Feature flags
- Create a fork of a project
- Creates a fork of a project.
- Projects
- Create a fork relationship
- Creates a fork relationship between a project and an upstream project.
- Projects
- Create a freeze period
- Creates a freeze period for a specified project. You must have the Maintainer or Owner role for the project.
- Freeze periods
- Add a webhook to a project
- Adds a webhook to a specified project.
- Hooks
- Resend a webhook event
- Resends a webhook event. This endpoint has a rate limit of five requests per minute for each authenticated user for a given project or group. On GitLab Self-Managed and GitLab Dedicated, an administrator can change this limit in the application settings.
- Hooks
- Trigger a test webhook
- Triggers a test webhook. This endpoint has a rate limit of five requests per minute for each authenticated user for a given project or group. On GitLab Self-Managed and GitLab Dedicated, an administrator can change this limit in the application settings.
- Hooks
- Start the housekeeping task for a project
- Starts the housekeeping task for a project.
- Projects
- Import a project from a Git URL
- Imports a project from a specified Git URL. This feature was introduced in GitLab 18.10.
- Project import
- Import members
- Imports members from another project. If the role of the importing member for the target project is a Maintainer, then members with the Owner role for the source project are imported with the Maintainer role. If the importing member is an Owner, then members with the Owner role for the source project are imported with the Owner role.
- Projects
- Trigger a slash command for mattermost-slash-commands
- Triggers a slash command for mattermost-slash-commands.
- Integrations
- Add a member to a project
- Adds a member to a project. You can specify a user ID or invite a user by email.
- Invitations
- Create an issue
- Creates an issue for a specified project.
- Projects
- Add spent time for an issue
- Adds spent time for a specified issue.
- Issues
- Add an emoji reaction to an issue
- Adds an emoji reaction to an issue.
- Award emoji
- Clone an issue
- Clones a specified issue to a project. Copies as much data as possible as long as the target project contains equivalent criteria, such as labels or milestones. If you have insufficient permissions, an error message with status code `400` is returned.
- Projects
- Create an issue link
- Creates a two-way relationship between two issues. The user must be allowed to update both issues to succeed.
- Issues
- Upload a metric image for an incident
- Uploads a screenshot of metric charts for an incident. Available only for incidents.
- Metric images
- Authorize metric image upload
- Authorizes uploading a metric image for a specified incident.
- Metric images
- Move an issue
- Moves a specified issue to a different project. If the target project is the source project or the user has insufficient permissions, an error message with status code `400` is returned. If a label or milestone with the same name also exists in the target project, it is then assigned to the issue being moved.
- Projects
- Add an emoji reaction to an issue comment
- Adds an emoji reaction to a comment on an issue.
- Award emoji
- Reset spent time for an issue
- Resets the total spent time for a specified issue to `0` seconds.
- Issues
- Reset the estimated time for an issue
- Resets the estimated time for a specified issue to `0` seconds.
- Issues
- Set the estimated time for an issue
- Sets an estimated time of work for a specified issue.
- Issues
- Create a to-do item for an issuable
- Creates a to-do item for the current user on a specified issuable. If a to-do item already exists for the user on that issuable, returns a `304` status code.
- To-dos
- Create an issue discussion
- Creates a discussion for a specified issue. Replies can be added to it later.
- Discussions
- Add a comment to an issue discussion
- Adds a comment to a specified issue discussion.
- Discussions
- Create an issue note
- Creates a note for an issue.
- Notes
- Subscribe to an issue
- Subscribes the currently authenticated user to a specified issue. They will receive notifications on changes to this item.
- Resource subscriptions
- Unsubscribe to an issue
- Unsubscribes the currently authenticated user from a specified issue. They will no longer receive notifications on changes to this item.
- Resource subscriptions
- Add a project to a CI/CD job token allowlist
- Adds a project to the CI/CD job token allowlist of a specified project.
- Projects job token scope
- Add a group to a CI/CD job token allowlist
- Adds a group to the CI/CD job token allowlist of a specified project.
- Projects job token scope
- Retain job artifacts
- Retains job artifacts. Prevents artifacts for a job from being automatically deleted when they reach their expiration date.
- Job artifacts
- Cancel a job
- Cancels a specified job in a project.
- CI jobs
- Erase a job
- Erases a specified job in a project. This removes job artifacts and the job log.
- CI jobs
- Run a job
- Runs a specified job. For a job in manual status, triggers an action to start the job.
- CI jobs
- Retry a job
- Retries a specified job in a project.
- CI jobs
- Create a project label
- Creates a label for a specified project.
- Labels
- Subscribe to a project label
- Subscribes the currently authenticated user to a specified project label. They will receive notifications on changes to this item.
- Resource subscriptions
- Unsubscribe to a project label
- Unsubscribes the currently authenticated user from a specified project label. They will no longer receive notifications on changes to this item.
- Resource subscriptions
- Create a software license policy
- Creates a software license policy for a specified project.
- Licenses
- Add a member to a project
- Adds a member to a specified project.
- Members
- Create a merge request
- Creates a merge request for a project.
- Merge requests
- Add spent time for a merge request
- Adds spent time for a specified merge request.
- Merge requests
- Create an approval rule for a merge request
- Creates an approval rule for a specified merge request. If `approval_project_rule_id` is set with the ID of an existing approval rule from the project, this endpoint copies the values for `name`, `users`, and `groups` from the project rule.
- Merge request approvals
- Change approval-related configuration
- Deprecated in 16.0. Use the merge request approvals API instead.
- Merge request approvals
- Approve merge request
- Approves a specified merge request. The currently authenticated user must be an eligible approver. The `sha` parameter ensures you are approving the current version of the merge request. If defined, the value must match the merge request’s HEAD commit SHA. A mismatch returns a `409 Conflict` response.
- Merge request approvals
- Add an emoji reaction to a merge request
- Adds an emoji reaction to a merge request.
- Award emoji
- Create a merge request dependency
- Creates a merge request dependency between two merge requests. The merge request is blocked until the dependency merges.
- Merge requests
- Cancel merge when pipeline succeeds
- Cancels an automatic merge for a merge request that has been set to merge when the pipeline succeeds.
- Merge requests
- Create context commits for a merge request
- Creates context commits for a specified merge request.
- Merge requests
- Create a draft note
- Creates a draft note for a specified merge request.
- Draft notes
- Publish all pending draft notes
- Publishes all pending draft notes for the current user on the specified merge request. Optionally sets the reviewer state and posts a summary note.
- Draft notes
- Add an emoji reaction to a merge request comment
- Adds an emoji reaction to a comment on a merge request.
- Award emoji
- Create a merge request pipeline
- Creates a merge request pipeline. Pipelines created with this operation must configure `.gitlab-ci.yml` with `only: [merge_requests]` to create jobs.
- Merge requests
- Reset spent time for a merge request
- Resets the total spent time for a specified merge request to `0` seconds.
- Merge requests
- Reset the estimated time for a merge request
- Resets the estimated time for a specified merge request to `0` seconds.
- Merge requests
- Update status of an external status check
- Updates the status of an external status check for a specified merge request, informing GitLab that a merge request has passed a check by an external service. To set the status of an external check, the personal access token used must belong to a user with the Developer, Maintainer, or Owner role on the target project of the merge request. Any user with permission to approve the merge request can use this operation.
- External status checks
- Retry failed status check for a merge request
- Retries a specified failed external status check for a merge request. Even though the merge request has not changed, this endpoint resends the current state of merge request to the defined external service.
- External status checks
- Set the estimated time for a merge request
- Sets an estimated time of work for a specified merge request.
- Merge requests
- Create a to-do item for an issuable
- Creates a to-do item for the current user on a specified issuable. If a to-do item already exists for the user on that issuable, returns a `304` status code.
- To-dos
- Unapprove a merge request
- Unapproves a merge request. Removes the approval for the currently authenticated user from a specified merge request.
- Merge request approvals
- Create a merge request discussion
- Creates a discussion for a specified merge request. Replies can be added to it later.
- Discussions
- Add a comment to a merge request discussion
- Adds a comment to a specified merge request discussion.
- Discussions
- Create a merge request note
- Creates a note for a merge request.
- Notes
- Subscribe to a merge request
- Subscribes the currently authenticated user to a specified merge request. They will receive notifications on changes to this item.
- Resource subscriptions
- Unsubscribe to a merge request
- Unsubscribes the currently authenticated user from a specified merge request. They will no longer receive notifications on changes to this item.
- Resource subscriptions
- Add a merge request to a merge train
- Adds a specified merge request to a merge train.
- Merge trains
- Create a project milestone
- Creates a project milestone.
- Milestones
- Promote a project milestone to a group milestone
- Promotes a specified project milestone to a group milestone. Only for users with the Planner, Reporter, Developer, Maintainer, or Owner role for the group.
- Milestones
- Start the pull mirroring process for a project
- Starts the pull mirroring process for a specified project.
- Project mirrors
- Create experiment
- https://www.mlflow.org/docs/2.19.0/rest-api.html#create-experiment
- MLOps
- Delete an experiment.
- https://mlflow.org/docs/2.19.0/rest-api.html#delete-experiment
- MLOps
- Search experiments
- https://www.mlflow.org/docs/2.19.0/rest-api.html#search-experiments
- MLOps
- Sets a tag for an experiment.
- https://www.mlflow.org/docs/2.19.0/rest-api.html#set-experiment-tag
- MLOps
- Creates a Model Version.
- MLFlow Model Versions map to GitLab Model Versions. https://mlflow.org/docs/2.19.0/rest-api.html#create-modelversion
- MLOps
- Creates a Registered Model.
- MLFlow Registered Models map to GitLab Models. https://mlflow.org/docs/2.19.0/rest-api.html#create-registeredmodel
- MLOps
- Fetch the latest Model Version for the given Registered Model Name
- https://mlflow.org/docs/2.19.0/rest-api.html#get-latest-modelversions
- MLOps
- Creates a Run.
- MLFlow Runs map to GitLab Candidates. https://www.mlflow.org/docs/2.19.0/rest-api.html#create-run
- MLOps
- Delete a run.
- https://mlflow.org/docs/2.19.0/rest-api.html#delete-run
- MLOps
- Logs multiple parameters and metrics.
- https://www.mlflow.org/docs/2.19.0/rest-api.html#log-param
- MLOps
- Logs a metric to a run.
- https://www.mlflow.org/docs/1.28.0/rest-api.html#log-metric
- MLOps
- Logs a parameter to a run.
- https://www.mlflow.org/docs/2.19.0/rest-api.html#log-param
- MLOps
- Searches runs/candidates within a project
- https://www.mlflow.org/docs/2.19.0/rest-api.html#search-runsexperiment_ids supports only a single experiment ID.Introduced in GitLab 16.4
- MLOps
- Sets a tag for a run.
- https://www.mlflow.org/docs/2.19.0/rest-api.html#set-tag
- MLOps
- Updates a Run.
- MLFlow Runs map to GitLab Candidates. https://www.mlflow.org/docs/2.19.0/rest-api.html#update-run
- MLOps
- Create a package
- Creates a Composer package from a specified Git tag or branch for a project.
- Packages: Composer
- List all package upload URLs
- Lists all the upload URLs for a specified collection of package files. The request must include a JSON object with the name and size of the individual files.
- Packages: Conan
- List all recipe upload URLs
- Lists all the upload URLs for a specified collection of recipe files. The request must include a JSON object with the name and size of the individual files.
- Packages: Conan
- Upload a chart
- Uploads a specified chart for a project.
- Packages: Helm
- Authorize a chart upload from workhorse
- This feature was introduced in GitLab 14.0
- Packages: Helm
- NPM registry bulk advisory endpoint
- This feature was introduced in GitLab 15.6
- Packages: NPM
- NPM registry quick audit endpoint
- This feature was introduced in GitLab 15.6
- Packages: NPM
- Create a package protection rule
- Creates a package protection rule for a specified project.
- Projects
- Upload a package
- Uploads a PyPI package for a specified project.
- Packages: PyPi
- Authorize the PyPi package upload from workhorse
- This feature was introduced in GitLab 12.10
- Packages: PyPi
- Upload a RPM package
- This feature was introduced in GitLab 15.7
- Packages: RPM
- Authorize package upload from workhorse
- This feature was introduced in GitLab 15.7
- Packages: RPM
- Upload a gem
- Uploads a gem for a specified project.
- Packages: RubyGem
- Authorize a gem upload from workhorse
- This feature was introduced in GitLab 13.9
- Packages: RubyGem
- Create Pages domain
- Creates a Pages domain in a specified project. You must have permissions to create Pages domains.
- GitLab Pages
- Create a pipeline
- Creates a pipeline in the specified project.
- Pipelines
- Create a pipeline schedule
- Creates a pipeline schedule.
- Pipeline schedules
- Run a pipeline schedule
- Runs a pipeline schedule immediately. The next scheduled run of this pipeline is not affected.
- Pipeline schedules
- Create or update ownership of a pipeline schedule
- Creates or updates the owner of a pipeline schedule for a project.
- Pipeline schedules
- Create a variable for a pipeline schedule
- Creates a variable for a pipeline schedule.
- Pipeline schedules
- Cancel all jobs for a pipeline
- Cancels all jobs in a specified pipeline.
- Pipelines
- Retry jobs in a pipeline
- Retries failed or canceled jobs in a pipeline. If there are no failed or canceled jobs in the pipeline, calling this endpoint has no effect.
- Pipelines
- Protect repository branches
- Protects a specified repository branch or several project repository branches using a wildcard protected branch.
- Protected branches
- Protect an environment for a project
- Protects a specified environment for a project.
- Protected environments
- Protect a repository tag
- Protects a specified repository tag using a wildcard protected tag.
- Protected tags
- Add push rules to a project
- Adds push rules to a specified project.
- Push rules
- Trigger a pipeline with a token
- Triggers a pipeline with a token. With a CI/CD job token, the triggered pipeline is a multi-project pipeline. The job that authenticates the request becomes associated with the upstream pipeline, which is visible on the pipeline graph. If you use a trigger token in a job, the job is not associated with the upstream pipeline.
- CI triggers
- Create a container repository protection rule
- Creates a container repository protection rule for a specified project to control who can push or delete container images.
- Projects
- Create a container registry protection tag rule
- Creates a container registry protection tag rule for a project to control who can push or delete container tags. This feature was introduced in GitLab 18.8.
- Projects
- Create a release
- Creates a release. Developer level access to the project is required to create a release.
- Releases
- Create a release link
- Creates an asset link for a specified release.
- Releases
- Generate release evidence
- Generates an evidence for an existing release.
- Releases
- Create a push mirror
- Creates a push mirror.
- Remote mirrors
- Force push mirror update
- Forces an update to a push mirror.
- Remote mirrors
- Get contents of multiple files in a single request
- Each blob is truncated to the first 1 MB; the `truncated` field indicates when this happens.
- Repositories
- Create a repository branch
- Creates a branch in the repository.
- Branches
- Add changelog data to file
- Adds changelog data to file.
- Repositories
- Create a commit
- This feature was introduced in GitLab 8.13
- Commits
- Create a commit discussion
- Creates a discussion for a specified commit. Replies can be added to it later.
- Discussions
- Add a comment to a commit discussion
- Adds a comment to a specified commit discussion.
- Discussions
- Cherry-pick a commit
- Cherry-picks a commit to a specified branch.
- Commits
- Create a comment on a commit
- Creates a comment on a commit. To comment on a specific line in a file, specify the full commit SHA, `path`, `line`, and set `line_type` to `new`.
- Commits
- Revert a commit
- Reverts a commit in a specified branch.
- Commits
- Create a file in a repository
- Creates a file in a specified repository. Use the Commits API to create multiple files with a single request.
- Files
- Start a task to recalculate repository size for a project
- This feature was introduced in GitLab 15.0.
- Projects
- Create a repository storage move for a project
- Creates a repository storage move for a specified project.
- Storage moves
- Create a tag
- Creates a tag in the repository that points to a specified reference.
- Tags
- Restore a project marked for deletion
- Restores a specified project that was marked for deletion.
- Projects
- Assign a runner to a project
- Assigns an available project runner to a project.
- RunnersProjects
- Reset the runner registration token for a project
- Resets the runner registration token for a specified project.
- RunnersProjects
- Create a secure file
- Creates a secure file in a specified project.
- Secure files
- Scan a file for vulnerabilities
- Scans a specified file for security vulnerabilities using SAST.
- Security scans
- Create a project service account
- Creates a service account in a specified project.
- Service accounts
- Create a personal access token for a project service account
- Creates a personal access token for a specified project service account. Available only for project Owners, Maintainers, and administrators.
- Access tokensService accounts
- Rotate a personal access token for a project service account
- Rotates a specified personal access token for a project service account. This revokes the existing token and creates a token with the same name, description, and scopes.
- Access tokensService accounts
- Trigger a slash command for mattermost-slash-commands
- Triggers a slash command for mattermost-slash-commands.
- Integrations
- Share a project with a group
- Shares a specified project with a group.
- Projects
- Create a project snippet
- Creates a project snippet. The user must have permission to create snippets.
- Snippets
- Create a snippet discussion
- Creates a discussion for a specified snippet. Replies can be added to it later.
- Discussions
- Add a comment to a snippet discussion
- Adds a comment to a specified snippet discussion.
- Discussions
- Create a snippet note
- Creates a note for a snippet.
- Notes
- Add an emoji reaction to a snippet
- Adds an emoji reaction to a snippet.
- Award emoji
- Add an emoji reaction to a snippet comment
- Adds an emoji reaction to a comment on a snippet.
- Award emoji
- Star a project
- Stars a specified project.
- Projects
- Create or update a commit pipeline status
- Creates or updates the status of a commit represented by a job in an `external` stage. If the commit is associated with a merge request, target the commit in the merge request source branch.
- Commit statuses
- Create or update a Terraform state
- Creates or updates a Terraform state for a specified project.
- Terraform
- Authorize Terraform state upload
- Authorizes uploading a Terraform state for a specified project. This feature was introduced in GitLab 18.5.
- Terraform
- Lock a Terraform state
- Locks a Terraform state for a specified project.
- Terraform
- Create a Terraform state protection rule for a project
- This feature was introduced in GitLab 19.1.
- Projects
- Trigger a pipeline with a token
- Triggers a pipeline with a token. With a CI/CD job token, the triggered pipeline is a multi-project pipeline. The job that authenticates the request becomes associated with the upstream pipeline, which is visible on the pipeline graph. If you use a trigger token in a job, the job is not associated with the upstream pipeline.
- CI triggers
- Create a trigger token
- Creates a pipeline trigger token for a project.
- CI triggers
- Unarchive a project
- Unarchives a specified project. You must be an administrator or have the Owner role on the project.
- Projects
- Unstar a project
- Unstars a specified project.
- Projects
- Create an upload
- Creates an upload.
- Projects
- Workhorse authorize the file upload
- This feature was introduced in GitLab 13.11
- Projects
- Create a variable
- Creates a variable. If a variable with the same `key` already exists, the variable must have a different `environment_scope`. Otherwise, GitLab returns a message similar to: `VARIABLE_NAME has already been taken`.
- CI variables
- Create a new vulnerability
- Creates a new vulnerability from a confirmed finding.
- Vulnerabilities
- Create a vulnerability note
- Creates a note for a vulnerability.
- Notes
- Create a wiki page meta note
- Creates a note for a wiki page meta.
- Notes
- Create a wiki page for a project
- Creates a wiki page for a specified project. Requests can define the title, slug, and content.
- Wikis
- Upload an attachment to a project wiki
- Uploads a file to the `uploads` directory in a specified project wiki.
- Wikis
- Import a project from a local archive
- Imports a project from a local archive.
- Project import
- Workhorse authorize the project import upload
- This feature was introduced in GitLab 12.9
- Project import
- Import project resources
- Imports project resources included with a project archive. The type of item to import is controlled by the `relation` attribute. Skips items that were previously imported. This feature was introduced in GitLab 16.11.
- Project import
- Authorize project relation import
- Authorizes uploading a project relation import file. This feature was introduced in GitLab 16.11.
- Project import
- Create a Cube query request
- Creates a query request to the Cube API and generates an access token.
- AnalyticsInternal operations
- Create a Cube query request
- Creates a query request to the Cube API for product analytics and generates an access token. Requires the `product_analytics_features` flag to be enabled.
- AnalyticsInternal operations
- Get metadata for analytics.
- Retrieves metadata for analytics from the cube installation
- AnalyticsInternal operations
- Import a project from a remote archive
- Imports a project from a remote archive.
- Project import
- Import a project from an AWS S3 bucket
- Imports a project from an archive stored in a specified AWS S3 bucket.
- Project import
- Create a project for a user
- Creates a project for a user. Administrators only.
- Projects
- Register a runner controller
- Registers a runner controller.
- Runner controllers
- Add instance scope
- Adds an instance scope to a runner controller. When added, the runner controller evaluates jobs for all runners in the GitLab instance. A runner controller can have only one instance scope. If an instance scope already exists, this operation returns an error.
- Runner controllers
- Add runner scope
- Adds a runner scope to a runner controller. When added, the runner controller evaluates jobs only for a specified runner. A runner controller with an instance scope cannot have runner scopes. Remove the instance scope before adding runner scopes.
- Runner controllers
- Create a runner controller token
- Creates a runner controller token.
- Runner controller tokens
- Rotate a runner controller token
- Rotates an existing runner controller token.
- Runner controller tokens
- Create a runner
- Creates a runner.
- CI runners
- Reset an authentication token for a runner
- Resets the authentication token for a specified runner.
- Runners
- Reset a runner authentication token with the current token
- Resets a runner authentication token with the token used to authenticate the request.
- CI runners
- Reset the runner registration token for the instance
- Resets the runner registration token for the GitLab instance.
- RunnersGroups
- Verify authentication for a registered runner
- Verifies authentication for a registered runner.
- CI runners
- Create a group-level vulnerability export
- Creates a vulnerability export for a group. Returns status code `403` if the authenticated user does not have permission to create a vulnerability.
- Vulnerabilities
- Create an export for archived vulnerabilities
- Creates an export for archived vulnerabilities in a specified project. If an authenticated user does not have permission to read vulnerabilities, returns a `403 Forbidden` status code.
- Vulnerabilities
- Create a project-level vulnerability export
- Creates a vulnerability export for a project. Returns status code `403` if the authenticated user does not have permission to create a vulnerability.
- Vulnerabilities
- Create an instance-level vulnerability export
- Creates a vulnerability export for the projects of the user selected in the Security Dashboard. The created vulnerability export is automatically deleted at the time specified in the `expires_at` field.
- Vulnerabilities
- Create an instance service account
- Creates an instance service account.
- Service accounts
- Trigger a global slack command
- Triggers a global slack command.
- Integrations
- Schedule repository storage moves for all snippets on a storage shard
- Schedules repository storage moves for each snippet repository stored on the source storage shard. This endpoint migrates all snippets at once.
- Storage moves
- Create a snippet
- Creates a snippet.
- Snippets
- Schedule a repository storage move for a snippet
- Schedules a repository storage move for a specified snippet.
- Storage moves
- Mark a to-do item as done
- Marks a to-do item for the current user as done.
- To-dos
- Mark all to-do items as done
- Marks all pending to-do items for the current user as done. It returns the HTTP status code `204` with an empty response.
- To-dos
- Issue a short-lived JWT for a single modular-service audience
- Issues a short-lived RS256 JWT scoped to one modular-service audience (such as the Artifact Registry). Claims include the requesting user id (sub), organization id, and deployment realm (saas / self-managed). Presented to the corresponding backend and verified against the instance JWKS.
- Token exchange
- Create a project topic
- Creates a project topic. Administrators only.
- Project topics
- Merge topics
- Merges a source topic into a target topic. This action deletes the source topic and moves all assigned projects to the target topic. Administrators only.
- Project topics
- Track usage data event
- This feature was introduced in GitLab 13.4.
- Usage data
- Track usage data event for the current user
- Track usage data event for the current user
- Usage data
- Track an internal GitLab event
- Tracks a GitLab internal event. This action increments Service Ping counters in Redis and is optionally sent to Snowplow. Introduced in GitLab 16.2.
- Usage data
- Track multiple internal GitLab events
- Tracks one or more GitLab internal events in a single request. Each event increments Service Ping counters in Redis and is optionally sent to Snowplow. This feature was introduced in GitLab 17.3.
- Usage data
- Create an application
- Creates a new OAuth application for the authenticated user. This feature was introduced in GitLab 19.0
- Applications
- Add an email address
- Adds an email address for the currently authenticated user.
- Users
- Add a GPG key
- Adds a GPG key for the currently authenticated user.
- Keys
- Revoke a GPG key
- This feature was added in GitLab 10.0
- Keys
- Add an SSH key
- Adds an SSH key for the currently authenticated user.
- Keys
- Create a personal access token
- Creates a personal access token for the currently authenticated user. For security purposes, the token is limited to the `k8s_proxy` and `self_rotate` scope. Token values are included with the response, but cannot be retrieved later. This feature was introduced in GitLab 16.5.
- Access tokens
- Create a runner owned by currently authenticated user
- Create a new runner
- UsersRunners
- Create a Support PIN
- Creates a Support PIN. The PIN expires seven days after creation. GitLab Support may ask for this PIN to validate your identity.
- Users
- Create a user
- Creates a user. Administrators only.
- Users
- Reactivate a user
- Reactivates a specified user account that was previously deactivated. Administrators only.
- Users
- Approve access to a user
- Approves access to a specified user account that is pending approval. Administrators only.
- Users
- Ban a user
- Bans a specified user account. Administrators only.
- Users
- Block access to a user
- Blocks a specified user account. Administrators only.
- Users
- Deactivate a user
- Deactivates a specified user account. Administrators only.
- Users
- Add an email address for a user
- Adds an email address for a specified user account. Administrators only.
- Users
- Follow a user
- Follows a specified user account.
- Users
- Add a GPG key for a user
- Adds a GPG key for a specified user account. Administrators only.
- Keys
- Revoke a GPG key for a user.
- Deletes a GPG key from a specified user account. Administrators only.
- Keys
- Reject access to a user
- Rejects access to a specified user account that is pending approval. Administrators only.
- Users
- Revoke a Support PIN for a user
- Revokes a Support PIN for a specified user. This immediately expires and removes the PIN. Administrators only.
- Users
- Unban a user
- Unbans a specified user account that was previously banned. Administrators only.
- Users
- Unblock access to a user
- Unblocks a specified user account that was previously blocked. Administrators only.
- Users
- Unfollow a user
- Unfollows a specified user account.
- Users
- Create an impersonation token
- Creates an impersonation token. These tokens are used to act on behalf of a user and can perform API calls as well as Git read and write actions. These tokens are not visible to the associated user on their profile settings page. Token values are included with the response, but cannot be retrieved later. Administrators only.
- Access tokens
- Add an SSH key for a user
- Adds an SSH key for a specified user account. Administrators only.
- Keys
- Create a personal access token for a user
- Creates a personal access token for a user. Token values are included with the response, but cannot be retrieved later. Administrators only.
- Access tokens
- Creates or updates a specific setting
- Creates or updates a specific setting
- VSCode
- Creates or updates a specific setting
- Creates or updates a specific setting
- VSCode
- Confirm a vulnerability
- Confirms a specified vulnerability, marking it as genuine and requiring action. Returns status code `304` if the vulnerability is already confirmed. Returns status code `403` if the authenticated user does not have permission to change the vulnerability status.
- Vulnerabilities
- Dismiss a vulnerability
- Dismisses a specified vulnerability. Returns status code `304` if the vulnerability is already dismissed. Returns status code `403` if the authenticated user does not have permission to change the vulnerability status.
- Vulnerabilities
- Relate an issue to a vulnerability
- Relate an issue to a vulnerability
- Vulnerabilities
- Resolve a vulnerability
- Resolves a specified vulnerability. Returns status code `304` if the vulnerability is already resolved. Returns status code `403` if the authenticated user does not have permission to change the vulnerability status.
- Vulnerabilities
- Revert a vulnerability to detected state
- Reverts a specified vulnerability to detected state. Returns status code `304` if the vulnerability is already in detected state. Returns status code `403` if the authenticated user does not have permission to change vulnerability status.
- Vulnerabilities
- Update AI False Positive Detection results
- Updates the confidence score and explanation for AI-based False Positive Detection flows.
- Vulnerabilities
- Update enabled namespace state
- Update enabled namespace state
- Active context
- Update collection options
- Update collection options
- Active context
- Activate an ActiveContext connection
- Activate an ActiveContext connection
- Active context
- Deactivate an ActiveContext connection
- Deactivate an ActiveContext connection
- Active context
- Pause a batched background migration
- Pause a batched background migration
- Batched background migrations
- Resume a batched background migration
- Resume a batched background migration
- Batched background migrations
- Restart a batched background operation
- This feature was introduced in GitLab 19.2.
- Batched background operations
- Stop a batched background operation
- This feature was introduced in GitLab 19.2.
- Batched background operations
- Update an instance variable
- Updates a specified instance variable.
- CI variables
- Update an instance cluster
- Updates an existing instance cluster.
- Clusters
- Recalculate checksums for model records
- Recalculates checksums for selected records of a specified model, filtered by `checksum_state` and `identifiers` parameters if provided. The request enqueues a background job to perform the recalculation. Only available to administrators on primary Geo sites.
- Data management
- Recalculate the checksum of a model record
- Recalculates the checksum of a specified model record. The checksum value is a representation of the queried model hashed with the md5 or sha256 algorithm. Only available to administrators on primary Geo sites.
- Data management
- Enable a namespace for Knowledge Graph
- This endpoint enables Knowledge Graph for a specific namespace
- Knowledge graph
- Update security policy settings
- Updates the security policy settings for this GitLab instance.
- Compliance policy settings
- Triggers indexing for the specified project
- Triggers indexing for the specified project
- Code search
- Add a namespace to a node for Zoekt indexing
- Add a namespace to a node for Zoekt indexing
- Code search
- Update workflow event
- Update workflow event
- GitLab Duo workflowsInternal operations
- Modify appearance
- Modify appearance
- Instance
- Change plan limits
- Modify the limits of a plan on the GitLab instance.
- Plan limits
- Update application settings
- Updates the current application settings for this GitLab instance.
- Instance
- Update a broadcast message
- Updates a specified broadcast message.
- Broadcast messages
- Rollback namespaces to be indexed down to n%
- This feature was introduced in GitLab 12.7. **DEPRECATED**: This endpoint is deprecated and for GitLab.com use only. This will only ever decrease the number of indexed namespaces. Providing a value higher than the current rolled out percentage will have no effect. This percentage is never persisted but is used to calculate the number of namespaces to rollback.
- Advanced search rollout
- Rollout namespaces to be indexed up to n%
- This feature was introduced in GitLab 12.7. **DEPRECATED**: This endpoint is deprecated and for GitLab.com use only. This will only ever increase the number of indexed namespaces. Providing a value lower than the current rolled out percentage will have no effect. This percentage is never persisted but is used to calculate the number of new namespaces to rollout. If the same percentage is applied again at a later time, due to possible new namespaces being created during the period, some of them will also be indexed. Therefore you may expect that setting this to 10%, then waiting a month and setting to 10% again will trigger new namespaces to be added (i.e. 10% of the number of newly created namespaces in the last month within the given plan).
- Advanced search rollout
- Update a Geo node
- Updates a specified Geo node.
- Geo
- Update a Geo site
- Updates a specified Geo site.
- Geo
- Update group attributes
- Updates the attributes for a specified group. You must be an administrator or have the Owner role for the group.
- Groups
- Approve an access request
- Approves an access request for a specified user in a group.
- Access requests
- Update group approval rule
- Update group approval rule
- Approval rules
- Update a badge for a group
- Updates a specified badge for a group.
- Badges
- Update a group issue board
- Updates a specified group issue board.
- Boards
- Update a group issue board list
- Updates a specified group issue board list. This call is used to change list position.
- Boards
- Update a group cluster
- Updates a specified group cluster.
- Clusters
- Creates or updates a custom attribute for a group
- Creates or updates a custom attribute for a specified group. If the attribute already exists, it is updated, otherwise a new attribute is created.
- Custom attributes
- Update a Debian group distribution
- Updates a specified Debian group distribution for a group.
- Packages: Debian
- Update an epic
- Updates an epic
- Epics
- Reorder child epics
- Reorder child epics
- Epics
- Update a related epic link
- Updates the relation of a specified issue to an epic.
- Epics
- Resolve or unresolve an epic discussion
- Resolves or unresolves a specified epic discussion.
- Discussions
- Update a comment in an epic discussion
- Updates or changes the status of a specified comment in a epic discussion.
- Discussions
- Update an epic note
- Updates an existing note for an epic.
- Notes
- Update a group hook
- Updates a hook for a specified group.
- Hooks
- Update a custom header
- Updates a custom header for a specified webhook.
- Hooks
- Update a URL variable
- Updates a URL variable for a specified webhook.
- Hooks
- Create or update the Apple App Store integration
- Creates or updates the Apple App Store integration.
- Integrations
- Create or update the Asana integration
- Creates or updates the Asana integration.
- Integrations
- Create or update the Assembla integration
- Creates or updates the Assembla integration.
- Integrations
- Create or update the Bamboo integration
- Creates or updates the Bamboo integration.
- Integrations
- Create or update the Bugzilla integration
- Creates or updates the Bugzilla integration.
- Integrations
- Create or update the Buildkite integration
- Creates or updates the Buildkite integration.
- Integrations
- Create or update the Campfire integration
- Creates or updates the Campfire integration.
- Integrations
- Create or update the Clickup integration
- Creates or updates the Clickup integration.
- Integrations
- Create or update the Confluence integration
- Creates or updates the Confluence integration.
- Integrations
- Create or update the Custom Issue Tracker integration
- Creates or updates the Custom Issue Tracker integration.
- Integrations
- Create or update the Datadog integration
- Creates or updates the Datadog integration.
- Integrations
- Create or update the Diffblue Cover integration
- Creates or updates the Diffblue Cover integration.
- Integrations
- Create or update the Discord integration
- Creates or updates the Discord integration.
- Integrations
- Create or update the Drone Ci integration
- Creates or updates the Drone Ci integration.
- Integrations
- Create or update the Emails On Push integration
- Creates or updates the Emails On Push integration.
- Integrations
- Create or update the Ewm integration
- Creates or updates the Ewm integration.
- Integrations
- Create or update the External Wiki integration
- Creates or updates the External Wiki integration.
- Integrations
- Create or update the Git Guardian integration
- Creates or updates the Git Guardian integration.
- Integrations
- Create or update the Github integration
- Creates or updates the Github integration.
- Integrations
- Create or update the Gitlab Slack Application integration
- Creates or updates the Gitlab Slack Application integration.
- Integrations
- Create or update the Google Cloud Platform Artifact Registry integration
- Creates or updates the Google Cloud Platform Artifact Registry integration.
- Integrations
- Create or update the Google Cloud Platform Workload Identity Federation integration
- Creates or updates the Google Cloud Platform Workload Identity Federation integration.
- Integrations
- Create or update the Google Play integration
- Creates or updates the Google Play integration.
- Integrations
- Create or update the Hangouts Chat integration
- Creates or updates the Hangouts Chat integration.
- Integrations
- Create or update the Harbor integration
- Creates or updates the Harbor integration.
- Integrations
- Create or update the Irker integration
- Creates or updates the Irker integration.
- Integrations
- Create or update the Jenkins integration
- Creates or updates the Jenkins integration.
- Integrations
- Create or update the Jira integration
- Creates or updates the Jira integration.
- Integrations
- Create or update the Jira Cloud App integration
- Creates or updates the Jira Cloud App integration.
- Integrations
- Create or update the Linear integration
- Creates or updates the Linear integration.
- Integrations
- Create or update the Matrix integration
- Creates or updates the Matrix integration.
- Integrations
- Create or update the Mattermost integration
- Creates or updates the Mattermost integration.
- Integrations
- Create or update the Mattermost Slash Commands integration
- Creates or updates the Mattermost Slash Commands integration.
- Integrations
- Create or update the Microsoft Teams integration
- Creates or updates the Microsoft Teams integration.
- Integrations
- Create or update the Mock Ci integration
- Creates or updates the Mock Ci integration.
- Integrations
- Create or update the Mock Monitoring integration
- Creates or updates the Mock Monitoring integration.
- Integrations
- Create or update the Packagist integration
- Creates or updates the Packagist integration.
- Integrations
- Create or update the Phorge integration
- Creates or updates the Phorge integration.
- Integrations
- Create or update the Pipelines Email integration
- Creates or updates the Pipelines Email integration.
- Integrations
- Create or update the Pivotaltracker integration
- Creates or updates the Pivotaltracker integration.
- Integrations
- Create or update the Pumble integration
- Creates or updates the Pumble integration.
- Integrations
- Create or update the Pushover integration
- Creates or updates the Pushover integration.
- Integrations
- Create or update the Redmine integration
- Creates or updates the Redmine integration.
- Integrations
- Create or update the Slack integration
- Creates or updates the Slack integration.
- Integrations
- Create or update the Squash Tm integration
- Creates or updates the Squash Tm integration.
- Integrations
- Create or update the Teamcity integration
- Creates or updates the Teamcity integration.
- Integrations
- Create or update the Telegram integration
- Creates or updates the Telegram integration.
- Integrations
- Create or update the Unify Circuit integration
- Creates or updates the Unify Circuit integration.
- Integrations
- Create or update the Webex Teams integration
- Creates or updates the Webex Teams integration.
- Integrations
- Create or update the Youtrack integration
- Creates or updates the Youtrack integration.
- Integrations
- Create or update the Zentao integration
- Creates or updates the Zentao integration.
- Integrations
- Update an invitation to a group
- Updates a pending invitation to a group.
- Invitations
- Update a group label
- Updates an existing group label. At least one parameter is required to update the group label.
- Labels
- Update a group label
- Updates a specified group label. At least one parameter is required to update the group label.
- Labels
- Approve a group member
- Approves a specified pending user for a top-level group and any subgroups or projects.
- Members
- Update a group member
- Updates a specified member of a group.
- Members
- Update group membership state for a user
- Updates the membership state for a specified user in a group.
- Members
- Update MR approval settings for a group
- Updates the merge request approval settings for a specified group.
- Merge request approvals
- Update a group milestone
- Updates the specified group milestone.
- Milestones
- Update notification settings for a group
- Updates the notification settings for a specified group.
- Notification settings
- Update a protected environment for a group
- Updates a specified protected environment for a group.
- Protected environments
- Update push rules of a group
- Updates the push rules for a specified group.
- Push rules
- Update group security settings
- Updates group security settings for a specified group. You must have the Security Manager, Maintainer, or Owner role for the group.
- Groups
- Update a group variable
- Updates a specified group variable. If there are multiple variables with the same key, use `filter` to select the correct `environment_scope`.
- CI variables
- Update a wiki page meta note
- Updates an existing note for a wiki page meta.
- Notes
- Update a wiki page for a group
- Updates a specified wiki page for a group.
- Wikis
- Update a system hook
- Updates a specified system hook.
- Hooks
- Update a custom header
- Updates a custom header for a specified webhook.
- Hooks
- Update a URL variable
- Updates a URL variable for a specified webhook.
- Hooks
- Update the GitLab for Jira (Forge) installation instance URL
- Sets the GitLab instance the installation points at. Omit instance_url (or send null) for GitLab.com. Requires a Jira site or organization admin.
- Jira forge installation
- Update a job
- Update a job
- Jobs
- Trigger recalculation of billable users
- Triggers recalculation of billable users for a specified license.
- Licenses
- Update a namespace
- Deprecated in 17.8
- Namespaces
- Update the subscription for the namespace
- Deprecated in GitLab 17.7
- GitLab subscriptions
- Update the add-on purchase for the namespace
- Deprecated in GitLab 17.7
- Add on purchases
- Update global notification settings
- Updates notification settings and email address.
- Notification settings
- Upload a recipe file
- Uploads a specified recipe file to the package registry. You must use the upload URL returned from the recipe upload URLs endpoint.
- Packages: Conan
- Workhorse authorize the Conan recipe file
- Authorizes the Conan recipe file.
- Packages: Conan
- Upload a package file
- Uploads a specified package file to the package registry. You must use the upload URL returned from the package upload URLs endpoint.
- Packages: Conan
- Workhorse authorize the Conan package file
- Authorizes the Conan package file.
- Packages: Conan
- Update a project
- Updates an existing project. If your HTTP repository is not publicly accessible, add authentication information to the URL `https://username:password@gitlab.company.com/group/project.git`, where `password` is a public access key with the `api` scope.
- Projects
- Approve an access request
- Approves an access request for a specified user in a project.
- Access requests
- Update a metric image
- Updates a specified metric image for an alert.
- Alert management
- Update an approval rule for a project
- Updates a specified approval rule for a project. This endpoint removes any approvers and groups not defined in the `group_ids`, `user_ids`, or `usernames` attributes. Hidden groups (private groups the user does not have permission to view) that are not in the `users` or `groups` parameters are preserved by default. To remove them, set `remove_hidden_groups` to `true`. This ensures hidden groups are not removed unintentionally when a user updates an approval rule.
- Approval rules
- Update approval rule
- Private API subject to change
- Approval rules
- Update a badge for a project
- Updates a specified badge for a project.
- Badges
- Update an issue board
- Updates a specified issue board in a project.
- Boards
- Update position of a board list
- Updates the position of a specified list from an issue board.
- Boards
- Update a cluster in a project
- Updates a cluster in a specified project.
- Clusters
- Creates or updates a custom attribute for a project
- Creates or updates a custom attribute for a specified project. If the attribute already exists, it is updated, otherwise a new attribute is created.
- Custom attributes
- Update a Debian project distribution
- Updates a specified Debian project distribution for a project.
- Packages: Debian
- Update a deploy key
- Updates a deploy key for a project.
- Deploy resources
- Update a deployment
- Updates a specified deployment.
- Deploy resources
- Update an existing environment
- Updates an existing environment for a project.
- Environments
- Create Error Tracking settings for a project
- Creates Error Tracking settings for a specified project. You must have the Maintainer or Owner role for the project.
- Error tracking
- Update external status check service
- Updates an existing external status check for a project.
- External status checks
- Update a feature flag
- Updates a specified feature flag.
- Feature flags
- Update a feature flag user list
- Updates a specified feature flag user list.
- Feature flags
- Update a freeze period
- Updates a freeze period for a specified `freeze_period_id`. You must have the Maintainer or Owner role for the project.
- Freeze periods
- Update a project webhook
- Updates a specified webhook for a project.
- Hooks
- Update a custom header
- Updates a custom header for a specified webhook.
- Hooks
- Update a URL variable
- Updates a URL variable for a specified webhook.
- Hooks
- Create or update the Apple App Store integration
- Creates or updates the Apple App Store integration.
- Integrations
- Create or update the Asana integration
- Creates or updates the Asana integration.
- Integrations
- Create or update the Assembla integration
- Creates or updates the Assembla integration.
- Integrations
- Create or update the Bamboo integration
- Creates or updates the Bamboo integration.
- Integrations
- Create or update the Bugzilla integration
- Creates or updates the Bugzilla integration.
- Integrations
- Create or update the Buildkite integration
- Creates or updates the Buildkite integration.
- Integrations
- Create or update the Campfire integration
- Creates or updates the Campfire integration.
- Integrations
- Create or update the Clickup integration
- Creates or updates the Clickup integration.
- Integrations
- Create or update the Confluence integration
- Creates or updates the Confluence integration.
- Integrations
- Create or update the Custom Issue Tracker integration
- Creates or updates the Custom Issue Tracker integration.
- Integrations
- Create or update the Datadog integration
- Creates or updates the Datadog integration.
- Integrations
- Create or update the Diffblue Cover integration
- Creates or updates the Diffblue Cover integration.
- Integrations
- Create or update the Discord integration
- Creates or updates the Discord integration.
- Integrations
- Create or update the Drone Ci integration
- Creates or updates the Drone Ci integration.
- Integrations
- Create or update the Emails On Push integration
- Creates or updates the Emails On Push integration.
- Integrations
- Create or update the Ewm integration
- Creates or updates the Ewm integration.
- Integrations
- Create or update the External Wiki integration
- Creates or updates the External Wiki integration.
- Integrations
- Create or update the Git Guardian integration
- Creates or updates the Git Guardian integration.
- Integrations
- Create or update the Github integration
- Creates or updates the Github integration.
- Integrations
- Create or update the Gitlab Slack Application integration
- Creates or updates the Gitlab Slack Application integration.
- Integrations
- Create or update the Google Cloud Platform Artifact Registry integration
- Creates or updates the Google Cloud Platform Artifact Registry integration.
- Integrations
- Create or update the Google Cloud Platform Workload Identity Federation integration
- Creates or updates the Google Cloud Platform Workload Identity Federation integration.
- Integrations
- Create or update the Google Play integration
- Creates or updates the Google Play integration.
- Integrations
- Create or update the Hangouts Chat integration
- Creates or updates the Hangouts Chat integration.
- Integrations
- Create or update the Harbor integration
- Creates or updates the Harbor integration.
- Integrations
- Create or update the Irker integration
- Creates or updates the Irker integration.
- Integrations
- Create or update the Jenkins integration
- Creates or updates the Jenkins integration.
- Integrations
- Create or update the Jira integration
- Creates or updates the Jira integration.
- Integrations
- Create or update the Jira Cloud App integration
- Creates or updates the Jira Cloud App integration.
- Integrations
- Create or update the Linear integration
- Creates or updates the Linear integration.
- Integrations
- Create or update the Matrix integration
- Creates or updates the Matrix integration.
- Integrations
- Create or update the Mattermost integration
- Creates or updates the Mattermost integration.
- Integrations
- Create or update the Mattermost Slash Commands integration
- Creates or updates the Mattermost Slash Commands integration.
- Integrations
- Create or update the Microsoft Teams integration
- Creates or updates the Microsoft Teams integration.
- Integrations
- Create or update the Mock Ci integration
- Creates or updates the Mock Ci integration.
- Integrations
- Create or update the Mock Monitoring integration
- Creates or updates the Mock Monitoring integration.
- Integrations
- Create or update the Packagist integration
- Creates or updates the Packagist integration.
- Integrations
- Create or update the Phorge integration
- Creates or updates the Phorge integration.
- Integrations
- Create or update the Pipelines Email integration
- Creates or updates the Pipelines Email integration.
- Integrations
- Create or update the Pivotaltracker integration
- Creates or updates the Pivotaltracker integration.
- Integrations
- Create or update the Pumble integration
- Creates or updates the Pumble integration.
- Integrations
- Create or update the Pushover integration
- Creates or updates the Pushover integration.
- Integrations
- Create or update the Redmine integration
- Creates or updates the Redmine integration.
- Integrations
- Create or update the Slack integration
- Creates or updates the Slack integration.
- Integrations
- Create or update the Squash Tm integration
- Creates or updates the Squash Tm integration.
- Integrations
- Create or update the Teamcity integration
- Creates or updates the Teamcity integration.
- Integrations
- Create or update the Telegram integration
- Creates or updates the Telegram integration.
- Integrations
- Create or update the Unify Circuit integration
- Creates or updates the Unify Circuit integration.
- Integrations
- Create or update the Webex Teams integration
- Creates or updates the Webex Teams integration.
- Integrations
- Create or update the Youtrack integration
- Creates or updates the Youtrack integration.
- Integrations
- Create or update the Zentao integration
- Creates or updates the Zentao integration.
- Integrations
- Update an invitation to a project
- Updates a pending invitation to a project.
- Invitations
- Update an issue
- Updates a specified issue for a project. This request is also used to close or reopen an issue using the `state_event` parameter. At least one of the following parameters is required for the request to be successful: `assignee_id`, `assignee_ids`, `confidential`, `created_at`, `description`, `discussion_locked`, `due_date`, `issue_type`, `labels`, `milestone_id`, `state_event`, `title`.
- Projects
- Update a metric image for an incident
- Updates a metric image for an incident.
- Metric images
- Update the order of an issue
- Updates the order of a specified issue in a project. You can see the results when sorting issues manually.
- Projects
- Resolve or unresolve an issue discussion
- Resolves or unresolves a specified issue discussion.
- Discussions
- Update a comment in an issue discussion
- Updates or changes the status of a specified comment in a issue discussion.
- Discussions
- Update an issue note
- Updates an existing note for an issue.
- Notes
- Update an existing label. At least one optional parameter is required.
- Deprecated in GitLab 12.4. Use PUT /projects/:id/labels/:name instead.
- Labels
- Update a project label
- Updates a specified label for a project with a different name or color. At least one parameter is required to update the label.
- Labels
- Promote a project label to a group label
- Promotes a specified project label to a group label. The label keeps its ID.
- Labels
- Promote a label to a group label
- Added in GitLab 12.3 and deprecated in GitLab 12.4. Use PUT /projects/:id/labels/:name/promote instead.
- Labels
- Update a project member
- Updates a specified member of a project.
- Members
- Update MR approval settings for a project
- Updates the merge request approval settings for a specified project.
- Merge request approvals
- Update a merge request
- Updates a merge request for a specified project.
- Merge requests
- Update an approval rule for a merge request
- Updates a specified approval rule for a merge request. This endpoint removes any approvers and groups not included in the `group_ids`, `user_ids`, or `usernames` attributes. The `report_approver` or `code_owner` rules are system-generated, and you cannot edit them.
- Merge request approvals
- Update a draft note
- Updates a draft note for a specified merge request.
- Draft notes
- Publish a draft note
- Publishes a draft note for a specified merge request.
- Draft notes
- Merge a merge request
- Merges a merge request. Accepts and merges changes submitted with the merge request.
- Merge requests
- Rebase a merge request
- Rebases a merge request. Automatically rebases the `source_branch` of the merge request against its `target_branch`.
- Merge requests
- Reset approvals for a merge request
- Resets all approvals for a specified merge request. Available only to bot users with a valid project or group token. Human users receive a `401 Unauthorized` response.
- Merge request approvals
- Resolve or unresolve a merge request discussion
- Resolves or unresolves a specified merge request discussion.
- Discussions
- Update a comment in a merge request discussion
- Updates or changes the status of a specified comment in a merge request discussion.
- Discussions
- Update a merge request note
- Updates an existing note for a merge request.
- Notes
- Update a project milestone
- Updates a specified project milestone.
- Milestones
- Update project pull mirroring settings
- Updates pull mirroring settings for a specified project. This feature was introduced in GitLab 17.5.
- Project mirrors
- Update notification settings for a project
- Updates the notification settings for a specified project.
- Notification settings
- Upload a recipe file
- Uploads a specified recipe file to the package registry. You must use the upload URL returned from the recipe upload URLs endpoint.
- Packages: Conan
- Workhorse authorize the Conan recipe file
- Authorizes the Conan recipe file.
- Packages: Conan
- Upload a package file
- Uploads a specified package file to the package registry. You must use the upload URL returned from the package upload URLs endpoint.
- Packages: Conan
- Workhorse authorize the Conan package file
- Authorizes the Conan package file.
- Packages: Conan
- Upload a recipe file
- Uploads a specified recipe file to the package registry. This feature was introduced in GitLab 17.10.
- Packages: Conan
- Workhorse authorize the Conan recipe file
- Authorizes the Conan recipe file. This feature was introduced in GitLab 17.10.
- Packages: Conan
- Upload a package file
- Uploads a specified package file to the package registry. This feature was introduced in GitLab 17.11.
- Packages: Conan
- Workhorse authorize the Conan package file
- Authorizes the Conan package file. This feature was introduced in GitLab 17.11.
- Packages: Conan
- Upload a Debian package file
- Uploads a Debian package file for a specified project.
- Packages: Debian
- Authorize Debian package upload
- This feature was introduced in GitLab 13.5
- Packages: Debian
- Create or deprecate an NPM package
- Creates or deprecates an NPM package for a specified project. Deprecate support was added in GitLab 16.0.
- Packages: NPM
- Upload a NuGet v3 package file for a project
- Uploads a NuGet v3 package file for a specified project.
- Packages: NuGet
- The NuGet Package Authorize endpoint
- This feature was introduced in GitLab 14.1
- Packages: NuGet
- Upload a NuGet symbol package file
- Uploads a specified NuGet symbol package file (`.snupkg`) for a project.
- Packages: NuGet
- The NuGet Symbol Package Authorize endpoint
- This feature was introduced in GitLab 14.1
- Packages: NuGet
- Upload a NuGet v2 package file for a project
- Uploads a NuGet v2 package file for a specified project.
- Packages: NuGet
- The NuGet V2 Feed Package Authorize endpoint
- This feature was introduced in GitLab 16.2
- Packages: NuGet
- Update Pages domain
- Updates a specified Pages domain in a project. You must have permissions to change an existing Pages domain.
- GitLab Pages
- Verify Pages domain
- Verifies a specified Pages domain in a project. You must have permissions to update Pages domains.
- GitLab Pages
- Update a pipeline schedule
- Updates a pipeline schedule for a project. After the update is done, it is rescheduled automatically.
- Pipeline schedules
- Update a variable for a pipeline schedule
- Updates a variable for a pipeline schedule.
- Pipeline schedules
- Update pipeline metadata
- Updates pipeline metadata. The metadata contains the name of the pipeline. This feature was introduced in GitLab 16.6.
- Pipelines
- Update a protected environment for a project
- Updates a specified protected environment for a project.
- Protected environments
- Update push rules of a project
- Updates the push rules for a specified project.
- Push rules
- Update a release
- Updates a release. Developer level access to the project is required to update a release.
- Releases
- Update a release link
- Updates a specified asset link for a release.
- Releases
- Update a remote mirror in a project
- Updates the configuration or operational status of a specified remote mirror.
- Remote mirrors
- Protect a single branch
- Protect a single branch
- Branches
- Unprotect a single branch
- Unprotect a single branch
- Branches
- Update a comment in a commit discussion
- Updates or changes the status of a specified comment in a commit discussion.
- Discussions
- Update a file in a repository
- Updates a specified file in a repository. Use the Commits API to update multiple files with a single request.
- Files
- Update a submodule reference
- Updates a reference for a specified submodule.
- Submodules
- Update a resource group
- Updates the properties for a specified resource group. It returns `200` if the resource group was successfully updated. In case of an error, a status code `400` is returned.
- CI resource groups
- Update project security settings
- Updates project security settings for a specified project. You must have the Maintainer or Owner role for the project.
- Projects
- Create or update the Apple App Store integration
- Creates or updates the Apple App Store integration.
- Integrations
- Create or update the Asana integration
- Creates or updates the Asana integration.
- Integrations
- Create or update the Assembla integration
- Creates or updates the Assembla integration.
- Integrations
- Create or update the Bamboo integration
- Creates or updates the Bamboo integration.
- Integrations
- Create or update the Bugzilla integration
- Creates or updates the Bugzilla integration.
- Integrations
- Create or update the Buildkite integration
- Creates or updates the Buildkite integration.
- Integrations
- Create or update the Campfire integration
- Creates or updates the Campfire integration.
- Integrations
- Create or update the Clickup integration
- Creates or updates the Clickup integration.
- Integrations
- Create or update the Confluence integration
- Creates or updates the Confluence integration.
- Integrations
- Create or update the Custom Issue Tracker integration
- Creates or updates the Custom Issue Tracker integration.
- Integrations
- Create or update the Datadog integration
- Creates or updates the Datadog integration.
- Integrations
- Create or update the Diffblue Cover integration
- Creates or updates the Diffblue Cover integration.
- Integrations
- Create or update the Discord integration
- Creates or updates the Discord integration.
- Integrations
- Create or update the Drone Ci integration
- Creates or updates the Drone Ci integration.
- Integrations
- Create or update the Emails On Push integration
- Creates or updates the Emails On Push integration.
- Integrations
- Create or update the Ewm integration
- Creates or updates the Ewm integration.
- Integrations
- Create or update the External Wiki integration
- Creates or updates the External Wiki integration.
- Integrations
- Create or update the Git Guardian integration
- Creates or updates the Git Guardian integration.
- Integrations
- Create or update the Github integration
- Creates or updates the Github integration.
- Integrations
- Create or update the Gitlab Slack Application integration
- Creates or updates the Gitlab Slack Application integration.
- Integrations
- Create or update the Google Cloud Platform Artifact Registry integration
- Creates or updates the Google Cloud Platform Artifact Registry integration.
- Integrations
- Create or update the Google Cloud Platform Workload Identity Federation integration
- Creates or updates the Google Cloud Platform Workload Identity Federation integration.
- Integrations
- Create or update the Google Play integration
- Creates or updates the Google Play integration.
- Integrations
- Create or update the Hangouts Chat integration
- Creates or updates the Hangouts Chat integration.
- Integrations
- Create or update the Harbor integration
- Creates or updates the Harbor integration.
- Integrations
- Create or update the Irker integration
- Creates or updates the Irker integration.
- Integrations
- Create or update the Jenkins integration
- Creates or updates the Jenkins integration.
- Integrations
- Create or update the Jira integration
- Creates or updates the Jira integration.
- Integrations
- Create or update the Jira Cloud App integration
- Creates or updates the Jira Cloud App integration.
- Integrations
- Create or update the Linear integration
- Creates or updates the Linear integration.
- Integrations
- Create or update the Matrix integration
- Creates or updates the Matrix integration.
- Integrations
- Create or update the Mattermost integration
- Creates or updates the Mattermost integration.
- Integrations
- Create or update the Mattermost Slash Commands integration
- Creates or updates the Mattermost Slash Commands integration.
- Integrations
- Create or update the Microsoft Teams integration
- Creates or updates the Microsoft Teams integration.
- Integrations
- Create or update the Mock Ci integration
- Creates or updates the Mock Ci integration.
- Integrations
- Create or update the Mock Monitoring integration
- Creates or updates the Mock Monitoring integration.
- Integrations
- Create or update the Packagist integration
- Creates or updates the Packagist integration.
- Integrations
- Create or update the Phorge integration
- Creates or updates the Phorge integration.
- Integrations
- Create or update the Pipelines Email integration
- Creates or updates the Pipelines Email integration.
- Integrations
- Create or update the Pivotaltracker integration
- Creates or updates the Pivotaltracker integration.
- Integrations
- Create or update the Pumble integration
- Creates or updates the Pumble integration.
- Integrations
- Create or update the Pushover integration
- Creates or updates the Pushover integration.
- Integrations
- Create or update the Redmine integration
- Creates or updates the Redmine integration.
- Integrations
- Create or update the Slack integration
- Creates or updates the Slack integration.
- Integrations
- Create or update the Squash Tm integration
- Creates or updates the Squash Tm integration.
- Integrations
- Create or update the Teamcity integration
- Creates or updates the Teamcity integration.
- Integrations
- Create or update the Telegram integration
- Creates or updates the Telegram integration.
- Integrations
- Create or update the Unify Circuit integration
- Creates or updates the Unify Circuit integration.
- Integrations
- Create or update the Webex Teams integration
- Creates or updates the Webex Teams integration.
- Integrations
- Create or update the Youtrack integration
- Creates or updates the Youtrack integration.
- Integrations
- Create or update the Zentao integration
- Creates or updates the Zentao integration.
- Integrations
- Update a comment in a snippet discussion
- Updates or changes the status of a specified comment in a snippet discussion.
- Discussions
- Update a snippet note
- Updates an existing note for a snippet.
- Notes
- Update a project snippet
- Updates a specified project snippet. The user must have permission to modify snippets. Updates to snippets with multiple files must use the `files` attribute.
- Snippets
- Transfer a project to another namespace
- Transfers a project to another namespace.
- Projects
- Update a pipeline trigger token
- Updates a pipeline trigger token for a project.
- CI triggers
- Update a variable
- Updates a project variable. If there are multiple variables with the same key, use `filter` to select the correct `environment_scope`.
- CI variables
- Update a vulnerability note
- Updates an existing note for a vulnerability.
- Notes
- Update a wiki page meta note
- Updates an existing note for a wiki page meta.
- Notes
- Update a wiki page for a project
- Updates a specified wiki page for a project.
- Wikis
- Update a runner controller
- Updates the details of an existing runner controller by its ID.
- Runner controllers
- Update a runner
- Updates a specified runner.
- Runners
- Update snippet
- Updates a specified snippet.
- Snippets
- Apply multiple suggestions to a merge request
- Applies multiple suggested patches in a merge request. You must have the Developer, Maintainer, or Owner role.
- Suggestions
- Apply a suggestion to a merge request
- Applies a suggested patch in a merge request. You must have the Developer, Maintainer, or Owner role.
- Suggestions
- Update a project topic
- Updates a specified project topic. Administrators only.
- Project topics
- Update an application
- Updates an existing application owned by the authenticated user.
- Applications
- Upload an avatar
- Uploads an avatar for the currently authenticated user. This feature was introduced in GitLab 17.0.
- Avatars
- Update your user preferences
- Updates your user preferences.
- Users
- Set a user status
- Sets the status of the currently authenticated user. Any parameters that are not passed are nullified. This operation is similar but distinct from the Update a user status operation.
- Users
- Update a user's credit_card_validation
- Deprecated in 17.7
- Users
- Update a user
- Updates the details of a specified user.
- Users
- Creates or updates a custom attribute for a user
- Creates or updates a custom attribute for a specified user. If the attribute already exists, it is updated, otherwise a new attribute is created.
- Custom attributes
GitLab integration, answered
- How do AI agents use GitLab through Open Connector?
- Your user connects GitLab once with one of its cataloged authentication methods. Open Connector stores the credential in an encrypted vault and exposes GitLab tools to your agent over MCP or a typed API, with credentials injected server-side on each call.
- Is this a GitLab MCP server?
- Yes. Open Connector can serve GitLab as a named MCP server with a scoped allowlist and a per-user connection URL, so any MCP client can call GitLab actions with credentials injected server-side.
- Where do GitLab credentials live?
- In your own infrastructure. Open Connector keeps credentials in its own vault and injects them at call time, so they never leave your environment.
Give your agents GitLab — keep the keys.
Open source, self-hostable, with GitLab credentials that never leave your infrastructure. Run it from source today.