REST API resources

  • Tier: Free, Premium, Ultimate
  • Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated

The GitLab REST API provides HTTP endpoints to control and interact with GitLab resources and features programmatically. The REST API resources are organized into:

Project resources

The following API resources are available in the project context:

ResourceAvailable endpoints
Access requests/projects/:id/access_requests (also available for groups)
Access tokens/projects/:id/access_tokens (also available for groups)
Agents/projects/:id/cluster_agents
Branches/projects/:id/repository/branches/, /projects/:id/repository/merged_branches
Commits/projects/:id/repository/commits, /projects/:id/statuses
Container registry/projects/:id/registry/repositories
Container repository protection rules/projects/:id/registry/protection/repository/rules
Custom attributes/projects/:id/custom_attributes (also available for groups and users)
Composer distributions/projects/:id/packages/composer (also available for groups)
Conan distributions/projects/:id/packages/conan (also available standalone)
Debian distributions/projects/:id/debian_distributions (also available for groups)
Debian packages/projects/:id/packages/debian (also available for groups)
Dependencies/projects/:id/dependencies
Deploy keys/projects/:id/deploy_keys (also available standalone)
Deploy tokens/projects/:id/deploy_tokens (also available for groups and standalone)
Deployments/projects/:id/deployments
Discussions (threaded comments)/projects/:id/issues/.../discussions, /projects/:id/snippets/.../discussions, /projects/:id/merge_requests/.../discussions, /projects/:id/commits/.../discussions (also available for groups)
Draft Notes (comments)/projects/:id/merge_requests/.../draft_notes
Emoji reactions/projects/:id/issues/.../award_emoji, /projects/:id/merge_requests/.../award_emoji, /projects/:id/snippets/.../award_emoji
Environments/projects/:id/environments
Error Tracking/projects/:id/error_tracking/settings
Events/projects/:id/events (also available for users and standalone)
External status checks/projects/:id/external_status_checks
Feature flag User Lists/projects/:id/feature_flags_user_lists
Feature flags/projects/:id/feature_flags
Freeze Periods/projects/:id/freeze_periods
Go Proxy/projects/:id/packages/go
Helm repository/projects/:id/packages/helm_repository
Integrations (Formerly “services”)/projects/:id/integrations
Invitations/projects/:id/invitations (also available for groups)
Issue boards/projects/:id/boards
Issue links/projects/:id/issues/.../links
Issues Statistics/projects/:id/issues_statistics (also available for groups and standalone)
Issues/projects/:id/issues (also available for groups and standalone)
Iterations/projects/:id/iterations (also available for groups)
Project CI/CD job token scope/projects/:id/job_token_scope
Jobs/projects/:id/jobs, /projects/:id/pipelines/.../jobs
Jobs Artifacts/projects/:id/jobs/:job_id/artifacts
Labels/projects/:id/labels
Maven repository/projects/:id/packages/maven (also available for groups and standalone)
Members/projects/:id/members (also available for groups)
Merge request approvals/projects/:id/approvals, /projects/:id/merge_requests/.../approvals
Merge requests/projects/:id/merge_requests (also available for groups and standalone)
Merge trains/projects/:id/merge_trains
Metadata/metadata
Model registry/projects/:id/packages/ml_models/
Notes (comments)/projects/:id/issues/.../notes, /projects/:id/snippets/.../notes, /projects/:id/merge_requests/.../notes (also available for groups)
Notification settings/projects/:id/notification_settings (also available for groups and standalone)
NPM repository/projects/:id/packages/npm
NuGet packages/projects/:id/packages/nuget (also available for groups)
Packages/projects/:id/packages
Pages domains/projects/:id/pages/domains (also available standalone)
Pages settings/projects/:id/pages
Pipeline schedules/projects/:id/pipeline_schedules
Pipeline triggers/projects/:id/triggers
Pipelines/projects/:id/pipelines
Project badges/projects/:id/badges
Project clusters/projects/:id/clusters
Project import/export/projects/:id/export, /projects/import, /projects/:id/import
Project milestones/projects/:id/milestones
Project snippets/projects/:id/snippets
Project templates/projects/:id/templates
Project vulnerabilities./projects/:id/vulnerabilities
Project wikis/projects/:id/wikis
Project-level variables/projects/:id/variables
Projects including setting Webhooks/projects, /projects/:id/hooks (also available for users)
Protected branches/projects/:id/protected_branches
Protected container registry/projects/:id/registry/protection/rules
Protected environments/projects/:id/protected_environments
Protected packages/projects/:id/packages/protection/rules
Protected tags/projects/:id/protected_tags
PyPI packages/projects/:id/packages/pypi (also available for groups)
Release links/projects/:id/releases/.../assets/links
Releases/projects/:id/releases
Remote mirrors/projects/:id/remote_mirrors
Repositories/projects/:id/repository
Repository files/projects/:id/repository/files
Repository submodules/projects/:id/repository/submodules
Resource label events/projects/:id/issues/.../resource_label_events, /projects/:id/merge_requests/.../resource_label_events (also available for groups)
Ruby gems/projects/:id/packages/rubygems
Runners/projects/:id/runners (also available standalone)
Search/projects/:id/search (also available for groups and standalone)
Tags/projects/:id/repository/tags
Terraform modules/projects/:id/packages/terraform/modules (also available standalone)
Validate .gitlab-ci.yml file/projects/:id/ci/lint
Vulnerabilities/vulnerabilities/:id
Vulnerability exports/projects/:id/vulnerability_exports
Vulnerability findings/projects/:id/vulnerability_findings

Group resources

The following API resources are available in the group context:

ResourceAvailable endpoints
Access requests/groups/:id/access_requests/ (also available for projects)
Access tokens/groups/:id/access_tokens (also available for projects)
Custom attributes/groups/:id/custom_attributes (also available for projects and users)
Debian distributions/groups/:id/-/packages/debian (also available for projects)
Deploy tokens/groups/:id/deploy_tokens (also available for projects and standalone)
Discussions (comments and threads)/groups/:id/epics/.../discussions (also available for projects)
Epic issues/groups/:id/epics/.../issues
Epic links/groups/:id/epics/.../epics
Epics/groups/:id/epics
Groups/groups, /groups/.../subgroups
Group badges/groups/:id/badges
Group issue boards/groups/:id/boards
Group iterations/groups/:id/iterations (also available for projects)
Group labels/groups/:id/labels
Group-level variables/groups/:id/variables
Group milestones/groups/:id/milestones
Group releases/groups/:id/releases
Group SSH certificates/groups/:id/ssh_certificates
Group wikis/groups/:id/wikis
Invitations/groups/:id/invitations (also available for projects)
Issues/groups/:id/issues (also available for projects and standalone)
Issues Statistics/groups/:id/issues_statistics (also available for projects and standalone)
Linked epics/groups/:id/epics/.../related_epics
Member Roles/groups/:id/member_roles
Members/groups/:id/members (also available for projects)
Merge requests/groups/:id/merge_requests (also available for projects and standalone)
Notes (comments)/groups/:id/epics/.../notes (also available for projects)
Notification settings/groups/:id/notification_settings (also available for projects and standalone)
Resource label events/groups/:id/epics/.../resource_label_events (also available for projects)
Search/groups/:id/search (also available for projects and standalone)

Standalone resources

The following API resources are available outside of project and group contexts (including /users):

ResourceAvailable endpoints
Appearance/application/appearance
Applications/applications
Audit events/audit_events
Avatar/avatar
Broadcast messages/broadcast_messages
Code snippets/snippets
Code Suggestions/code_suggestions
Custom attributes/users/:id/custom_attributes (also available for groups and projects)
Dependency list exports/pipelines/:id/dependency_list_exports, /projects/:id/dependency_list_exports, /groups/:id/dependency_list_exports, /security/dependency_list_exports/:id, /security/dependency_list_exports/:id/download
Deploy keys/deploy_keys (also available for projects)
Deploy tokens/deploy_tokens (also available for projects and groups)
Events/events, /users/:id/events (also available for projects)
Feature flags/features
Geo Nodes/geo_nodes
Group Activity Analytics/analytics/group_activity/{issues_count}
Group repository storage moves/group_repository_storage_moves
Import repository from GitHub/import/github
Import repository from Bitbucket Server/import/bitbucket_server
Instance clusters/admin/clusters
Instance-level CI/CD variables/admin/ci/variables
Issues Statistics/issues_statistics (also available for groups and projects)
Issues/issues (also available for groups and projects)
Jobs/job
Keys/keys
License/license
Markdown/markdown
Merge requests/merge_requests (also available for groups and projects)
Namespaces/namespaces
Notification settings/notification_settings (also available for groups and projects)
Pages domains/pages/domains (also available for projects)
Personal access tokens/personal_access_tokens
Plan limits/application/plan_limits
Project repository storage moves/project_repository_storage_moves
Projects/users/:id/projects (also available for projects)
Runners/runners (also available for projects)
Search/search (also available for groups and projects)
Service Data/usage_data (For GitLab instance Administrator users only)
Settings/application/settings
Sidekiq metrics/sidekiq
Sidekiq queues administration/admin/sidekiq/queues/:queue_name
Snippet repository storage moves/snippet_repository_storage_moves
Statistics/application/statistics
Suggestions/suggestions
System hooks/hooks
To-dos/todos
Token information/admin/token
Topics/topics
Users/users
Web commits/web_commits/public_key
Version/version

Template resources

Endpoints are available for: