diff --git a/.gitlab/ci/rules.gitlab-ci.yml b/.gitlab/ci/rules.gitlab-ci.yml
index 834e97e9eb0..5ac339bdce0 100644
--- a/.gitlab/ci/rules.gitlab-ci.yml
+++ b/.gitlab/ci/rules.gitlab-ci.yml
@@ -213,7 +213,7 @@
if: '$CI_PROJECT_PATH == "gitlab-org/gitlab-foss" && $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH'
.if-not-dot-com-gitlab-org-and-not-jihulab: &if-not-dot-com-gitlab-org-and-not-jihulab
- if: '($CI_SERVER_HOST != "gitlab.com" || $CI_PROJECT_ROOT_NAMESPACE != "gitlab-org") && ($CI_SERVER_HOST != "jihulab.com" || $CI_PROJECT_NAMESPACE != "gitlab-cn")'
+ if: '($CI_SERVER_HOST != "gitlab.com" || $CI_PROJECT_NAMESPACE != "gitlab-org") && ($CI_SERVER_HOST != "jihulab.com" || $CI_PROJECT_NAMESPACE != "gitlab-cn")'
.if-dot-com-gitlab-org-schedule: &if-dot-com-gitlab-org-schedule
if: '$CI_SERVER_HOST == "gitlab.com" && $CI_PROJECT_NAMESPACE == "gitlab-org" && $CI_PIPELINE_SOURCE == "schedule"'
diff --git a/CHANGELOG.md b/CHANGELOG.md
index c554cb6d832..be9a9182f9f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,30 @@
documentation](doc/development/changelog.md) for instructions on adding your own
entry.
+## 18.1.2 (2025-07-09)
+
+### Fixed (5 changes)
+
+- [Rake Doctor Secrets: Fix WebHook error](https://gitlab.com/gitlab-org/security/gitlab/-/commit/ce02068cccff230ffbef2f88b169902fe7f43bbf)
+- [Fix title on empty projects](https://gitlab.com/gitlab-org/security/gitlab/-/commit/3ea74609f662c78433afcfe160a028a5bbbdf2fc)
+- [Show both author and committer in last commit](https://gitlab.com/gitlab-org/security/gitlab/-/commit/52ba3c0f90dd0ebc4f6a27beab60588f091068af)
+- [Remove Sidekiq shutdown delay in ConcurrencyLimitSampler](https://gitlab.com/gitlab-org/security/gitlab/-/commit/03315bd4f35d87ff58220bf581158698ce163b72)
+- [Fix code owner validation for roles](https://gitlab.com/gitlab-org/security/gitlab/-/commit/e797849679b80d660a34b65f11dd7506e9fdf35b) **GitLab Enterprise Edition**
+
+### Changed (2 changes)
+
+- [Fix the owner for sequence ci_builds_id_seq](https://gitlab.com/gitlab-org/security/gitlab/-/commit/d594b6dc14fc5b2ed52f49e7d97d1a2363397185)
+- [Enable using glab for CI release](https://gitlab.com/gitlab-org/security/gitlab/-/commit/b91e1226900cbdbb1dfd53efd65c9cb2b6d2f64a)
+
+### Security (6 changes)
+
+- [Revert "Merge branch..." from 18.1](https://gitlab.com/gitlab-org/security/gitlab/-/commit/5384ab91a8eaaa1cfe253eb093277f76cde48d09) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5126))
+- [Enforces invite_group_members permission when creating group members](https://gitlab.com/gitlab-org/security/gitlab/-/commit/e3f78357e039d70c0eaf67d86f46cced28c8ce3b) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5105))
+- [Enforces invite_project_members permission when creating project members](https://gitlab.com/gitlab-org/security/gitlab/-/commit/064d8e2a0ce7a9c0191c9ec3ef7f43d1f25e8f29) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5108))
+- [Fix XSS via blob rich viewer](https://gitlab.com/gitlab-org/security/gitlab/-/commit/2cd8baa02ea37d89d2f7c67749947da520cb4ea1) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5119))
+- [Fix CI ID Token claims for forked project MR jobs](https://gitlab.com/gitlab-org/security/gitlab/-/commit/1a79ece45035eec1d5daee10f89363be089ff069) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5114))
+- [Prevent linking fork if target group disallows external forks](https://gitlab.com/gitlab-org/security/gitlab/-/commit/3ccce42e662ce3849c8dde62975e21146d6ef0fa) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5102))
+
## 18.1.1 (2025-06-24)
### Security (5 changes)
@@ -922,6 +946,28 @@ entry.
- [Change users_preferences.organization_groups_projects_display defaults](https://gitlab.com/gitlab-org/gitlab/-/commit/c0bed48fc7a755413edf1090c86a33a798771d37) ([merge request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190331))
- [Quarantine a flaky test](https://gitlab.com/gitlab-org/gitlab/-/commit/06fdc6c5fb9a7490c5fe8e6b1eb3a8b0f065f950) ([merge request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189248))
+## 18.0.4 (2025-07-09)
+
+### Fixed (8 changes)
+
+- [Fix incorrect redirect when branch doesn't include files](https://gitlab.com/gitlab-org/security/gitlab/-/commit/3e7fb0bdef7ebc8ac321646a94305eacfd93acc0)
+- [Fix title on empty projects](https://gitlab.com/gitlab-org/security/gitlab/-/commit/573d6691721b83db8122876d77397212646b251a)
+- [Show both author and committer in last commit](https://gitlab.com/gitlab-org/security/gitlab/-/commit/5c73962ffc8aab22c863062a62efc269b6dbc996)
+- [Backport "Add a spinner for a loading elipsis menu" to 18.0](https://gitlab.com/gitlab-org/security/gitlab/-/commit/c90dda26bce7b97e65c92308308b8cd77d7c7c73)
+- [Refactor blob commit info section](https://gitlab.com/gitlab-org/security/gitlab/-/commit/ee9fbe3f711dfc7b2b51c492e8f24de2253ed698)
+- [Remove Sidekiq shutdown delay in ConcurrencyLimitSampler](https://gitlab.com/gitlab-org/security/gitlab/-/commit/5c7648701f92856c839eb8d8dbf760fda8c2eac4)
+- [Fix code owner validation for roles](https://gitlab.com/gitlab-org/security/gitlab/-/commit/2512b4869c9ba658e1c35246843c42aec2ddf555) **GitLab Enterprise Edition**
+- [Fix Protected Tags show page](https://gitlab.com/gitlab-org/security/gitlab/-/commit/aca613193dbda73c149411055c1bf46fae3447b6)
+
+### Security (6 changes)
+
+- [Revert "Merge branch..." from 18.0](https://gitlab.com/gitlab-org/security/gitlab/-/commit/d6168858300ceeac41e4c824198e6a92146a205c) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5127))
+- [Enforces invite_group_members permission when creating group members](https://gitlab.com/gitlab-org/security/gitlab/-/commit/1f301202958e3cc830ffa5682ae2f852de69a11b) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5106))
+- [Enforces invite_project_members permission when creating project members](https://gitlab.com/gitlab-org/security/gitlab/-/commit/cf62ff2ceaafae0229005adc818a0a094458e128) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5109))
+- [Fix XSS via blob rich viewer](https://gitlab.com/gitlab-org/security/gitlab/-/commit/2638ec4db071db9862fad4e7d46d43cf9363d9c4) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5120))
+- [Fix CI ID Token claims for forked project MR jobs](https://gitlab.com/gitlab-org/security/gitlab/-/commit/37d0e88ffaa631795f9ef1a37294f9b2a4ff7e36) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5116))
+- [Prevent linking fork if target group disallows external forks](https://gitlab.com/gitlab-org/security/gitlab/-/commit/48d6c2e6c4022e134d3074ed3de36788ce18175e) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5103))
+
## 18.0.3 (2025-06-24)
### Fixed (1 change)
@@ -1816,6 +1862,21 @@ entry.
- [Finalize migration BackfillContainerRepositoryStatesProjectId](https://gitlab.com/gitlab-org/gitlab/-/commit/78f333c76a39d0a85938318b3be49905c19074e6) ([merge request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185869))
- [Finalize migration BackfillPackagesRpmMetadataProjectId](https://gitlab.com/gitlab-org/gitlab/-/commit/d066d88be1fff7cfcf64017124af797e085a4b4f) ([merge request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184553))
+## 17.11.6 (2025-07-09)
+
+### Fixed (3 changes)
+
+- [Fix incorrect redirect when branch doesn't include files](https://gitlab.com/gitlab-org/security/gitlab/-/commit/5261940b88db1ba0078f8d5a68f8d553022e5cb7)
+- [Fix incompatible Rails cache version from 7.1 to 6.1](https://gitlab.com/gitlab-org/security/gitlab/-/commit/91a9adeec53343019e505416607f9c4606a26aec)
+- [Fix code owner validation for roles](https://gitlab.com/gitlab-org/security/gitlab/-/commit/b5760803cdee7196c74726887b3fbad541af6a3a) **GitLab Enterprise Edition**
+
+### Security (4 changes)
+
+- [Revert "Merge branch..." from 17.11](https://gitlab.com/gitlab-org/security/gitlab/-/commit/5f7dded039c6a95d0cad4e80950730e6600ae096) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5128))
+- [Fix XSS via blob rich viewer](https://gitlab.com/gitlab-org/security/gitlab/-/commit/ad8aefc5d97748a36211e673de10d4ea3c3528d7) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5121))
+- [Fix CI ID Token claims for forked project MR jobs](https://gitlab.com/gitlab-org/security/gitlab/-/commit/ed3b2358908fdf6a6cad1bab226a5d08de1ce926) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5117))
+- [Prevent linking fork if target group disallows external forks](https://gitlab.com/gitlab-org/security/gitlab/-/commit/8d2fe458b23e72778561d1dbb31d13fae68224f4) ([merge request](https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5104))
+
## 17.11.5 (2025-06-24)
### Changed (2 changes)
diff --git a/GITLAB_SHELL_VERSION b/GITLAB_SHELL_VERSION
index 68779e98d90..e7d355aaa29 100644
--- a/GITLAB_SHELL_VERSION
+++ b/GITLAB_SHELL_VERSION
@@ -1 +1 @@
-14.42.0
+14.43.0
diff --git a/Gemfile.checksum b/Gemfile.checksum
index 8a3237b0caa..1a4f45f24db 100644
--- a/Gemfile.checksum
+++ b/Gemfile.checksum
@@ -549,7 +549,7 @@
{"name":"raabro","version":"1.4.0","platform":"ruby","checksum":"d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882"},
{"name":"racc","version":"1.8.1","platform":"java","checksum":"54f2e6d1e1b91c154013277d986f52a90e5ececbe91465d29172e49342732b98"},
{"name":"racc","version":"1.8.1","platform":"ruby","checksum":"4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f"},
-{"name":"rack","version":"2.2.13","platform":"ruby","checksum":"ccee101719696a5da12ee9da6fb3b1d20cb329939e089e0e458be6e93667f0fb"},
+{"name":"rack","version":"2.2.17","platform":"ruby","checksum":"5fe02a1ca80d6fb2271dba00985ee2962d6f5620b6f46dfed89f5301ac4699dd"},
{"name":"rack-accept","version":"0.4.5","platform":"ruby","checksum":"66247b5449db64ebb93ae2ec4af4764b87d1ae8a7463c7c68893ac13fa8d4da2"},
{"name":"rack-attack","version":"6.7.0","platform":"ruby","checksum":"3ca47e8f66cd33b2c96af53ea4754525cd928ed3fa8da10ee6dad0277791d77c"},
{"name":"rack-cors","version":"2.0.2","platform":"ruby","checksum":"415d4e1599891760c5dc9ef0349c7fecdf94f7c6a03e75b2e7c2b54b82adda1b"},
diff --git a/Gemfile.lock b/Gemfile.lock
index 94be2819e99..b65917a5f97 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1517,7 +1517,7 @@ GEM
pyu-ruby-sasl (0.0.3.3)
raabro (1.4.0)
racc (1.8.1)
- rack (2.2.13)
+ rack (2.2.17)
rack-accept (0.4.5)
rack (>= 0.4)
rack-attack (6.7.0)
diff --git a/Gemfile.next.checksum b/Gemfile.next.checksum
index e800ef91d99..98483921c7f 100644
--- a/Gemfile.next.checksum
+++ b/Gemfile.next.checksum
@@ -549,7 +549,7 @@
{"name":"raabro","version":"1.4.0","platform":"ruby","checksum":"d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882"},
{"name":"racc","version":"1.8.1","platform":"java","checksum":"54f2e6d1e1b91c154013277d986f52a90e5ececbe91465d29172e49342732b98"},
{"name":"racc","version":"1.8.1","platform":"ruby","checksum":"4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f"},
-{"name":"rack","version":"2.2.13","platform":"ruby","checksum":"ccee101719696a5da12ee9da6fb3b1d20cb329939e089e0e458be6e93667f0fb"},
+{"name":"rack","version":"2.2.17","platform":"ruby","checksum":"5fe02a1ca80d6fb2271dba00985ee2962d6f5620b6f46dfed89f5301ac4699dd"},
{"name":"rack-accept","version":"0.4.5","platform":"ruby","checksum":"66247b5449db64ebb93ae2ec4af4764b87d1ae8a7463c7c68893ac13fa8d4da2"},
{"name":"rack-attack","version":"6.7.0","platform":"ruby","checksum":"3ca47e8f66cd33b2c96af53ea4754525cd928ed3fa8da10ee6dad0277791d77c"},
{"name":"rack-cors","version":"2.0.2","platform":"ruby","checksum":"415d4e1599891760c5dc9ef0349c7fecdf94f7c6a03e75b2e7c2b54b82adda1b"},
diff --git a/Gemfile.next.lock b/Gemfile.next.lock
index a4935d3c08e..3d1d266f5af 100644
--- a/Gemfile.next.lock
+++ b/Gemfile.next.lock
@@ -1511,7 +1511,7 @@ GEM
pyu-ruby-sasl (0.0.3.3)
raabro (1.4.0)
racc (1.8.1)
- rack (2.2.13)
+ rack (2.2.17)
rack-accept (0.4.5)
rack (>= 0.4)
rack-attack (6.7.0)
diff --git a/app/assets/javascripts/graphql_shared/possible_types.json b/app/assets/javascripts/graphql_shared/possible_types.json
index 449d0784457..42c78146158 100644
--- a/app/assets/javascripts/graphql_shared/possible_types.json
+++ b/app/assets/javascripts/graphql_shared/possible_types.json
@@ -4,10 +4,12 @@
"ContainerProtectionTagRule"
],
"AiCatalogItem": [
- "AiCatalogAgent"
+ "AiCatalogAgent",
+ "AiCatalogFlow"
],
"AiCatalogItemVersion": [
- "AiCatalogAgentVersion"
+ "AiCatalogAgentVersion",
+ "AiCatalogFlowVersion"
],
"AlertManagementIntegration": [
"AlertManagementHttpIntegration",
diff --git a/app/assets/javascripts/repository/components/blob_content_viewer.vue b/app/assets/javascripts/repository/components/blob_content_viewer.vue
index 867d7900be4..c81c3d71cee 100644
--- a/app/assets/javascripts/repository/components/blob_content_viewer.vue
+++ b/app/assets/javascripts/repository/components/blob_content_viewer.vue
@@ -314,7 +314,9 @@ export default {
await this.$nextTick();
handleLocationHash(); // Ensures that we scroll to the hash when async content is loaded
- eventHub.$emit('showBlobInteractionZones', this.blobInfo.path);
+ if (type === SIMPLE_BLOB_VIEWER) {
+ eventHub.$emit('showBlobInteractionZones', this.blobInfo.path);
+ }
})
.catch(() => this.displayError())
.finally(() => {
diff --git a/app/assets/javascripts/repository/file_tree_browser/file_tree_browser.vue b/app/assets/javascripts/repository/file_tree_browser/file_tree_browser.vue
index 7afad167993..194b1cf7401 100644
--- a/app/assets/javascripts/repository/file_tree_browser/file_tree_browser.vue
+++ b/app/assets/javascripts/repository/file_tree_browser/file_tree_browser.vue
@@ -1,14 +1,18 @@
Hello world!
" + description: API_Entities_Markdown model + putApiV4NamespacesId: + type: object + properties: + shared_runners_minutes_limit: + type: integer + format: int32 + description: Compute minutes quota for this namespace + extra_shared_runners_minutes_limit: + type: integer + format: int32 + description: Extra compute minutes for this namespace + additional_purchased_storage_size: + type: integer + format: int32 + description: Additional storage size for this namespace + additional_purchased_storage_ends_on: + type: string + format: date + description: End of subscription of the additional purchased storage + gitlab_subscription_attributes: + type: object + properties: + start_date: + type: string + format: date + description: Start date of subscription + seats: + type: integer + format: int32 + description: Number of seats in subscription + max_seats_used: + type: integer + format: int32 + description: Highest number of active users in the last month + plan_code: + type: string + description: Subscription tier code + end_date: + type: string + format: date + description: End date of subscription + auto_renew: + type: boolean + description: Whether subscription will auto renew on end date + trial: + type: boolean + description: Whether the subscription is a trial + trial_ends_on: + type: string + format: date + description: End date of trial + trial_starts_on: + type: string + format: date + description: Start date of trial + trial_extension_type: + type: integer + format: int32 + description: Whether subscription is an extended or reactivated trial + description: "[DEPRECATED] Update a namespace" + API_Entities_Namespace: + type: object + properties: + id: + type: integer + format: int32 + example: 2 + name: + type: string + example: project + path: + type: string + example: my_project + kind: + type: string + example: project + full_path: + type: string + example: group/my_project + parent_id: + type: integer + format: int32 + example: 1 + avatar_url: + type: string + example: https://example.com/avatar/12345 + web_url: + type: string + example: https://example.com/group/my_project + members_count_with_descendants: + type: integer + format: int32 + example: 5 + root_repository_size: + type: integer + format: int32 + example: 123 + projects_count: + type: integer + format: int32 + example: 123 + shared_runners_minutes_limit: + type: integer + format: int32 + example: 133 + extra_shared_runners_minutes_limit: + type: integer + format: int32 + example: 133 + additional_purchased_storage_size: + type: integer + format: int32 + example: 1000 + additional_purchased_storage_ends_on: + type: string + format: date + example: '2022-06-18' + billable_members_count: + type: integer + format: int32 + example: 2 + seats_in_use: + type: integer + format: int32 + example: 5 + max_seats_used: + type: integer + format: int32 + example: 100 + max_seats_used_changed_at: + type: string + format: date + example: '2022-06-18' + end_date: + type: string + format: date + example: '2022-06-18' + plan: + type: string + example: default + trial_ends_on: + type: string + format: date + example: '2022-06-18' + trial: + type: boolean + description: API_Entities_Namespace model + API_Entities_GitlabSubscription: + type: object + properties: + plan: + type: object + properties: + code: + type: string + name: + type: string + trial: + type: string + auto_renew: + type: string + upgradable: + type: string + exclude_guests: + type: string + usage: + type: object + properties: + seats_in_subscription: + type: string + seats_in_use: + type: string + max_seats_used: + type: string + seats_owed: + type: string + billing: + type: object + properties: + subscription_start_date: + type: string + subscription_end_date: + type: string + trial_ends_on: + type: string + description: API_Entities_GitlabSubscription model + postApiV4NamespacesIdStorageLimitExclusion: + type: object + properties: + reason: + type: string + description: The reason the Namespace is being excluded + required: + - reason + description: Creates a storage limit exclusion for a Namespace + API_Entities_Namespaces_Storage_LimitExclusion: + type: object + properties: + id: + type: integer + format: int32 + example: 1 + namespace_id: + type: integer + format: int32 + example: 123 + namespace_name: + type: string + example: GitLab + reason: + type: string + example: a reason + description: API_Entities_Namespaces_Storage_LimitExclusion model + API_Entities_NamespaceExistence: + type: object + properties: + exists: + type: boolean + suggests: + type: array + items: + type: string + example: my-group1 + description: API_Entities_NamespaceExistence model + postApiV4Organizations: + type: object + properties: + name: + type: string + description: The name of the organization + path: + type: string + description: The path of the organization + description: + type: string + description: The description of the organization + avatar: + type: file + description: The avatar image for the organization + required: + - name + - path + description: Create an organization + API_Entities_Organizations_Organization: + type: object + properties: + id: + type: integer + format: int32 + example: 1 + name: + type: string + example: GitLab + path: + type: string + example: gitlab + description: + type: string + example: My description + created_at: + type: string + format: date-time + example: '2022-02-24T20:22:30.097Z' + updated_at: + type: string + format: date-time + example: '2022-02-24T20:22:30.097Z' + web_url: + type: string + example: https://example.com/-/organizations/gitlab + avatar_url: + type: string + example: https://example.com/uploads/-/system/organizations/organization_detail/avatar/1/avatar.png + description: API_Entities_Organizations_Organization model + API_Entities_PagesDomainBasic: + type: object + properties: + domain: + type: string + url: + type: string + project_id: + type: string + verified: + type: string + verification_code: + type: string + enabled_until: + type: string + auto_ssl_enabled: + type: string + certificate_expiration: + "$ref": "#/definitions/API_Entities_PagesDomainCertificateExpiration" + description: API_Entities_PagesDomainBasic model + API_Entities_PagesDomainCertificateExpiration: + type: object + properties: + expired: + type: string + expiration: + type: string + API_Entities_PersonalAccessTokenWithLastUsedIps: + type: object + properties: + id: + type: integer + format: int32 + example: 2 + name: + type: string + example: John Doe + revoked: + type: boolean + created_at: + type: string + format: date-time + description: + type: string + example: Token to manage api + scopes: + type: array + example: + - api + user_id: + type: integer + format: int32 + example: 3 + last_used_at: + type: string + format: date-time + example: '2020-08-31T15:53:00.073Z' + active: + type: boolean + expires_at: + type: string + format: date-time + example: '2020-08-31T15:53:00.073Z' + last_used_ips: + type: array + example: + - 127.0.0.1 + - 127.0.0.2 + - 127.0.0.3 + description: API_Entities_PersonalAccessTokenWithLastUsedIps model + API_Entities_PersonalAccessToken: + type: object + properties: + id: + type: integer + format: int32 + example: 2 + name: + type: string + example: John Doe + revoked: + type: boolean + created_at: + type: string + format: date-time + description: + type: string + example: Token to manage api + scopes: + type: array + example: + - api + user_id: + type: integer + format: int32 + example: 3 + last_used_at: + type: string + format: date-time + example: '2020-08-31T15:53:00.073Z' + active: + type: boolean + expires_at: + type: string + format: date-time + example: '2020-08-31T15:53:00.073Z' + description: API_Entities_PersonalAccessToken model + postApiV4PersonalAccessTokensSelfRotate: + type: object + properties: + expires_at: + type: string + format: date + description: The expiration date of the token + example: '2021-01-31' + description: Rotate a personal access token + API_Entities_PersonalAccessTokenWithToken: + type: object + properties: + id: + type: integer + format: int32 + example: 2 + name: + type: string + example: John Doe + revoked: + type: boolean + created_at: + type: string + format: date-time + description: + type: string + example: Token to manage api + scopes: + type: array + example: + - api + user_id: + type: integer + format: int32 + example: 3 + last_used_at: + type: string + format: date-time + example: '2020-08-31T15:53:00.073Z' + active: + type: boolean + expires_at: + type: string + format: date-time + example: '2020-08-31T15:53:00.073Z' + token: + type: string + description: API_Entities_PersonalAccessTokenWithToken model + postApiV4PersonalAccessTokensIdRotate: + type: object + properties: + expires_at: + type: string + format: date + description: The expiration date of the token + example: '2021-01-31' + description: Rotate personal access token + API_Entities_Snippet: + type: object + properties: + id: + type: integer + format: int32 + example: 1 + title: + type: string + example: test + description: + type: string + example: Ruby test snippet + visibility: + type: string + example: public + author: + "$ref": "#/definitions/API_Entities_UserBasic" + created_at: + type: string + format: date-time + example: '2012-06-28T10:52:04Z' + updated_at: + type: string + format: date-time + example: '2012-06-28T10:52:04Z' + project_id: + type: integer + format: int32 + example: 1 + web_url: + type: string + example: http://example.com/example/example/snippets/1 + raw_url: + type: string + example: http://example.com/example/example/snippets/1/raw + ssh_url_to_repo: + type: string + example: ssh://user@gitlab.example.com/snippets/65.git + http_url_to_repo: + type: string + example: https://gitlab.example.com/snippets/65.git + file_name: + type: string + example: add.rb + files: + type: array + items: + type: string + example: e0d123e5f316bef78bfdf5a008837577 + imported: + type: boolean + example: false + imported_from: + type: string + example: none + repository_storage: + type: string + description: API_Entities_Snippet model + API_Entities_PersonalSnippet: + type: object + properties: + id: + type: integer + format: int32 + example: 1 + title: + type: string + example: test + description: + type: string + example: Ruby test snippet + visibility: + type: string + example: public + author: + "$ref": "#/definitions/API_Entities_UserBasic" + created_at: + type: string + format: date-time + example: '2012-06-28T10:52:04Z' + updated_at: + type: string + format: date-time + example: '2012-06-28T10:52:04Z' + project_id: + type: integer + format: int32 + example: 1 + web_url: + type: string + example: http://example.com/example/example/snippets/1 + raw_url: + type: string + example: http://example.com/example/example/snippets/1/raw + ssh_url_to_repo: + type: string + example: ssh://user@gitlab.example.com/snippets/65.git + http_url_to_repo: + type: string + example: https://gitlab.example.com/snippets/65.git + file_name: + type: string + example: add.rb + files: + type: array + items: + type: string + example: e0d123e5f316bef78bfdf5a008837577 + imported: + type: boolean + example: false + imported_from: + type: string + example: none + repository_storage: + type: string + description: API_Entities_PersonalSnippet model + postApiV4Snippets: + type: object + properties: + title: + type: string + description: The title of a snippet + description: + type: string + description: The description of a snippet + visibility: + type: string + description: The visibility of the snippet + enum: + - private + - internal + - public + default: internal + files: + type: array + description: An array of files + items: + type: object + properties: + file_path: + type: string + description: The path of a snippet file + content: + type: string + description: The content of a snippet file + required: + - file_path + - content + content: + type: string + description: The content of a snippet + file_name: + type: string + description: The name of a snippet file + required: + - title + - file_name + description: Create new snippet + putApiV4SnippetsId: + type: object + properties: + content: + type: string + description: The content of a snippet + description: + type: string + description: The description of a snippet + file_name: + type: string + description: The name of a snippet file + title: + type: string + description: The title of a snippet + visibility: + type: string + description: The visibility of the snippet + enum: + - private + - internal + - public + files: + type: array + description: An array of files to update + items: + type: object + properties: + action: + type: string + description: 'The type of action to perform on the file, must be one + of: create, update, delete, move' + enum: + - create + - update + - delete + - move + content: + type: string + description: The content of a snippet + file_path: + type: string + description: The file path of a snippet file + previous_path: + type: string + description: The previous path of a snippet file + required: + - action + description: Update an existing snippet + putApiV4SuggestionsIdApply: + type: object + properties: + commit_message: + type: string + description: A custom commit message to use instead of the default generated + message or the project's default message + description: Apply suggestion patch in the Merge Request it was created + putApiV4SuggestionsBatchApply: + type: object + properties: + ids: + type: array + description: An array of the suggestion IDs + items: + type: integer + format: int32 + commit_message: + type: string + description: A custom commit message to use instead of the default generated + message or the project's default message + required: + - ids + description: Apply multiple suggestion patches in the Merge Request where they + were created + putApiV4HooksHookIdUrlVariablesKey: + type: object + properties: + value: + type: string + description: The value of the variable + required: + - value + description: Set a url variable + putApiV4HooksHookIdCustomHeadersKey: + type: object + properties: + value: + type: string + description: The value of the custom header + required: + - value + description: Set a custom header + API_Entities_Hook: + type: object + properties: + id: + type: string + example: 1 + url: + type: string + example: https://webhook.site + name: + type: string + example: Hook name + description: + type: string + example: Hook description + created_at: + type: string + format: date-time + example: '2012-05-28T04:42:42-07:00' + push_events: + type: boolean + tag_push_events: + type: boolean + merge_requests_events: + type: boolean + repository_update_events: + type: boolean + enable_ssl_verification: + type: boolean + alert_status: + type: symbol + example: executable + disabled_until: + type: string + format: date-time + example: '2012-05-28T04:42:42-07:00' + url_variables: + type: array + items: + type: object + example: + token: secr3t + push_events_branch_filter: + type: string + example: my-branch-* + branch_filter_strategy: + type: string + example: wildcard + custom_webhook_template: + type: string + example: '{"event":"{{object_kind}}"}' + custom_headers: + type: array + items: + type: object + example: + X-Custom-Header: value + description: API_Entities_Hook model + postApiV4Hooks: + type: object + properties: + url: + type: string + description: The URL to send the request to + example: http://example.com/hook + name: + type: string + description: Name of the hook + description: + type: string + description: Description of the hook + token: + type: string + description: Secret token to validate received payloads; this isn't returned + in the response + push_events: + type: boolean + description: When true, the hook fires on push events + tag_push_events: + type: boolean + description: When true, the hook fires on new tags being pushed + merge_requests_events: + type: boolean + description: Trigger hook on merge requests events + repository_update_events: + type: boolean + description: Trigger hook on repository update events + enable_ssl_verification: + type: boolean + description: Do SSL verification when triggering the hook + push_events_branch_filter: + type: string + description: Trigger hook on specified branch only + branch_filter_strategy: + type: string + description: Filter push events by branch. Possible values are `wildcard` + (default), `regex`, and `all_branches` + enum: + - wildcard + - regex + - all_branches + url_variables: + type: array + description: URL variables for interpolation + items: + type: object + properties: + key: + type: string + description: Name of the variable + example: token + value: + type: string + description: Value of the variable + example: '123' + required: + - key + - value + custom_headers: + type: array + description: Custom headers + items: + type: object + properties: + key: + type: string + description: Name of the header + example: X-Custom-Header + value: + type: string + description: Value of the header + example: value + required: + - key + - value + required: + - url + description: Add new system hook + putApiV4HooksHookId: + type: object + properties: + url: + type: string + description: The URL to send the request to + name: + type: string + description: Name of the hook + description: + type: string + description: Description of the hook + token: + type: string + description: Secret token to validate received payloads; this isn't returned + in the response + push_events: + type: boolean + description: When true, the hook fires on push events + tag_push_events: + type: boolean + description: When true, the hook fires on new tags being pushed + merge_requests_events: + type: boolean + description: Trigger hook on merge requests events + repository_update_events: + type: boolean + description: Trigger hook on repository update events + enable_ssl_verification: + type: boolean + description: Do SSL verification when triggering the hook + push_events_branch_filter: + type: string + description: Trigger hook on specified branch only + branch_filter_strategy: + type: string + description: Filter push events by branch. Possible values are `wildcard` + (default), `regex`, and `all_branches` + enum: + - wildcard + - regex + - all_branches + url_variables: + type: array + description: URL variables for interpolation + items: + type: object + properties: + key: + type: string + description: Name of the variable + example: token + value: + type: string + description: Value of the variable + example: '123' + required: + - key + - value + custom_headers: + type: array + description: Custom headers + items: + type: object + properties: + key: + type: string + description: Name of the header + example: X-Custom-Header + value: + type: string + description: Value of the header + example: value + required: + - key + - value + description: Edit system hook + postApiV4FeatureFlagsUnleashProjectIdClientRegister: + type: object + properties: + instance_id: + type: string + description: The instance ID of Unleash Client + app_name: + type: string + description: The application name of Unleash Client + postApiV4FeatureFlagsUnleashProjectIdClientMetrics: + type: object + properties: + instance_id: + type: string + description: The instance ID of Unleash Client + app_name: + type: string + description: The application name of Unleash Client + postApiV4UsageDataIncrementCounter: + type: object + properties: + event: + type: string + description: The event name that should be tracked + example: i_quickactions_page + required: + - event + description: Track usage data event + postApiV4UsageDataIncrementUniqueUsers: + type: object + properties: + event: + type: string + description: The event name that should be tracked + example: i_quickactions_page + required: + - event + description: Track usage data event for the current user + postApiV4UsageDataTrackEvents: + type: object + properties: + events: + type: array + description: An array of internal events. Maximum 50 events allowed. + items: + type: object + properties: + event: + type: string + description: The event name that should be tracked + example: i_quickactions_page + namespace_id: + type: integer + format: int32 + description: Namespace ID + example: 1234 + project_id: + type: integer + format: int32 + description: Project ID + example: 1234 + additional_properties: + type: object + description: Additional properties to be tracked + example: + label: login_button + value: 1 + send_to_snowplow: + type: boolean + description: Send the tracked event to Snowplow + default: false + example: true + required: + - event + required: + - events + description: Track multiple gitlab internal events + postApiV4UsageDataTrackEvent: + type: object + properties: + event: + type: string + description: The event name that should be tracked + example: i_quickactions_page + namespace_id: + type: integer + format: int32 + description: Namespace ID + example: 1234 + project_id: + type: integer + format: int32 + description: Project ID + example: 1234 + additional_properties: + type: object + description: Additional properties to be tracked + example: + label: login_button + value: 1 + send_to_snowplow: + type: boolean + description: Send the tracked event to Snowplow + default: false + example: true + required: + - event + description: Track gitlab internal events + API_Entities_UserCounts: + type: object + properties: + merge_requests: + type: integer + format: int32 + example: 10 + assigned_issues: + type: integer + format: int32 + example: 10 + assigned_merge_requests: + type: integer + format: int32 + example: 10 + review_requested_merge_requests: + type: integer + format: int32 + example: 10 + todos: + type: integer + format: int32 + example: 10 + description: API_Entities_UserCounts model + postApiV4UserRunners: + type: object + properties: + runner_type: + type: string + description: Specifies the scope of the runner + enum: + - instance_type + - group_type + - project_type + group_id: + type: integer + format: int32 + description: The ID of the group that the runner is created in + example: 1 + project_id: + type: integer + format: int32 + description: The ID of the project that the runner is created in + example: 1 + description: + type: string + description: Description of the runner + maintenance_note: + type: string + description: Free-form maintenance notes for the runner (1024 characters) + paused: + type: boolean + description: Specifies if the runner should ignore new jobs (defaults to false) + locked: + type: boolean + description: Specifies if the runner should be locked for the current project + (defaults to false) + access_level: + type: string + description: The access level of the runner + enum: + - not_protected + - ref_protected + run_untagged: + type: boolean + description: Specifies if the runner should handle untagged jobs (defaults + to true) + tag_list: + type: array + description: A list of runner tags + items: + type: string + maximum_timeout: + type: integer + format: int32 + description: Maximum timeout that limits the amount of time (in seconds) that + runners can run jobs + required: + - runner_type + - group_id + - project_id + description: Create a runner owned by currently authenticated user + API_Entities_PlanLimit: + type: object + properties: + ci_instance_level_variables: + type: integer + format: int32 + example: 25 + ci_pipeline_size: + type: integer + format: int32 + example: 0 + ci_active_jobs: + type: integer + format: int32 + example: 0 + ci_project_subscriptions: + type: integer + format: int32 + example: 2 + ci_pipeline_schedules: + type: integer + format: int32 + example: 10 + ci_needs_size_limit: + type: integer + format: int32 + example: 50 + ci_registered_group_runners: + type: integer + format: int32 + example: 1000 + ci_registered_project_runners: + type: integer + format: int32 + example: 1000 + conan_max_file_size: + type: integer + format: int32 + example: 3221225472 + dotenv_variables: + type: integer + format: int32 + example: 20 + dotenv_size: + type: integer + format: int32 + example: 5120 + enforcement_limit: + type: integer + format: int32 + example: 15000 + generic_packages_max_file_size: + type: integer + format: int32 + example: 5368709120 + helm_max_file_size: + type: integer + format: int32 + example: 5242880 + limits_history: + type: object + example: |- + {"enforcement_limit"=>[{"timestamp"=>1686909124, "user_id"=>1, "username"=>"x", "value"=>5}], + "notification_limit"=>[{"timestamp"=>1686909124, "user_id"=>2, "username"=>"y", "value"=>7}]} + maven_max_file_size: + type: integer + format: int32 + example: 3221225472 + notification_limit: + type: integer + format: int32 + example: 15000 + npm_max_file_size: + type: integer + format: int32 + example: 524288000 + nuget_max_file_size: + type: integer + format: int32 + example: 524288000 + pipeline_hierarchy_size: + type: integer + format: int32 + example: 1000 + pypi_max_file_size: + type: integer + format: int32 + example: 3221225472 + terraform_module_max_file_size: + type: integer + format: int32 + example: 1073741824 + storage_size_limit: + type: integer + format: int32 + example: 15000 + description: API_Entities_PlanLimit model + putApiV4ApplicationPlanLimits: + type: object + properties: + plan_name: + type: string + description: Name of the plan to update + enum: + - default + - free + - bronze + - silver + - premium + - gold + - ultimate + - ultimate_trial + - ultimate_trial_paid_customer + - premium_trial + - opensource + ci_instance_level_variables: + type: integer + format: int32 + description: Maximum number of Instance-level CI/CD variables that can be + defined + ci_pipeline_size: + type: integer + format: int32 + description: Maximum number of jobs in a single pipeline + ci_active_jobs: + type: integer + format: int32 + description: Total number of jobs in currently active pipelines + ci_project_subscriptions: + type: integer + format: int32 + description: Maximum number of pipeline subscriptions to and from a project + ci_pipeline_schedules: + type: integer + format: int32 + description: Maximum number of pipeline schedules + ci_needs_size_limit: + type: integer + format: int32 + description: Maximum number of needs dependencies that a job can have + ci_registered_group_runners: + type: integer + format: int32 + description: Maximum number of runners created or active in a group during + the past seven days + ci_registered_project_runners: + type: integer + format: int32 + description: Maximum number of runners created or active in a project during + the past seven days + conan_max_file_size: + type: integer + format: int32 + description: Maximum Conan package file size in bytes + dotenv_size: + type: integer + format: int32 + description: Maximum size of a dotenv artifact in bytes + dotenv_variables: + type: integer + format: int32 + description: Maximum number of variables in a dotenv artifact + enforcement_limit: + type: integer + format: int32 + description: Maximum storage size for the root namespace enforcement in MiB + generic_packages_max_file_size: + type: integer + format: int32 + description: Maximum generic package file size in bytes + helm_max_file_size: + type: integer + format: int32 + description: Maximum Helm chart file size in bytes + maven_max_file_size: + type: integer + format: int32 + description: Maximum Maven package file size in bytes + notification_limit: + type: integer + format: int32 + description: Maximum storage size for the root namespace notifications in + MiB + npm_max_file_size: + type: integer + format: int32 + description: Maximum NPM package file size in bytes + nuget_max_file_size: + type: integer + format: int32 + description: Maximum NuGet package file size in bytes + pypi_max_file_size: + type: integer + format: int32 + description: Maximum PyPI package file size in bytes + terraform_module_max_file_size: + type: integer + format: int32 + description: Maximum Terraform Module package file size in bytes + storage_size_limit: + type: integer + format: int32 + description: Maximum storage size for the root namespace in MiB + pipeline_hierarchy_size: + type: integer + format: int32 + description: Maximum number of downstream pipelines in a pipeline's hierarchy + tree + required: + - plan_name + description: Change plan limits + API_Entities_Appearance: + type: object + properties: + title: + type: string + description: + type: string + pwa_name: + type: string + pwa_short_name: + type: string + pwa_description: + type: string + logo: + type: string + pwa_icon: + type: string + header_logo: + type: string + favicon: + type: string + new_project_guidelines: + type: string + member_guidelines: + type: string + profile_image_guidelines: + type: string + header_message: + type: string + footer_message: + type: string + message_background_color: + type: string + message_font_color: + type: string + email_header_and_footer_enabled: + type: string + description: API_Entities_Appearance model + API_Entities_ApplicationStatistics: + type: object + properties: + forks: + type: integer + format: int32 + example: 6 + description: Approximate number of repo forks + issues: + type: integer + format: int32 + example: 121 + description: Approximate number of issues + merge_requests: + type: integer + format: int32 + example: 49 + description: Approximate number of merge requests + notes: + type: integer + format: int32 + example: 6 + description: Approximate number of notes + snippets: + type: integer + format: int32 + example: 4 + description: Approximate number of snippets + ssh_keys: + type: integer + format: int32 + example: 11 + description: Approximate number of SSH keys + milestones: + type: integer + format: int32 + example: 3 + description: Approximate number of milestones + users: + type: integer + format: int32 + example: 22 + description: Approximate number of users + projects: + type: integer + format: int32 + example: 4 + description: Approximate number of projects + groups: + type: integer + format: int32 + example: 1 + description: Approximate number of projects + active_users: + type: integer + format: int32 + example: 21 + description: Number of active users + description: API_Entities_ApplicationStatistics model + API_Entities_DiscoveredClusters: + type: object + properties: + groups: + type: string + projects: + type: string + description: API_Entities_DiscoveredClusters model + postApiV4DeployKeys: + type: object + properties: + key: + type: string + description: New deploy key + title: + type: string + description: New deploy key's title + expires_at: + type: string + format: date-time + description: The expiration date of the SSH key in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ) + required: + - key + - title + description: Create a deploy key + postApiV4ImportBitbucket: + type: object + properties: + bitbucket_username: + type: string + description: BitBucket username + bitbucket_app_password: + type: string + description: BitBucket app password + repo_path: + type: string + description: Repository path + target_namespace: + type: string + description: Target namespace + new_name: + type: string + description: New repository name + required: + - bitbucket_username + - bitbucket_app_password + - repo_path + - target_namespace + description: Import a BitBucket Cloud repository + ProjectImportEntity: + type: object + properties: + id: + type: integer + format: int32 + example: 1 + name: + type: string + example: GitLab + full_path: + type: string + example: gitlab-org/gitlab + full_name: + type: string + example: GitLab Org / GitLab + refs_url: + type: string + forked: + type: boolean + example: true + import_source: + type: string + example: source/source-repo + import_status: + type: string + enum: + - scheduled + - started + - finished + - failed + - canceled + example: scheduled + human_import_status_name: + type: string + example: canceled + provider_link: + type: string + example: "/source/source-repo" + import_error: + type: string + import_warning: + type: string + relation_type: + type: string + description: ProjectImportEntity model + postApiV4ImportBitbucketServer: + type: object + properties: + bitbucket_server_url: + type: string + description: Bitbucket Server URL + bitbucket_server_username: + type: string + description: BitBucket Server Username + personal_access_token: + type: string + description: BitBucket Server personal access token/password + bitbucket_server_project: + type: string + description: BitBucket Server Project Key + bitbucket_server_repo: + type: string + description: BitBucket Server Repository Name + new_name: + type: string + description: New repo name + new_namespace: + type: string + description: Namespace to import repo into + timeout_strategy: + type: string + description: Strategy for behavior on timeouts + enum: + - optimistic + - pessimistic + required: + - bitbucket_server_url + - bitbucket_server_username + - personal_access_token + - bitbucket_server_project + - bitbucket_server_repo + description: Import a BitBucket Server repository + ProjectEntity: + type: object + properties: + id: + type: integer + format: int32 + example: 1 + name: + type: string + example: GitLab + full_path: + type: string + example: gitlab-org/gitlab + full_name: + type: string + example: GitLab Org / GitLab + refs_url: + type: string + forked: + type: boolean + example: true + description: ProjectEntity model + postApiV4ImportGithub: + type: object + properties: + personal_access_token: + type: string + description: GitHub personal access token + repo_id: + type: integer + format: int32 + description: GitHub repository ID + new_name: + type: string + description: New repo name + target_namespace: + type: string + description: Namespace or group to import repository into + github_hostname: + type: string + description: 'Custom GitHub enterprise hostname. For example: https://github.example.com. + From GitLab 16.5 to GitLab 17.1, you must include the path `/api/v3`.' + optional_stages: + type: object + description: Optional stages of import to be performed + timeout_strategy: + type: string + description: Strategy for behavior on timeouts + enum: + - optimistic + - pessimistic + pagination_limit: + type: integer + format: int32 + description: Pagination limit + required: + - personal_access_token + - repo_id + - target_namespace + description: Import a GitHub project + postApiV4ImportGithubCancel: + type: object + properties: + project_id: + type: integer + format: int32 + description: ID of importing project to be canceled + required: + - project_id + description: Cancel GitHub project import + postApiV4ImportGithubGists: + type: object + properties: + personal_access_token: + type: string + description: GitHub personal access token + required: + - personal_access_token + description: Import User Gists + postApiV4SlackTrigger: + type: object + properties: + text: + type: string + description: Text of the slack command + required: + - text + description: Trigger a global slack command + API_Entities_Metadata: + type: object + properties: + version: + type: string + example: 15.2-pre + revision: + type: string + example: c401a659d0c + kas: + type: object + properties: + enabled: + type: boolean + externalUrl: + type: string + example: grpc://gitlab.example.com:8150 + externalK8sProxyUrl: + type: string + example: https://gitlab.example.com:8150/k8s-proxy + version: + type: string + example: 15.0.0 + enterprise: + type: boolean + description: API_Entities_Metadata model + API_Entities_Projects_Topic: + type: object + properties: + id: + type: string + name: + type: string + title: + type: string + description: + type: string + total_projects_count: + type: string + organization_id: + type: string + avatar_url: + type: string + description: API_Entities_Projects_Topic model + postApiV4Topics: + type: object + properties: + name: + type: string + description: Slug (name) + title: + type: string + description: Title + description: + type: string + description: Description + avatar: + type: file + description: Avatar image for topic + organization_id: + type: integer + format: int32 + description: The organization id for the topic + default: {} + required: + - name + - title + description: Create a topic + putApiV4TopicsId: + type: object + properties: + name: + type: string + description: Slug (name) + title: + type: string + description: Title + description: + type: string + description: Description + avatar: + type: file + description: Avatar image for topic + description: Update a topic + postApiV4TopicsMerge: + type: object + properties: + source_topic_id: + type: integer + format: int32 + description: ID of source project topic + target_topic_id: + type: integer + format: int32 + description: ID of target project topic + required: + - source_topic_id + - target_topic_id + description: Merge topics diff --git a/doc/api/settings.md b/doc/api/settings.md index 188e5a22459..c9f6f51a4a1 100644 --- a/doc/api/settings.md +++ b/doc/api/settings.md @@ -222,10 +222,20 @@ these parameters: - `delayed_project_deletion` and `delayed_group_deletion` attributes removed in GitLab 16.0. - `user_email_lookup_limit` attribute [removed](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136886) in GitLab 16.7. - `default_branch_protection` [deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/408314) in GitLab 17.0. Use `default_branch_protection_defaults` instead. +- `throttle_unauthenticated_git_http_enabled`, `throttle_unauthenticated_git_http_period_in_seconds`, and `throttle_unauthenticated_git_http_requests_per_period` attributes [added](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147112) in GitLab 17.0. - `allow_all_integrations` and `allowed_integrations` attributes [added](https://gitlab.com/gitlab-org/gitlab/-/issues/500610) in GitLab 17.6. +- `throttle_authenticated_git_http_enabled`, `throttle_authenticated_git_http_period_in_seconds`, and `throttle_authenticated_git_http_requests_per_period` attributes [added](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191552) in GitLab 18.1 [with a flag](../administration/feature_flags/_index.md) named `git_authenticated_http_limit`. Disabled by default. {{< /history >}} +{{< alert type="flag" >}} + +The availability of authenticated Git HTTP rate limits is controlled by a feature flag. +For more information, see the history. +This feature is available for testing, but not ready for production use. + +{{< /alert >}} + Updates the current [application settings](#available-settings) for this GitLab instance. ```plaintext @@ -754,6 +764,9 @@ to configure other related settings. These requirements are | `throttle_authenticated_api_enabled` | boolean | no | (**If enabled, requires**: `throttle_authenticated_api_period_in_seconds` and `throttle_authenticated_api_requests_per_period`) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots). | | `throttle_authenticated_api_period_in_seconds` | integer | required by: