Plan limits API

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

Use this API to interact with the application limits for your existing subscription plan.

The existing plans depend on the GitLab edition. In the Community Edition, only the plan default is available. In the Enterprise Edition, additional plans are available as well.

Prerequisites:

  • You must have administrator access to the instance.

Get current plan limits

List the current limits of a plan on the GitLab instance.

GET /application/plan_limits
AttributeTypeRequiredDescription
plan_namestringnoName of the plan to get the limits from. Default: default.
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/application/plan_limits"

Example response:

{
  "ci_instance_level_variables": 25,
  "ci_pipeline_size": 0,
  "ci_active_jobs": 0,
  "ci_project_subscriptions": 2,
  "ci_pipeline_schedules": 10,
  "ci_needs_size_limit": 50,
  "ci_registered_group_runners": 1000,
  "ci_registered_project_runners": 1000,
  "dotenv_size": 5120,
  "dotenv_variables": 20,
  "conan_max_file_size": 3221225472,
  "enforcement_limit": 10000,
  "generic_packages_max_file_size": 5368709120,
  "helm_max_file_size": 5242880,
  "notification_limit": 10000,
  "maven_max_file_size": 3221225472,
  "npm_max_file_size": 524288000,
  "nuget_max_file_size": 524288000,
  "pypi_max_file_size": 3221225472,
  "terraform_module_max_file_size": 1073741824,
  "storage_size_limit": 15000
}

Change plan limits

Modify the limits of a plan on the GitLab instance.

PUT /application/plan_limits
AttributeTypeRequiredDescription
plan_namestringyesName of the plan to update.
ci_instance_level_variablesintegernoMaximum number of Instance-level CI/CD variables that can be defined.
ci_pipeline_sizeintegernoMaximum number of jobs in a single pipeline. Introduced in GitLab 15.0.
ci_active_jobsintegernoTotal number of jobs in currently active pipelines. Introduced in GitLab 15.0.
ci_project_subscriptionsintegernoMaximum number of pipeline subscriptions to and from a project. Introduced in GitLab 15.0.
ci_pipeline_schedulesintegernoMaximum number of pipeline schedules. Introduced in GitLab 15.0.
ci_needs_size_limitintegernoMaximum number of needs dependencies that a job can have. Introduced in GitLab 15.0.
ci_registered_group_runnersintegernoMaximum number of runners created or active in a group during the past seven days. Introduced in GitLab 15.0.
ci_registered_project_runnersintegernoMaximum number of runners created or active in a project during the past seven days. Introduced in GitLab 15.0.
dotenv_sizeintegernoMaximum size of a dotenv artifact in bytes. Introduced in GitLab 17.1.
dotenv_variablesintegernoMaximum number of variables in a dotenv artifact. Introduced in GitLab 17.1.
conan_max_file_sizeintegernoMaximum Conan package file size in bytes.
enforcement_limitintegernoMaximum storage size for root namespace limit enforcement in MiB.
generic_packages_max_file_sizeintegernoMaximum generic package file size in bytes.
helm_max_file_sizeintegernoMaximum Helm chart file size in bytes.
maven_max_file_sizeintegernoMaximum Maven package file size in bytes.
notification_limitintegernoMaximum storage size for root namespace limit notifications in MiB.
npm_max_file_sizeintegernoMaximum NPM package file size in bytes.
nuget_max_file_sizeintegernoMaximum NuGet package file size in bytes.
pypi_max_file_sizeintegernoMaximum PyPI package file size in bytes.
terraform_module_max_file_sizeintegernoMaximum Terraform Module package file size in bytes.
storage_size_limitintegernoMaximum storage size for the root namespace in MiB.
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/application/plan_limits?plan_name=default&conan_max_file_size=3221225472"

Example response:

{
  "ci_instance_level_variables": 25,
  "ci_pipeline_size": 0,
  "ci_active_jobs": 0,
  "ci_project_subscriptions": 2,
  "ci_pipeline_schedules": 10,
  "ci_needs_size_limit": 50,
  "ci_registered_group_runners": 1000,
  "ci_registered_project_runners": 1000,
  "conan_max_file_size": 3221225472,
  "dotenv_variables": 20,
  "dotenv_size": 5120,
  "generic_packages_max_file_size": 5368709120,
  "helm_max_file_size": 5242880,
  "maven_max_file_size": 3221225472,
  "npm_max_file_size": 524288000,
  "nuget_max_file_size": 524288000,
  "pypi_max_file_size": 3221225472,
  "terraform_module_max_file_size": 1073741824
}