diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-09-01 12:09:43 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-09-01 12:09:43 +0300 |
commit | 5ffb2b7bcde1c76f939c5dca2ff65bac3404a88f (patch) | |
tree | cde2072e0ddb7f861014d0529c9e2f82040b3d5f /doc/api | |
parent | 7401c3a232003e3901010eccb4a31b7aa2741473 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'doc/api')
-rw-r--r-- | doc/api/deploy_keys.md | 2 | ||||
-rw-r--r-- | doc/api/deploy_tokens.md | 46 | ||||
-rw-r--r-- | doc/api/graphql/custom_emoji.md | 6 | ||||
-rw-r--r-- | doc/api/groups.md | 4 | ||||
-rw-r--r-- | doc/api/issue_links.md | 6 | ||||
-rw-r--r-- | doc/api/issues.md | 8 | ||||
-rw-r--r-- | doc/api/linked_epics.md | 22 | ||||
-rw-r--r-- | doc/api/personal_access_tokens.md | 16 | ||||
-rw-r--r-- | doc/api/project_aliases.md | 8 | ||||
-rw-r--r-- | doc/api/project_templates.md | 16 | ||||
-rw-r--r-- | doc/api/projects.md | 898 | ||||
-rw-r--r-- | doc/api/topics.md | 34 |
12 files changed, 533 insertions, 533 deletions
diff --git a/doc/api/deploy_keys.md b/doc/api/deploy_keys.md index 3d5fa092416..ee568b41832 100644 --- a/doc/api/deploy_keys.md +++ b/doc/api/deploy_keys.md @@ -26,7 +26,7 @@ Supported attributes: | Attribute | Type | Required | Description | |:------------|:---------|:---------|:----------------------| -| `public` | boolean | **{dotted-circle}** No | Only return deploy keys that are public. Defaults to `false`. | +| `public` | boolean | No | Only return deploy keys that are public. Defaults to `false`. | Example request: diff --git a/doc/api/deploy_tokens.md b/doc/api/deploy_tokens.md index bc0cee1d627..c0e6a57a9d7 100644 --- a/doc/api/deploy_tokens.md +++ b/doc/api/deploy_tokens.md @@ -20,7 +20,7 @@ Parameters: | Attribute | Type | Required | Description | |-----------|----------|------------------------|-------------| -| `active` | boolean | **{dotted-circle}** No | Limit by active status. | +| `active` | boolean | No | Limit by active status. | Example request: @@ -66,8 +66,8 @@ Parameters: | Attribute | Type | Required | Description | |:---------------|:---------------|:-----------------------|:------------| -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `active` | boolean | **{dotted-circle}** No | Limit by active status. | +| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `active` | boolean | No | Limit by active status. | Example request: @@ -108,8 +108,8 @@ Parameters: | Attribute | Type | Required | Description | | ---------- | -------------- | ---------------------- | ----------- | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) owned by the authenticated user | -| `token_id` | integer | **{check-circle}** Yes | ID of the deploy token | +| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) owned by the authenticated user | +| `token_id` | integer | Yes | ID of the deploy token | Example request: @@ -148,11 +148,11 @@ Parameters: | Attribute | Type | Required | Description | | ------------ | ---------------- | ---------------------- | ----------- | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) owned by the authenticated user | -| `name` | string | **{check-circle}** Yes | New deploy token's name | -| `scopes` | array of strings | **{check-circle}** Yes | Indicates the deploy token scopes. Must be at least one of `read_repository`, `read_registry`, `write_registry`, `read_package_registry`, or `write_package_registry`. | -| `expires_at` | datetime | **{dotted-circle}** No | Expiration date for the deploy token. Does not expire if no value is provided. Expected in ISO 8601 format (`2019-03-15T08:00:00Z`) | -| `username` | string | **{dotted-circle}** No | Username for deploy token. Default is `gitlab+deploy-token-{n}` | +| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) owned by the authenticated user | +| `name` | string | Yes | New deploy token's name | +| `scopes` | array of strings | Yes | Indicates the deploy token scopes. Must be at least one of `read_repository`, `read_registry`, `write_registry`, `read_package_registry`, or `write_package_registry`. | +| `expires_at` | datetime | No | Expiration date for the deploy token. Does not expire if no value is provided. Expected in ISO 8601 format (`2019-03-15T08:00:00Z`) | +| `username` | string | No | Username for deploy token. Default is `gitlab+deploy-token-{n}` | Example request: @@ -193,8 +193,8 @@ Parameters: | Attribute | Type | Required | Description | | ---------- | -------------- | ---------------------- | ----------- | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) owned by the authenticated user | -| `token_id` | integer | **{check-circle}** Yes | ID of the deploy token | +| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) owned by the authenticated user | +| `token_id` | integer | Yes | ID of the deploy token | Example request: @@ -222,8 +222,8 @@ Parameters: | Attribute | Type | Required | Description | |:---------------|:---------------|:-----------------------|:------------| -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding). | -| `active` | boolean | **{dotted-circle}** No | Limit by active status. | +| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding). | +| `active` | boolean | No | Limit by active status. | Example request: @@ -264,8 +264,8 @@ Parameters: | Attribute | Type | Required | Description | | ----------- | -------------- | ---------------------- | ----------- | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user | -| `token_id` | integer | **{check-circle}** Yes | ID of the deploy token | +| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user | +| `token_id` | integer | Yes | ID of the deploy token | Example request: @@ -304,11 +304,11 @@ Parameters: | Attribute | Type | Required | Description | | ------------ | ---- | --------- | ----------- | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user | -| `name` | string | **{check-circle}** Yes | New deploy token's name | -| `scopes` | array of strings | **{check-circle}** Yes | Indicates the deploy token scopes. Must be at least one of `read_repository`, `read_registry`, `write_registry`, `read_package_registry`, or `write_package_registry`. | -| `expires_at` | datetime | **{dotted-circle}** No | Expiration date for the deploy token. Does not expire if no value is provided. Expected in ISO 8601 format (`2019-03-15T08:00:00Z`) | -| `username` | string | **{dotted-circle}** No | Username for deploy token. Default is `gitlab+deploy-token-{n}` | +| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user | +| `name` | string | Yes | New deploy token's name | +| `scopes` | array of strings | Yes | Indicates the deploy token scopes. Must be at least one of `read_repository`, `read_registry`, `write_registry`, `read_package_registry`, or `write_package_registry`. | +| `expires_at` | datetime | No | Expiration date for the deploy token. Does not expire if no value is provided. Expected in ISO 8601 format (`2019-03-15T08:00:00Z`) | +| `username` | string | No | Username for deploy token. Default is `gitlab+deploy-token-{n}` | Example request: @@ -349,8 +349,8 @@ Parameters: | Attribute | Type | Required | Description | | ----------- | -------------- | ---------------------- | ----------- | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user | -| `token_id` | integer | **{check-circle}** Yes | ID of the deploy token | +| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user | +| `token_id` | integer | Yes | ID of the deploy token | Example request: diff --git a/doc/api/graphql/custom_emoji.md b/doc/api/graphql/custom_emoji.md index a0a329ca4b5..7efadb7e9dd 100644 --- a/doc/api/graphql/custom_emoji.md +++ b/doc/api/graphql/custom_emoji.md @@ -20,9 +20,9 @@ Parameters: | Attribute | Type | Required | Description | | :----------- | :------------- | :--------------------- | :------------------------------------------------------------------------ | -| `group_path` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the top-level group](../rest/index.md#namespaced-path-encoding) | -| `name` | string | **{check-circle}** Yes | Name of the custom emoji. | -| `file` | string | **{check-circle}** Yes | URL of the custom emoji image. | +| `group_path` | integer/string | Yes | ID or [URL-encoded path of the top-level group](../rest/index.md#namespaced-path-encoding) | +| `name` | string | Yes | Name of the custom emoji. | +| `file` | string | Yes | URL of the custom emoji image. | ## Create a custom emoji diff --git a/doc/api/groups.md b/doc/api/groups.md index 403fa1194a1..4888633e1c8 100644 --- a/doc/api/groups.md +++ b/doc/api/groups.md @@ -893,8 +893,8 @@ GET /groups/:id/transfer_locations | Attribute | Type | Required | Description | |-------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the group to be transferred](rest/index.md#namespaced-path-encoding). | -| `search` | string | **{dotted-circle}** No | The group names to search for. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the group to be transferred](rest/index.md#namespaced-path-encoding). | +| `search` | string | No | The group names to search for. | Example request: diff --git a/doc/api/issue_links.md b/doc/api/issue_links.md index a7cacd64cbb..653f21e2f0b 100644 --- a/doc/api/issue_links.md +++ b/doc/api/issue_links.md @@ -77,9 +77,9 @@ Supported attributes: | Attribute | Type | Required | Description | |-----------------|----------------|------------------------|-----------------------------------------------------------------------------| -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `issue_iid` | integer | **{check-circle}** Yes | Internal ID of a project's issue. | -| `issue_link_id` | integer/string | **{check-circle}** Yes | ID of an issue relationship. | +| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `issue_iid` | integer | Yes | Internal ID of a project's issue. | +| `issue_link_id` | integer/string | Yes | ID of an issue relationship. | Response body attributes: diff --git a/doc/api/issues.md b/doc/api/issues.md index 3c0aafbb013..27415d4ba22 100644 --- a/doc/api/issues.md +++ b/doc/api/issues.md @@ -1515,10 +1515,10 @@ POST /projects/:id/issues/:issue_iid/clone | Attribute | Type | Required | Description | | --------------- | -------------- | ---------------------- | --------------------------------- | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) owned by the authenticated user. | -| `issue_iid` | integer | **{check-circle}** Yes | Internal ID of a project's issue. | -| `to_project_id` | integer | **{check-circle}** Yes | ID of the new project. | -| `with_notes` | boolean | **{dotted-circle}** No | Clone the issue with [notes](notes.md). Default is `false`. | +| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) owned by the authenticated user. | +| `issue_iid` | integer | Yes | Internal ID of a project's issue. | +| `to_project_id` | integer | Yes | ID of the new project. | +| `with_notes` | boolean | No | Clone the issue with [notes](notes.md). Default is `false`. | ```shell curl --request POST \ diff --git a/doc/api/linked_epics.md b/doc/api/linked_epics.md index aa5aa7f4a6a..4d0f1dbe6a0 100644 --- a/doc/api/linked_epics.md +++ b/doc/api/linked_epics.md @@ -24,7 +24,7 @@ Supported attributes: | Attribute | Type | Required | Description | | ---------- | -------------- | ---------------------- | ------------------------------------------------------------------------- | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding). | +| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding). | | `created_after` | string | no | Return related epic links created on or after the given time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) | | `created_before` | string | no | Return related epic links created on or before the given time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) | | `updated_after` | string | no | Return related epic links updated on or after the given time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) | @@ -145,8 +145,8 @@ Supported attributes: | Attribute | Type | Required | Description | | ---------- | -------------- | ---------------------- | ------------------------------------------------------------------------- | -| `epic_iid` | integer | **{check-circle}** Yes | Internal ID of a group's epic | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding). | +| `epic_iid` | integer | Yes | Internal ID of a group's epic | +| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding). | Example request: @@ -224,11 +224,11 @@ Supported attributes: | Attribute | Type | Required | Description | |---------------------|----------------|-----------------------------|---------------------------------------| -| `epic_iid` | integer | **{check-circle}** Yes | Internal ID of a group's epic. | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user. | -| `target_epic_iid` | integer/string | **{check-circle}** Yes | Internal ID of a target group's epic. | -| `target_group_id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the target group](rest/index.md#namespaced-path-encoding). | -| `link_type` | string | **{dotted-circle}** No | Type of the relation (`relates_to`, `blocks`, `is_blocked_by`), defaults to `relates_to`. | +| `epic_iid` | integer | Yes | Internal ID of a group's epic. | +| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user. | +| `target_epic_iid` | integer/string | Yes | Internal ID of a target group's epic. | +| `target_group_id` | integer/string | Yes | ID or [URL-encoded path of the target group](rest/index.md#namespaced-path-encoding). | +| `link_type` | string | No | Type of the relation (`relates_to`, `blocks`, `is_blocked_by`), defaults to `relates_to`. | Example request: @@ -346,9 +346,9 @@ Supported attributes: | Attribute | Type | Required | Description | |--------------------------|----------------|-----------------------------|---------------------------------------| -| `epic_iid` | integer | **{check-circle}** Yes | Internal ID of a group's epic. | -| `id` | integer/string | **{check-circle}** Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user. | -| `related_epic_link_id` | integer/string | **{check-circle}** Yes | Internal ID of a related epic link. | +| `epic_iid` | integer | Yes | Internal ID of a group's epic. | +| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-path-encoding) owned by the authenticated user. | +| `related_epic_link_id` | integer/string | Yes | Internal ID of a related epic link. | Example request: diff --git a/doc/api/personal_access_tokens.md b/doc/api/personal_access_tokens.md index 32f2b47b669..2131a29eb5b 100644 --- a/doc/api/personal_access_tokens.md +++ b/doc/api/personal_access_tokens.md @@ -45,14 +45,14 @@ Supported attributes: | Attribute | Type | Required | Description | |---------------------|----------------|----------|---------------------| -| `created_after` | datetime (ISO 8601) | **{dotted-circle}** No | Limit results to PATs created after specified time. | -| `created_before` | datetime (ISO 8601) | **{dotted-circle}** No | Limit results to PATs created before specified time. | -| `last_used_after` | datetime (ISO 8601) | **{dotted-circle}** No | Limit results to PATs last used after specified time. | -| `last_used_before` | datetime (ISO 8601) | **{dotted-circle}** No | Limit results to PATs last used before specified time. | -| `revoked` | boolean | **{dotted-circle}** No | Limit results to PATs with specified revoked state. Valid values are `true` and `false`. | -| `search` | string | **{dotted-circle}** No | Limit results to PATs with name containing search string. | -| `state` | string | **{dotted-circle}** No | Limit results to PATs with specified state. Valid values are `active` and `inactive`. | -| `user_id` | integer or string | **{dotted-circle}** No | Limit results to PATs owned by specified user. | +| `created_after` | datetime (ISO 8601) | No | Limit results to PATs created after specified time. | +| `created_before` | datetime (ISO 8601) | No | Limit results to PATs created before specified time. | +| `last_used_after` | datetime (ISO 8601) | No | Limit results to PATs last used after specified time. | +| `last_used_before` | datetime (ISO 8601) | No | Limit results to PATs last used before specified time. | +| `revoked` | boolean | No | Limit results to PATs with specified revoked state. Valid values are `true` and `false`. | +| `search` | string | No | Limit results to PATs with name containing search string. | +| `state` | string | No | Limit results to PATs with specified state. Valid values are `active` and `inactive`. | +| `user_id` | integer or string | No | Limit results to PATs owned by specified user. | Example request: diff --git a/doc/api/project_aliases.md b/doc/api/project_aliases.md index 6bad94f48b3..b8ca5c2674c 100644 --- a/doc/api/project_aliases.md +++ b/doc/api/project_aliases.md @@ -48,7 +48,7 @@ GET /project_aliases/:name | Attribute | Type | Required | Description | |-----------|--------|----------|-----------------------| -| `name` | string | **{check-circle}** Yes | The name of the alias. | +| `name` | string | Yes | The name of the alias. | ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/project_aliases/gitlab" @@ -75,8 +75,8 @@ POST /project_aliases | Attribute | Type | Required | Description | |--------------|----------------|----------|----------------------------------------| -| `name` | string | **{check-circle}** Yes | The name of the alias. Must be unique. | -| `project_id` | integer or string | **{check-circle}** Yes | The ID or path of the project. | +| `name` | string | Yes | The name of the alias. Must be unique. | +| `project_id` | integer or string | Yes | The ID or path of the project. | ```shell curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \ @@ -111,7 +111,7 @@ DELETE /project_aliases/:name | Attribute | Type | Required | Description | |-----------|--------|----------|-----------------------| -| `name` | string | **{check-circle}** Yes | The name of the alias. | +| `name` | string | Yes | The name of the alias. | ```shell curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/project_aliases/gitlab" diff --git a/doc/api/project_templates.md b/doc/api/project_templates.md index 7db7cd9a393..f4fb17d8c57 100644 --- a/doc/api/project_templates.md +++ b/doc/api/project_templates.md @@ -30,8 +30,8 @@ GET /projects/:id/templates/:type | Attribute | Type | Required | Description | | ---------- | ------ | -------- | ----------- | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `type` | string | **{check-circle}** Yes | The type of the template. Accepted values are: `dockerfiles`, `gitignores`, `gitlab_ci_ymls`, `licenses`, `issues`, or `merge_requests`. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `type` | string | Yes | The type of the template. Accepted values are: `dockerfiles`, `gitignores`, `gitlab_ci_ymls`, `licenses`, `issues`, or `merge_requests`. | Example response (licenses): @@ -96,12 +96,12 @@ GET /projects/:id/templates/:type/:name | Attribute | Type | Required | Description | | ---------- | ------ | -------- | ----------- | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `name` | string | **{check-circle}** Yes | The key of the template, as obtained from the collection endpoint. | -| `type` | string | **{check-circle}** Yes | The type of the template. One of: `dockerfiles`, `gitignores`, `gitlab_ci_ymls`, `licenses`, `issues`, or `merge_requests`. | -| `fullname` | string | **{dotted-circle}** No | The full name of the copyright holder to use when expanding placeholders in the template. Affects only licenses. | -| `project` | string | **{dotted-circle}** No | The project name to use when expanding placeholders in the template. Affects only licenses. | -| `source_template_project_id` | integer | **{dotted-circle}** No | The project ID where a given template is being stored. Helpful when multiple templates from different projects have the same name. If multiple templates have the same name, the match from `closest ancestor` is returned if `source_template_project_id` is not specified, | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `name` | string | Yes | The key of the template, as obtained from the collection endpoint. | +| `type` | string | Yes | The type of the template. One of: `dockerfiles`, `gitignores`, `gitlab_ci_ymls`, `licenses`, `issues`, or `merge_requests`. | +| `fullname` | string | No | The full name of the copyright holder to use when expanding placeholders in the template. Affects only licenses. | +| `project` | string | No | The project name to use when expanding placeholders in the template. Affects only licenses. | +| `source_template_project_id` | integer | No | The project ID where a given template is being stored. Helpful when multiple templates from different projects have the same name. If multiple templates have the same name, the match from `closest ancestor` is returned if `source_template_project_id` is not specified, | Example response (Dockerfile): diff --git a/doc/api/projects.md b/doc/api/projects.md index 186e3b12c7d..385c3eaf468 100644 --- a/doc/api/projects.md +++ b/doc/api/projects.md @@ -53,34 +53,34 @@ GET /projects | Attribute | Type | Required | Description | |--------------------------------------------|----------|------------------------|-------------| -| `archived` | boolean | **{dotted-circle}** No | Limit by archived status. | -| `id_after` | integer | **{dotted-circle}** No | Limit results to projects with IDs greater than the specified ID. | -| `id_before` | integer | **{dotted-circle}** No | Limit results to projects with IDs less than the specified ID. | -| `imported` | boolean | **{dotted-circle}** No | Limit results to projects which were imported from external systems by current user. | -| `last_activity_after` | datetime | **{dotted-circle}** No | Limit results to projects with last activity after specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) | -| `last_activity_before` | datetime | **{dotted-circle}** No | Limit results to projects with last activity before specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) | -| `membership` | boolean | **{dotted-circle}** No | Limit by projects that the current user is a member of. | -| `min_access_level` | integer | **{dotted-circle}** No | Limit by current user minimal [role (`access_level`)](members.md#roles). | -| `order_by` | string | **{dotted-circle}** No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, `last_activity_at`, or `similarity` fields. `repository_size`, `storage_size`, `packages_size` or `wiki_size` fields are only allowed for administrators. `similarity` ([introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/332890) in GitLab 14.1) is only available when searching and is limited to projects that the current user is a member of. Default is `created_at`. | -| `owned` | boolean | **{dotted-circle}** No | Limit by projects explicitly owned by the current user. | -| `repository_checksum_failed` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Limit projects where the repository checksum calculation has failed. | -| `repository_storage` | string | **{dotted-circle}** No | Limit results to projects stored on `repository_storage`. _(administrators only)_ | -| `search_namespaces` | boolean | **{dotted-circle}** No | Include ancestor namespaces when matching search criteria. Default is `false`. | -| `search` | string | **{dotted-circle}** No | Return list of projects matching the search criteria. | -| `simple` | boolean | **{dotted-circle}** No | Return only limited fields for each project. This operation is a no-op without authentication where only simple fields are returned. | -| `sort` | string | **{dotted-circle}** No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | -| `starred` | boolean | **{dotted-circle}** No | Limit by projects starred by the current user. | -| `statistics` | boolean | **{dotted-circle}** No | Include project statistics. Available only to users with at least the Reporter role. | -| `topic` | string | **{dotted-circle}** No | Comma-separated topic names. Limit results to projects that match all of given topics. See `topics` attribute. | -| `topic_id` | integer | **{dotted-circle}** No | Limit results to projects with the assigned topic given by the topic ID. | -| `visibility` | string | **{dotted-circle}** No | Limit by visibility `public`, `internal`, or `private`. | -| `wiki_checksum_failed` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Limit projects where the wiki checksum calculation has failed. | -| `with_custom_attributes` | boolean | **{dotted-circle}** No | Include [custom attributes](custom_attributes.md) in response. _(administrator only)_ | -| `with_issues_enabled` | boolean | **{dotted-circle}** No | Limit by enabled issues feature. | -| `with_merge_requests_enabled` | boolean | **{dotted-circle}** No | Limit by enabled merge requests feature. | -| `with_programming_language` | string | **{dotted-circle}** No | Limit by projects which use the given programming language. | -| `updated_before` | datetime | **{dotted-circle}** No | Limit results to projects last updated before the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. For this filter to work, you must also provide `updated_at` as the `order_by` attribute. | -| `updated_after` | datetime | **{dotted-circle}** No | Limit results to projects last updated after the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. For this filter to work, you must also provide `updated_at` as the `order_by` attribute. | +| `archived` | boolean | No | Limit by archived status. | +| `id_after` | integer | No | Limit results to projects with IDs greater than the specified ID. | +| `id_before` | integer | No | Limit results to projects with IDs less than the specified ID. | +| `imported` | boolean | No | Limit results to projects which were imported from external systems by current user. | +| `last_activity_after` | datetime | No | Limit results to projects with last activity after specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) | +| `last_activity_before` | datetime | No | Limit results to projects with last activity before specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) | +| `membership` | boolean | No | Limit by projects that the current user is a member of. | +| `min_access_level` | integer | No | Limit by current user minimal [role (`access_level`)](members.md#roles). | +| `order_by` | string | No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, `last_activity_at`, or `similarity` fields. `repository_size`, `storage_size`, `packages_size` or `wiki_size` fields are only allowed for administrators. `similarity` ([introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/332890) in GitLab 14.1) is only available when searching and is limited to projects that the current user is a member of. Default is `created_at`. | +| `owned` | boolean | No | Limit by projects explicitly owned by the current user. | +| `repository_checksum_failed` **(PREMIUM ALL)** | boolean | No | Limit projects where the repository checksum calculation has failed. | +| `repository_storage` | string | No | Limit results to projects stored on `repository_storage`. _(administrators only)_ | +| `search_namespaces` | boolean | No | Include ancestor namespaces when matching search criteria. Default is `false`. | +| `search` | string | No | Return list of projects matching the search criteria. | +| `simple` | boolean | No | Return only limited fields for each project. This operation is a no-op without authentication where only simple fields are returned. | +| `sort` | string | No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | +| `starred` | boolean | No | Limit by projects starred by the current user. | +| `statistics` | boolean | No | Include project statistics. Available only to users with at least the Reporter role. | +| `topic` | string | No | Comma-separated topic names. Limit results to projects that match all of given topics. See `topics` attribute. | +| `topic_id` | integer | No | Limit results to projects with the assigned topic given by the topic ID. | +| `visibility` | string | No | Limit by visibility `public`, `internal`, or `private`. | +| `wiki_checksum_failed` **(PREMIUM ALL)** | boolean | No | Limit projects where the wiki checksum calculation has failed. | +| `with_custom_attributes` | boolean | No | Include [custom attributes](custom_attributes.md) in response. _(administrator only)_ | +| `with_issues_enabled` | boolean | No | Limit by enabled issues feature. | +| `with_merge_requests_enabled` | boolean | No | Limit by enabled merge requests feature. | +| `with_programming_language` | string | No | Limit by projects which use the given programming language. | +| `updated_before` | datetime | No | Limit results to projects last updated before the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. For this filter to work, you must also provide `updated_at` as the `order_by` attribute. | +| `updated_after` | datetime | No | Limit results to projects last updated after the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. For this filter to work, you must also provide `updated_at` as the `order_by` attribute. | This endpoint supports [keyset pagination](rest/index.md#keyset-based-pagination) for selected `order_by` options. @@ -322,26 +322,26 @@ GET /users/:user_id/projects | Attribute | Type | Required | Description | |-------------------------------|---------|------------------------|-------------| -| `user_id` | string | **{check-circle}** Yes | The ID or username of the user. | -| `archived` | boolean | **{dotted-circle}** No | Limit by archived status. | -| `id_after` | integer | **{dotted-circle}** No | Limit results to projects with IDs greater than the specified ID. | -| `id_before` | integer | **{dotted-circle}** No | Limit results to projects with IDs less than the specified ID. | -| `membership` | boolean | **{dotted-circle}** No | Limit by projects that the current user is a member of. | -| `min_access_level` | integer | **{dotted-circle}** No | Limit by current user minimal [role (`access_level`)](members.md#roles). | -| `order_by` | string | **{dotted-circle}** No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at`. | -| `owned` | boolean | **{dotted-circle}** No | Limit by projects explicitly owned by the current user. | -| `search` | string | **{dotted-circle}** No | Return list of projects matching the search criteria. | -| `simple` | boolean | **{dotted-circle}** No | Return only limited fields for each project. Without authentication, this operation is a no-op; only simple fields are returned. | -| `sort` | string | **{dotted-circle}** No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | -| `starred` | boolean | **{dotted-circle}** No | Limit by projects starred by the current user. | -| `statistics` | boolean | **{dotted-circle}** No | Include project statistics. Available only to users with at least the Reporter role. | -| `visibility` | string | **{dotted-circle}** No | Limit by visibility `public`, `internal`, or `private`. | -| `with_custom_attributes` | boolean | **{dotted-circle}** No | Include [custom attributes](custom_attributes.md) in response. _(administrator only)_ | -| `with_issues_enabled` | boolean | **{dotted-circle}** No | Limit by enabled issues feature. | -| `with_merge_requests_enabled` | boolean | **{dotted-circle}** No | Limit by enabled merge requests feature. | -| `with_programming_language` | string | **{dotted-circle}** No | Limit by projects which use the given programming language. | -| `updated_before` | datetime | **{dotted-circle}** No | Limit results to projects last updated before the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | -| `updated_after` | datetime | **{dotted-circle}** No | Limit results to projects last updated after the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | +| `user_id` | string | Yes | The ID or username of the user. | +| `archived` | boolean | No | Limit by archived status. | +| `id_after` | integer | No | Limit results to projects with IDs greater than the specified ID. | +| `id_before` | integer | No | Limit results to projects with IDs less than the specified ID. | +| `membership` | boolean | No | Limit by projects that the current user is a member of. | +| `min_access_level` | integer | No | Limit by current user minimal [role (`access_level`)](members.md#roles). | +| `order_by` | string | No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at`. | +| `owned` | boolean | No | Limit by projects explicitly owned by the current user. | +| `search` | string | No | Return list of projects matching the search criteria. | +| `simple` | boolean | No | Return only limited fields for each project. Without authentication, this operation is a no-op; only simple fields are returned. | +| `sort` | string | No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | +| `starred` | boolean | No | Limit by projects starred by the current user. | +| `statistics` | boolean | No | Include project statistics. Available only to users with at least the Reporter role. | +| `visibility` | string | No | Limit by visibility `public`, `internal`, or `private`. | +| `with_custom_attributes` | boolean | No | Include [custom attributes](custom_attributes.md) in response. _(administrator only)_ | +| `with_issues_enabled` | boolean | No | Limit by enabled issues feature. | +| `with_merge_requests_enabled` | boolean | No | Limit by enabled merge requests feature. | +| `with_programming_language` | string | No | Limit by projects which use the given programming language. | +| `updated_before` | datetime | No | Limit results to projects last updated before the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | +| `updated_after` | datetime | No | Limit results to projects last updated after the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | ```json [ @@ -596,10 +596,10 @@ GET /users/:user_id/contributed_projects | Attribute | Type | Required | Description | |-------------------------------|---------|------------------------|-------------| -| `user_id` | string | **{check-circle}** Yes | The ID or username of the user. | -| `order_by` | string | **{dotted-circle}** No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at`. | -| `simple` | boolean | **{dotted-circle}** No | Return only limited fields for each project. Without authentication, this operation is a no-op; only simple fields are returned. | -| `sort` | string | **{dotted-circle}** No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | +| `user_id` | string | Yes | The ID or username of the user. | +| `order_by` | string | No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at`. | +| `simple` | boolean | No | Return only limited fields for each project. Without authentication, this operation is a no-op; only simple fields are returned. | +| `sort` | string | No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/users/5/contributed_projects" @@ -841,23 +841,23 @@ GET /users/:user_id/starred_projects | Attribute | Type | Required | Description | |-------------------------------|---------|------------------------|-------------| -| `user_id` | string | **{check-circle}** Yes | The ID or username of the user. | -| `archived` | boolean | **{dotted-circle}** No | Limit by archived status. | -| `membership` | boolean | **{dotted-circle}** No | Limit by projects that the current user is a member of. | -| `min_access_level` | integer | **{dotted-circle}** No | Limit by current user minimal [role (`access_level`)](members.md#roles). | -| `order_by` | string | **{dotted-circle}** No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at`. | -| `owned` | boolean | **{dotted-circle}** No | Limit by projects explicitly owned by the current user. | -| `search` | string | **{dotted-circle}** No | Return list of projects matching the search criteria. | -| `simple` | boolean | **{dotted-circle}** No | Return only limited fields for each project. Without authentication, this operation is a no-op; only simple fields are returned. | -| `sort` | string | **{dotted-circle}** No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | -| `starred` | boolean | **{dotted-circle}** No | Limit by projects starred by the current user. | -| `statistics` | boolean | **{dotted-circle}** No | Include project statistics. Available only to users with at least the Reporter role. | -| `visibility` | string | **{dotted-circle}** No | Limit by visibility `public`, `internal`, or `private`. | -| `with_custom_attributes` | boolean | **{dotted-circle}** No | Include [custom attributes](custom_attributes.md) in response. _(administrator only)_ | -| `with_issues_enabled` | boolean | **{dotted-circle}** No | Limit by enabled issues feature. | -| `with_merge_requests_enabled` | boolean | **{dotted-circle}** No | Limit by enabled merge requests feature. | -| `updated_before` | datetime | **{dotted-circle}** No | Limit results to projects last updated before the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | -| `updated_after` | datetime | **{dotted-circle}** No | Limit results to projects last updated after the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | +| `user_id` | string | Yes | The ID or username of the user. | +| `archived` | boolean | No | Limit by archived status. | +| `membership` | boolean | No | Limit by projects that the current user is a member of. | +| `min_access_level` | integer | No | Limit by current user minimal [role (`access_level`)](members.md#roles). | +| `order_by` | string | No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at`. | +| `owned` | boolean | No | Limit by projects explicitly owned by the current user. | +| `search` | string | No | Return list of projects matching the search criteria. | +| `simple` | boolean | No | Return only limited fields for each project. Without authentication, this operation is a no-op; only simple fields are returned. | +| `sort` | string | No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | +| `starred` | boolean | No | Limit by projects starred by the current user. | +| `statistics` | boolean | No | Include project statistics. Available only to users with at least the Reporter role. | +| `visibility` | string | No | Limit by visibility `public`, `internal`, or `private`. | +| `with_custom_attributes` | boolean | No | Include [custom attributes](custom_attributes.md) in response. _(administrator only)_ | +| `with_issues_enabled` | boolean | No | Limit by enabled issues feature. | +| `with_merge_requests_enabled` | boolean | No | Limit by enabled merge requests feature. | +| `updated_before` | datetime | No | Limit results to projects last updated before the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | +| `updated_after` | datetime | No | Limit results to projects last updated after the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/users/5/starred_projects" @@ -1099,10 +1099,10 @@ GET /projects/:id | Attribute | Type | Required | Description | |--------------------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `license` | boolean | **{dotted-circle}** No | Include project license data. | -| `statistics` | boolean | **{dotted-circle}** No | Include project statistics. Available only to users with at least the Reporter role. | -| `with_custom_attributes` | boolean | **{dotted-circle}** No | Include [custom attributes](custom_attributes.md) in response. _(administrators only)_ | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `license` | boolean | No | Include project license data. | +| `statistics` | boolean | No | Include project statistics. Available only to users with at least the Reporter role. | +| `with_custom_attributes` | boolean | No | Include [custom attributes](custom_attributes.md) in response. _(administrators only)_ | ```json { @@ -1365,9 +1365,9 @@ GET /projects/:id/users | Attribute | Type | Required | Description | |--------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `search` | string | **{dotted-circle}** No | Search for specific users. | -| `skip_users` | integer array | **{dotted-circle}** No | Filter out users with the specified IDs. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `search` | string | No | Search for specific users. | +| `skip_users` | integer array | No | Filter out users with the specified IDs. | ```json [ @@ -1400,12 +1400,12 @@ GET /projects/:id/groups | Attribute | Type | Required | Description | |-----------------------------|-------------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `search` | string | **{dotted-circle}** No | Search for specific groups. | -| `shared_min_access_level` | integer | **{dotted-circle}** No | Limit to shared groups with at least this [role (`access_level`)](members.md#roles). | -| `shared_visible_only` | boolean | **{dotted-circle}** No | Limit to shared groups user has access to. | -| `skip_groups` | array of integers | **{dotted-circle}** No | Skip the group IDs passed. | -| `with_shared` | boolean | **{dotted-circle}** No | Include projects shared with this group. Default is `false`. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `search` | string | No | Search for specific groups. | +| `shared_min_access_level` | integer | No | Limit to shared groups with at least this [role (`access_level`)](members.md#roles). | +| `shared_visible_only` | boolean | No | Limit to shared groups user has access to. | +| `skip_groups` | array of integers | No | Skip the group IDs passed. | +| `with_shared` | boolean | No | Include projects shared with this group. Default is `false`. | ```json [ @@ -1438,8 +1438,8 @@ GET /projects/:id/share_locations | Attribute | Type | Required | Description | |-----------------------------|-------------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `search` | string | **{dotted-circle}** No | Search for specific groups. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `search` | string | No | Search for specific groups. | ```json [ @@ -1492,77 +1492,77 @@ curl --request POST --header "PRIVATE-TOKEN: <your-token>" \ | Attribute | Type | Required | Description | |-------------------------------------------------------------|---------|------------------------|-------------| -| `name` | string | **{check-circle}** Yes (if `path` isn't provided) | The name of the new project. Equals path if not provided. | -| `path` | string | **{check-circle}** Yes (if `name` isn't provided) | Repository name for new project. Generated based on name if not provided (generated as lowercase with dashes). Starting with GitLab 14.9, path must not start or end with a special character and must not contain consecutive special characters. | -| `allow_merge_on_skipped_pipeline` | boolean | **{dotted-circle}** No | Set whether or not merge requests can be merged with skipped jobs. | -| `only_allow_merge_if_all_status_checks_passed` **(ULTIMATE ALL)** | boolean | **{dotted-circle}** No | Indicates that merges of merge requests should be blocked unless all status checks have passed. Defaults to false. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/369859) in GitLab 15.5 with feature flag `only_allow_merge_if_all_status_checks_passed` disabled by default. | -| `analytics_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private` or `enabled` | -| `approvals_before_merge` **(PREMIUM ALL)** | integer | **{dotted-circle}** No | How many approvers should approve merge requests by default. To configure approval rules, see [Merge request approvals API](merge_request_approvals.md). [Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/353097) in GitLab 16.0. | -| `auto_cancel_pending_pipelines` | string | **{dotted-circle}** No | Auto-cancel pending pipelines. This action toggles between an enabled state and a disabled state; it is not a boolean. | -| `auto_devops_deploy_strategy` | string | **{dotted-circle}** No | Auto Deploy strategy (`continuous`, `manual` or `timed_incremental`). | -| `auto_devops_enabled` | boolean | **{dotted-circle}** No | Enable Auto DevOps for this project. | -| `autoclose_referenced_issues` | boolean | **{dotted-circle}** No | Set whether auto-closing referenced issues on default branch. | -| `avatar` | mixed | **{dotted-circle}** No | Image file for avatar of the project. | -| `build_git_strategy` | string | **{dotted-circle}** No | The Git strategy. Defaults to `fetch`. | -| `build_timeout` | integer | **{dotted-circle}** No | The maximum amount of time, in seconds, that a job can run. | -| `builds_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `ci_config_path` | string | **{dotted-circle}** No | The path to CI configuration file. | -| `container_expiration_policy_attributes` | hash | **{dotted-circle}** No | Update the image cleanup policy for this project. Accepts: `cadence` (string), `keep_n` (integer), `older_than` (string), `name_regex` (string), `name_regex_delete` (string), `name_regex_keep` (string), `enabled` (boolean). See the [Container Registry](../user/packages/container_registry/reduce_container_registry_storage.md#use-the-cleanup-policy-api) documentation for more information on `cadence`, `keep_n` and `older_than` values. | -| `container_registry_access_level` | string | **{dotted-circle}** No | Set visibility of container registry, for this project, to one of `disabled`, `private` or `enabled`. | -| `container_registry_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable container registry for this project. Use `container_registry_access_level` instead. | -| `default_branch` | string | **{dotted-circle}** No | The [default branch](../user/project/repository/branches/default.md) name. Requires `initialize_with_readme` to be `true`. | -| `description` | string | **{dotted-circle}** No | Short project description. | -| `emails_disabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Disable email notifications. Use `emails_enabled` instead| -| `emails_enabled` | boolean | **{dotted-circle}** No | Enable email notifications. | -| `external_authorization_classification_label` **(PREMIUM ALL)** | string | **{dotted-circle}** No | The classification label for the project. | -| `forking_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `group_runners_enabled` | boolean | **{dotted-circle}** No | Enable group runners for this project. | -| `group_with_project_templates_id` **(PREMIUM ALL)** | integer | **{dotted-circle}** No | For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires `use_custom_template` to be true. | -| `import_url` | string | **{dotted-circle}** No | URL to import repository from. When the URL value isn't empty, you must not set `initialize_with_readme` to `true`. Doing so might result in the [following error](https://gitlab.com/gitlab-org/gitlab/-/issues/360266): `not a git repository`. | -| `initialize_with_readme` | boolean | **{dotted-circle}** No | Whether to create a Git repository with just a `README.md` file. Default is `false`. When this boolean is true, you must not pass `import_url` or other attributes of this endpoint which specify alternative contents for the repository. Doing so might result in the [following error](https://gitlab.com/gitlab-org/gitlab/-/issues/360266): `not a git repository`. | -| `issues_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `issues_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable issues for this project. Use `issues_access_level` instead. | -| `jobs_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable jobs for this project. Use `builds_access_level` instead. | -| `lfs_enabled` | boolean | **{dotted-circle}** No | Enable LFS. | -| `merge_method` | string | **{dotted-circle}** No | Set the [merge method](#project-merge-method) used. | -| `merge_pipelines_enabled` | boolean | **{dotted-circle}** No | Enable or disable merge pipelines. | -| `merge_requests_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `merge_requests_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable merge requests for this project. Use `merge_requests_access_level` instead. | -| `merge_trains_enabled` | boolean | **{dotted-circle}** No | Enable or disable merge trains. | -| `mirror_trigger_builds` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Pull mirroring triggers builds. | -| `mirror` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Enables pull mirroring in a project. | -| `namespace_id` | integer | **{dotted-circle}** No | Namespace for the new project (defaults to the current user's namespace). | -| `only_allow_merge_if_all_discussions_are_resolved` | boolean | **{dotted-circle}** No | Set whether merge requests can only be merged when all the discussions are resolved. | -| `only_allow_merge_if_pipeline_succeeds` | boolean | **{dotted-circle}** No | Set whether merge requests can only be merged with successful pipelines. This setting is named [**Pipelines must succeed**](../user/project/merge_requests/merge_when_pipeline_succeeds.md#require-a-successful-pipeline-for-merge) in the project settings. | -| `packages_enabled` | boolean | **{dotted-circle}** No | Enable or disable packages repository feature. | -| `pages_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, `enabled`, or `public`. | -| `printing_merge_request_link_enabled` | boolean | **{dotted-circle}** No | Show link to create/view merge request when pushing from the command line. | -| `public_builds` | boolean | **{dotted-circle}** No | If `true`, jobs can be viewed by non-project members. | -| `releases_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `environments_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `feature_flags_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `infrastructure_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `monitor_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `remove_source_branch_after_merge` | boolean | **{dotted-circle}** No | Enable `Delete source branch` option by default for all new merge requests. | -| `repository_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `repository_storage` | string | **{dotted-circle}** No | Which storage shard the repository is on. _(administrator only)_ | -| `request_access_enabled` | boolean | **{dotted-circle}** No | Allow users to request member access. | -| `requirements_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private` or `enabled` | -| `resolve_outdated_diff_discussions` | boolean | **{dotted-circle}** No | Automatically resolve merge request diffs discussions on lines changed with a push. | -| `security_and_compliance_access_level` | string | **{dotted-circle}** No | (GitLab 14.9 and later) Security and compliance access level. One of `disabled`, `private`, or `enabled`. | -| `shared_runners_enabled` | boolean | **{dotted-circle}** No | Enable shared runners for this project. | -| `show_default_award_emojis` | boolean | **{dotted-circle}** No | Show default award emojis. | -| `snippets_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `snippets_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable snippets for this project. Use `snippets_access_level` instead. | -| `squash_option` | string | **{dotted-circle}** No | One of `never`, `always`, `default_on`, or `default_off`. | -| `tag_list` | array | **{dotted-circle}** No | _([Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0)_ The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. | -| `template_name` | string | **{dotted-circle}** No | When used without `use_custom_template`, name of a [built-in project template](../user/project/index.md#create-a-project-from-a-built-in-template). When used with `use_custom_template`, name of a custom project template. | -| `template_project_id` **(PREMIUM ALL)** | integer | **{dotted-circle}** No | When used with `use_custom_template`, project ID of a custom project template. Using a project ID is preferable to using `template_name` since `template_name` may be ambiguous. | -| `topics` | array | **{dotted-circle}** No | The list of topics for a project; put array of topics, that should be finally assigned to a project. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0.)_ | -| `use_custom_template` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Use either custom [instance](../administration/custom_project_templates.md) or [group](../user/group/custom_project_templates.md) (with `group_with_project_templates_id`) project template. | -| `visibility` | string | **{dotted-circle}** No | See [project visibility level](#project-visibility-level). | -| `wiki_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `wiki_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable wiki for this project. Use `wiki_access_level` instead. | +| `name` | string | Yes (if `path` isn't provided) | The name of the new project. Equals path if not provided. | +| `path` | string | Yes (if `name` isn't provided) | Repository name for new project. Generated based on name if not provided (generated as lowercase with dashes). Starting with GitLab 14.9, path must not start or end with a special character and must not contain consecutive special characters. | +| `allow_merge_on_skipped_pipeline` | boolean | No | Set whether or not merge requests can be merged with skipped jobs. | +| `only_allow_merge_if_all_status_checks_passed` **(ULTIMATE ALL)** | boolean | No | Indicates that merges of merge requests should be blocked unless all status checks have passed. Defaults to false. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/369859) in GitLab 15.5 with feature flag `only_allow_merge_if_all_status_checks_passed` disabled by default. | +| `analytics_access_level` | string | No | One of `disabled`, `private` or `enabled` | +| `approvals_before_merge` **(PREMIUM ALL)** | integer | No | How many approvers should approve merge requests by default. To configure approval rules, see [Merge request approvals API](merge_request_approvals.md). [Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/353097) in GitLab 16.0. | +| `auto_cancel_pending_pipelines` | string | No | Auto-cancel pending pipelines. This action toggles between an enabled state and a disabled state; it is not a boolean. | +| `auto_devops_deploy_strategy` | string | No | Auto Deploy strategy (`continuous`, `manual` or `timed_incremental`). | +| `auto_devops_enabled` | boolean | No | Enable Auto DevOps for this project. | +| `autoclose_referenced_issues` | boolean | No | Set whether auto-closing referenced issues on default branch. | +| `avatar` | mixed | No | Image file for avatar of the project. | +| `build_git_strategy` | string | No | The Git strategy. Defaults to `fetch`. | +| `build_timeout` | integer | No | The maximum amount of time, in seconds, that a job can run. | +| `builds_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `ci_config_path` | string | No | The path to CI configuration file. | +| `container_expiration_policy_attributes` | hash | No | Update the image cleanup policy for this project. Accepts: `cadence` (string), `keep_n` (integer), `older_than` (string), `name_regex` (string), `name_regex_delete` (string), `name_regex_keep` (string), `enabled` (boolean). See the [Container Registry](../user/packages/container_registry/reduce_container_registry_storage.md#use-the-cleanup-policy-api) documentation for more information on `cadence`, `keep_n` and `older_than` values. | +| `container_registry_access_level` | string | No | Set visibility of container registry, for this project, to one of `disabled`, `private` or `enabled`. | +| `container_registry_enabled` | boolean | No | _(Deprecated)_ Enable container registry for this project. Use `container_registry_access_level` instead. | +| `default_branch` | string | No | The [default branch](../user/project/repository/branches/default.md) name. Requires `initialize_with_readme` to be `true`. | +| `description` | string | No | Short project description. | +| `emails_disabled` | boolean | No | _(Deprecated)_ Disable email notifications. Use `emails_enabled` instead| +| `emails_enabled` | boolean | No | Enable email notifications. | +| `external_authorization_classification_label` **(PREMIUM ALL)** | string | No | The classification label for the project. | +| `forking_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `group_runners_enabled` | boolean | No | Enable group runners for this project. | +| `group_with_project_templates_id` **(PREMIUM ALL)** | integer | No | For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires `use_custom_template` to be true. | +| `import_url` | string | No | URL to import repository from. When the URL value isn't empty, you must not set `initialize_with_readme` to `true`. Doing so might result in the [following error](https://gitlab.com/gitlab-org/gitlab/-/issues/360266): `not a git repository`. | +| `initialize_with_readme` | boolean | No | Whether to create a Git repository with just a `README.md` file. Default is `false`. When this boolean is true, you must not pass `import_url` or other attributes of this endpoint which specify alternative contents for the repository. Doing so might result in the [following error](https://gitlab.com/gitlab-org/gitlab/-/issues/360266): `not a git repository`. | +| `issues_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `issues_enabled` | boolean | No | _(Deprecated)_ Enable issues for this project. Use `issues_access_level` instead. | +| `jobs_enabled` | boolean | No | _(Deprecated)_ Enable jobs for this project. Use `builds_access_level` instead. | +| `lfs_enabled` | boolean | No | Enable LFS. | +| `merge_method` | string | No | Set the [merge method](#project-merge-method) used. | +| `merge_pipelines_enabled` | boolean | No | Enable or disable merge pipelines. | +| `merge_requests_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `merge_requests_enabled` | boolean | No | _(Deprecated)_ Enable merge requests for this project. Use `merge_requests_access_level` instead. | +| `merge_trains_enabled` | boolean | No | Enable or disable merge trains. | +| `mirror_trigger_builds` **(PREMIUM ALL)** | boolean | No | Pull mirroring triggers builds. | +| `mirror` **(PREMIUM ALL)** | boolean | No | Enables pull mirroring in a project. | +| `namespace_id` | integer | No | Namespace for the new project (defaults to the current user's namespace). | +| `only_allow_merge_if_all_discussions_are_resolved` | boolean | No | Set whether merge requests can only be merged when all the discussions are resolved. | +| `only_allow_merge_if_pipeline_succeeds` | boolean | No | Set whether merge requests can only be merged with successful pipelines. This setting is named [**Pipelines must succeed**](../user/project/merge_requests/merge_when_pipeline_succeeds.md#require-a-successful-pipeline-for-merge) in the project settings. | +| `packages_enabled` | boolean | No | Enable or disable packages repository feature. | +| `pages_access_level` | string | No | One of `disabled`, `private`, `enabled`, or `public`. | +| `printing_merge_request_link_enabled` | boolean | No | Show link to create/view merge request when pushing from the command line. | +| `public_builds` | boolean | No | If `true`, jobs can be viewed by non-project members. | +| `releases_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `environments_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `feature_flags_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `infrastructure_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `monitor_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `remove_source_branch_after_merge` | boolean | No | Enable `Delete source branch` option by default for all new merge requests. | +| `repository_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `repository_storage` | string | No | Which storage shard the repository is on. _(administrator only)_ | +| `request_access_enabled` | boolean | No | Allow users to request member access. | +| `requirements_access_level` | string | No | One of `disabled`, `private` or `enabled` | +| `resolve_outdated_diff_discussions` | boolean | No | Automatically resolve merge request diffs discussions on lines changed with a push. | +| `security_and_compliance_access_level` | string | No | (GitLab 14.9 and later) Security and compliance access level. One of `disabled`, `private`, or `enabled`. | +| `shared_runners_enabled` | boolean | No | Enable shared runners for this project. | +| `show_default_award_emojis` | boolean | No | Show default award emojis. | +| `snippets_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `snippets_enabled` | boolean | No | _(Deprecated)_ Enable snippets for this project. Use `snippets_access_level` instead. | +| `squash_option` | string | No | One of `never`, `always`, `default_on`, or `default_off`. | +| `tag_list` | array | No | _([Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0)_ The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. | +| `template_name` | string | No | When used without `use_custom_template`, name of a [built-in project template](../user/project/index.md#create-a-project-from-a-built-in-template). When used with `use_custom_template`, name of a custom project template. | +| `template_project_id` **(PREMIUM ALL)** | integer | No | When used with `use_custom_template`, project ID of a custom project template. Using a project ID is preferable to using `template_name` since `template_name` may be ambiguous. | +| `topics` | array | No | The list of topics for a project; put array of topics, that should be finally assigned to a project. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0.)_ | +| `use_custom_template` **(PREMIUM ALL)** | boolean | No | Use either custom [instance](../administration/custom_project_templates.md) or [group](../user/group/custom_project_templates.md) (with `group_with_project_templates_id`) project template. | +| `visibility` | string | No | See [project visibility level](#project-visibility-level). | +| `wiki_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `wiki_enabled` | boolean | No | _(Deprecated)_ Enable wiki for this project. Use `wiki_access_level` instead. | ## Create project for user @@ -1580,79 +1580,79 @@ POST /projects/user/:user_id | Attribute | Type | Required | Description | |-------------------------------------------------------------|---------|------------------------|-------------| -| `user_id` | integer | **{check-circle}** Yes | The user ID of the project owner. | -| `name` | string | **{check-circle}** Yes | The name of the new project. | -| `allow_merge_on_skipped_pipeline` | boolean | **{dotted-circle}** No | Set whether or not merge requests can be merged with skipped jobs. | -| `only_allow_merge_if_all_status_checks_passed` **(ULTIMATE ALL)** | boolean | **{dotted-circle}** No | Indicates that merges of merge requests should be blocked unless all status checks have passed. Defaults to false. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/369859) in GitLab 15.5 with feature flag `only_allow_merge_if_all_status_checks_passed` disabled by default. | -| `analytics_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private` or `enabled` | -| `approvals_before_merge` **(PREMIUM ALL)** | integer | **{dotted-circle}** No | How many approvers should approve merge requests by default. [Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/353097) in GitLab 16.0. To configure approval rules, see [Merge request approvals API](merge_request_approvals.md). | -| `auto_cancel_pending_pipelines` | string | **{dotted-circle}** No | Auto-cancel pending pipelines. This action toggles between an enabled state and a disabled state; it is not a boolean. | -| `auto_devops_deploy_strategy` | string | **{dotted-circle}** No | Auto Deploy strategy (`continuous`, `manual` or `timed_incremental`). | -| `auto_devops_enabled` | boolean | **{dotted-circle}** No | Enable Auto DevOps for this project. | -| `autoclose_referenced_issues` | boolean | **{dotted-circle}** No | Set whether auto-closing referenced issues on default branch. | -| `avatar` | mixed | **{dotted-circle}** No | Image file for avatar of the project. | -| `build_git_strategy` | string | **{dotted-circle}** No | The Git strategy. Defaults to `fetch`. | -| `build_timeout` | integer | **{dotted-circle}** No | The maximum amount of time, in seconds, that a job can run. | -| `builds_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `ci_config_path` | string | **{dotted-circle}** No | The path to CI configuration file. | -| `container_registry_access_level` | string | **{dotted-circle}** No | Set visibility of container registry, for this project, to one of `disabled`, `private` or `enabled`. | -| `container_registry_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable container registry for this project. Use `container_registry_access_level` instead. | -| `default_branch` | string | **{dotted-circle}** No | The [default branch](../user/project/repository/branches/default.md) name. Requires `initialize_with_readme` to be `true`. | -| `description` | string | **{dotted-circle}** No | Short project description. | -| `emails_disabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Disable email notifications. Use `emails_enabled` instead| -| `emails_enabled` | boolean | **{dotted-circle}** No | Enable email notifications. | -| `enforce_auth_checks_on_uploads` | boolean | **{dotted-circle}** No | Enforce [auth checks](../security/user_file_uploads.md#enable-authorization-checks-for-all-media-files) on uploads. | -| `external_authorization_classification_label` **(PREMIUM ALL)** | string | **{dotted-circle}** No | The classification label for the project. | -| `forking_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `group_runners_enabled` | boolean | **{dotted-circle}** No | Enable group runners for this project. | -| `group_with_project_templates_id` **(PREMIUM ALL)** | integer | **{dotted-circle}** No | For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires `use_custom_template` to be true. | -| `import_url` | string | **{dotted-circle}** No | URL to import repository from. | -| `initialize_with_readme` | boolean | **{dotted-circle}** No | `false` by default. | -| `issues_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `issues_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable issues for this project. Use `issues_access_level` instead. | -| `jobs_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable jobs for this project. Use `builds_access_level` instead. | -| `lfs_enabled` | boolean | **{dotted-circle}** No | Enable LFS. | -| `merge_commit_template` | string | **{dotted-circle}** No | [Template](../user/project/merge_requests/commit_templates.md) used to create merge commit message in merge requests. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/20263) in GitLab 14.5.)_ | -| `merge_method` | string | **{dotted-circle}** No | Set the [merge method](#project-merge-method) used. | -| `merge_requests_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `merge_requests_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable merge requests for this project. Use `merge_requests_access_level` instead. | -| `mirror_trigger_builds` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Pull mirroring triggers builds. | -| `mirror` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Enables pull mirroring in a project. | -| `namespace_id` | integer | **{dotted-circle}** No | Namespace for the new project (defaults to the current user's namespace). | -| `only_allow_merge_if_all_discussions_are_resolved` | boolean | **{dotted-circle}** No | Set whether merge requests can only be merged when all the discussions are resolved. | -| `only_allow_merge_if_pipeline_succeeds` | boolean | **{dotted-circle}** No | Set whether merge requests can only be merged with successful jobs. | -| `packages_enabled` | boolean | **{dotted-circle}** No | Enable or disable packages repository feature. | -| `pages_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, `enabled`, or `public`. | -| `path` | string | **{dotted-circle}** No | Custom repository name for new project. By default generated based on name. | -| `printing_merge_request_link_enabled` | boolean | **{dotted-circle}** No | Show link to create/view merge request when pushing from the command line. | -| `public_builds` | boolean | **{dotted-circle}** No | If `true`, jobs can be viewed by non-project-members. | -| `releases_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `environments_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `feature_flags_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `infrastructure_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `monitor_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `remove_source_branch_after_merge` | boolean | **{dotted-circle}** No | Enable `Delete source branch` option by default for all new merge requests. | -| `repository_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `repository_storage` | string | **{dotted-circle}** No | Which storage shard the repository is on. _(administrators only)_ | -| `request_access_enabled` | boolean | **{dotted-circle}** No | Allow users to request member access. | -| `requirements_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, `enabled` or `public` | -| `resolve_outdated_diff_discussions` | boolean | **{dotted-circle}** No | Automatically resolve merge request diffs discussions on lines changed with a push. | -| `security_and_compliance_access_level` | string | **{dotted-circle}** No | (GitLab 14.9 and later) Security and compliance access level. One of `disabled`, `private`, or `enabled`. | -| `shared_runners_enabled` | boolean | **{dotted-circle}** No | Enable shared runners for this project. | -| `show_default_award_emojis` | boolean | **{dotted-circle}** No | Show default award emojis. | -| `snippets_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `snippets_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable snippets for this project. Use `snippets_access_level` instead. | -| `issue_branch_template` | string | **{dotted-circle}** No | Template used to suggest names for [branches created from issues](../user/project/merge_requests/creating_merge_requests.md#from-an-issue). _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/21243) in GitLab 15.6.)_ | -| `squash_commit_template` | string | **{dotted-circle}** No | [Template](../user/project/merge_requests/commit_templates.md) used to create squash commit message in merge requests. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/345275) in GitLab 14.6.)_ | -| `squash_option` | string | **{dotted-circle}** No | One of `never`, `always`, `default_on`, or `default_off`. | -| `suggestion_commit_message` | string | **{dotted-circle}** No | The commit message used to apply merge request [suggestions](../user/project/merge_requests/reviews/suggestions.md). | -| `tag_list` | array | **{dotted-circle}** No | _([Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0)_ The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. | -| `template_name` | string | **{dotted-circle}** No | When used without `use_custom_template`, name of a [built-in project template](../user/project/index.md#create-a-project-from-a-built-in-template). When used with `use_custom_template`, name of a custom project template. | -| `topics` | array | **{dotted-circle}** No | The list of topics for the project. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0.)_ | -| `use_custom_template` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Use either custom [instance](../administration/custom_project_templates.md) or [group](../user/group/custom_project_templates.md) (with `group_with_project_templates_id`) project template. | -| `visibility` | string | **{dotted-circle}** No | See [project visibility level](#project-visibility-level). | -| `wiki_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `wiki_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable wiki for this project. Use `wiki_access_level` instead. | +| `user_id` | integer | Yes | The user ID of the project owner. | +| `name` | string | Yes | The name of the new project. | +| `allow_merge_on_skipped_pipeline` | boolean | No | Set whether or not merge requests can be merged with skipped jobs. | +| `only_allow_merge_if_all_status_checks_passed` **(ULTIMATE ALL)** | boolean | No | Indicates that merges of merge requests should be blocked unless all status checks have passed. Defaults to false. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/369859) in GitLab 15.5 with feature flag `only_allow_merge_if_all_status_checks_passed` disabled by default. | +| `analytics_access_level` | string | No | One of `disabled`, `private` or `enabled` | +| `approvals_before_merge` **(PREMIUM ALL)** | integer | No | How many approvers should approve merge requests by default. [Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/353097) in GitLab 16.0. To configure approval rules, see [Merge request approvals API](merge_request_approvals.md). | +| `auto_cancel_pending_pipelines` | string | No | Auto-cancel pending pipelines. This action toggles between an enabled state and a disabled state; it is not a boolean. | +| `auto_devops_deploy_strategy` | string | No | Auto Deploy strategy (`continuous`, `manual` or `timed_incremental`). | +| `auto_devops_enabled` | boolean | No | Enable Auto DevOps for this project. | +| `autoclose_referenced_issues` | boolean | No | Set whether auto-closing referenced issues on default branch. | +| `avatar` | mixed | No | Image file for avatar of the project. | +| `build_git_strategy` | string | No | The Git strategy. Defaults to `fetch`. | +| `build_timeout` | integer | No | The maximum amount of time, in seconds, that a job can run. | +| `builds_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `ci_config_path` | string | No | The path to CI configuration file. | +| `container_registry_access_level` | string | No | Set visibility of container registry, for this project, to one of `disabled`, `private` or `enabled`. | +| `container_registry_enabled` | boolean | No | _(Deprecated)_ Enable container registry for this project. Use `container_registry_access_level` instead. | +| `default_branch` | string | No | The [default branch](../user/project/repository/branches/default.md) name. Requires `initialize_with_readme` to be `true`. | +| `description` | string | No | Short project description. | +| `emails_disabled` | boolean | No | _(Deprecated)_ Disable email notifications. Use `emails_enabled` instead| +| `emails_enabled` | boolean | No | Enable email notifications. | +| `enforce_auth_checks_on_uploads` | boolean | No | Enforce [auth checks](../security/user_file_uploads.md#enable-authorization-checks-for-all-media-files) on uploads. | +| `external_authorization_classification_label` **(PREMIUM ALL)** | string | No | The classification label for the project. | +| `forking_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `group_runners_enabled` | boolean | No | Enable group runners for this project. | +| `group_with_project_templates_id` **(PREMIUM ALL)** | integer | No | For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires `use_custom_template` to be true. | +| `import_url` | string | No | URL to import repository from. | +| `initialize_with_readme` | boolean | No | `false` by default. | +| `issues_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `issues_enabled` | boolean | No | _(Deprecated)_ Enable issues for this project. Use `issues_access_level` instead. | +| `jobs_enabled` | boolean | No | _(Deprecated)_ Enable jobs for this project. Use `builds_access_level` instead. | +| `lfs_enabled` | boolean | No | Enable LFS. | +| `merge_commit_template` | string | No | [Template](../user/project/merge_requests/commit_templates.md) used to create merge commit message in merge requests. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/20263) in GitLab 14.5.)_ | +| `merge_method` | string | No | Set the [merge method](#project-merge-method) used. | +| `merge_requests_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `merge_requests_enabled` | boolean | No | _(Deprecated)_ Enable merge requests for this project. Use `merge_requests_access_level` instead. | +| `mirror_trigger_builds` **(PREMIUM ALL)** | boolean | No | Pull mirroring triggers builds. | +| `mirror` **(PREMIUM ALL)** | boolean | No | Enables pull mirroring in a project. | +| `namespace_id` | integer | No | Namespace for the new project (defaults to the current user's namespace). | +| `only_allow_merge_if_all_discussions_are_resolved` | boolean | No | Set whether merge requests can only be merged when all the discussions are resolved. | +| `only_allow_merge_if_pipeline_succeeds` | boolean | No | Set whether merge requests can only be merged with successful jobs. | +| `packages_enabled` | boolean | No | Enable or disable packages repository feature. | +| `pages_access_level` | string | No | One of `disabled`, `private`, `enabled`, or `public`. | +| `path` | string | No | Custom repository name for new project. By default generated based on name. | +| `printing_merge_request_link_enabled` | boolean | No | Show link to create/view merge request when pushing from the command line. | +| `public_builds` | boolean | No | If `true`, jobs can be viewed by non-project-members. | +| `releases_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `environments_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `feature_flags_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `infrastructure_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `monitor_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `remove_source_branch_after_merge` | boolean | No | Enable `Delete source branch` option by default for all new merge requests. | +| `repository_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `repository_storage` | string | No | Which storage shard the repository is on. _(administrators only)_ | +| `request_access_enabled` | boolean | No | Allow users to request member access. | +| `requirements_access_level` | string | No | One of `disabled`, `private`, `enabled` or `public` | +| `resolve_outdated_diff_discussions` | boolean | No | Automatically resolve merge request diffs discussions on lines changed with a push. | +| `security_and_compliance_access_level` | string | No | (GitLab 14.9 and later) Security and compliance access level. One of `disabled`, `private`, or `enabled`. | +| `shared_runners_enabled` | boolean | No | Enable shared runners for this project. | +| `show_default_award_emojis` | boolean | No | Show default award emojis. | +| `snippets_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `snippets_enabled` | boolean | No | _(Deprecated)_ Enable snippets for this project. Use `snippets_access_level` instead. | +| `issue_branch_template` | string | No | Template used to suggest names for [branches created from issues](../user/project/merge_requests/creating_merge_requests.md#from-an-issue). _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/21243) in GitLab 15.6.)_ | +| `squash_commit_template` | string | No | [Template](../user/project/merge_requests/commit_templates.md) used to create squash commit message in merge requests. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/345275) in GitLab 14.6.)_ | +| `squash_option` | string | No | One of `never`, `always`, `default_on`, or `default_off`. | +| `suggestion_commit_message` | string | No | The commit message used to apply merge request [suggestions](../user/project/merge_requests/reviews/suggestions.md). | +| `tag_list` | array | No | _([Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0)_ The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. | +| `template_name` | string | No | When used without `use_custom_template`, name of a [built-in project template](../user/project/index.md#create-a-project-from-a-built-in-template). When used with `use_custom_template`, name of a custom project template. | +| `topics` | array | No | The list of topics for the project. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0.)_ | +| `use_custom_template` **(PREMIUM ALL)** | boolean | No | Use either custom [instance](../administration/custom_project_templates.md) or [group](../user/group/custom_project_templates.md) (with `group_with_project_templates_id`) project template. | +| `visibility` | string | No | See [project visibility level](#project-visibility-level). | +| `wiki_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `wiki_enabled` | boolean | No | _(Deprecated)_ Enable wiki for this project. Use `wiki_access_level` instead. | ## Edit project @@ -1681,92 +1681,92 @@ Supported attributes: | Attribute | Type | Required | Description | |-------------------------------------------------------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `allow_merge_on_skipped_pipeline` | boolean | **{dotted-circle}** No | Set whether or not merge requests can be merged with skipped jobs. | -| `allow_pipeline_trigger_approve_deployment` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Set whether or not a pipeline triggerer is allowed to approve deployments. | -| `only_allow_merge_if_all_status_checks_passed` **(ULTIMATE ALL)** | boolean | **{dotted-circle}** No | Indicates that merges of merge requests should be blocked unless all status checks have passed. Defaults to false.<br/><br/>[Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/369859) in GitLab 15.5 with feature flag `only_allow_merge_if_all_status_checks_passed` disabled by default. The feature flag was enabled by default in GitLab 15.9. | -| `analytics_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private` or `enabled` | -| `approvals_before_merge` **(PREMIUM ALL)** | integer | **{dotted-circle}** No | How many approvers should approve merge requests by default. [Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/353097) in GitLab 16.0. To configure approval rules, see [Merge request approvals API](merge_request_approvals.md). | -| `auto_cancel_pending_pipelines` | string | **{dotted-circle}** No | Auto-cancel pending pipelines. This action toggles between an enabled state and a disabled state; it is not a boolean. | -| `auto_devops_deploy_strategy` | string | **{dotted-circle}** No | Auto Deploy strategy (`continuous`, `manual`, or `timed_incremental`). | -| `auto_devops_enabled` | boolean | **{dotted-circle}** No | Enable Auto DevOps for this project. | -| `autoclose_referenced_issues` | boolean | **{dotted-circle}** No | Set whether auto-closing referenced issues on default branch. | -| `avatar` | mixed | **{dotted-circle}** No | Image file for avatar of the project. | -| `build_git_strategy` | string | **{dotted-circle}** No | The Git strategy. Defaults to `fetch`. | -| `build_timeout` | integer | **{dotted-circle}** No | The maximum amount of time, in seconds, that a job can run. | -| `builds_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `ci_config_path` | string | **{dotted-circle}** No | The path to CI configuration file. | -| `ci_default_git_depth` | integer | **{dotted-circle}** No | Default number of revisions for [shallow cloning](../ci/pipelines/settings.md#limit-the-number-of-changes-fetched-during-clone). | -| `ci_forward_deployment_enabled` | boolean | **{dotted-circle}** No | Enable or disable [prevent outdated deployment jobs](../ci/pipelines/settings.md#prevent-outdated-deployment-jobs). | -| `ci_forward_deployment_rollback_allowed` | boolean | **{dotted-circle}** No | Enable or disable [allow job retries for rollback deployments](../ci/pipelines/settings.md#prevent-outdated-deployment-jobs). | -| `ci_allow_fork_pipelines_to_run_in_parent_project` | boolean | **{dotted-circle}** No | Enable or disable [running pipelines in the parent project for merge requests from forks](../ci/pipelines/merge_request_pipelines.md#run-pipelines-in-the-parent-project). _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/325189) in GitLab 15.3.)_ | -| `ci_separated_caches` | boolean | **{dotted-circle}** No | Set whether or not caches should be [separated](../ci/caching/index.md#cache-key-names) by branch protection status. | -| `container_expiration_policy_attributes` | hash | **{dotted-circle}** No | Update the image cleanup policy for this project. Accepts: `cadence` (string), `keep_n` (integer), `older_than` (string), `name_regex` (string), `name_regex_delete` (string), `name_regex_keep` (string), `enabled` (boolean). | -| `container_registry_access_level` | string | **{dotted-circle}** No | Set visibility of container registry, for this project, to one of `disabled`, `private` or `enabled`. | -| `container_registry_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable container registry for this project. Use `container_registry_access_level` instead. | -| `default_branch` | string | **{dotted-circle}** No | The [default branch](../user/project/repository/branches/default.md) name. | -| `description` | string | **{dotted-circle}** No | Short project description. | -| `emails_disabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Disable email notifications. Use `emails_enabled` instead| -| `emails_enabled` | boolean | **{dotted-circle}** No | Enable email notifications. | -| `enforce_auth_checks_on_uploads` | boolean | **{dotted-circle}** No | Enforce [auth checks](../security/user_file_uploads.md#enable-authorization-checks-for-all-media-files) on uploads. | -| `external_authorization_classification_label` **(PREMIUM ALL)** | string | **{dotted-circle}** No | The classification label for the project. | -| `forking_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `group_runners_enabled` | boolean | **{dotted-circle}** No | Enable group runners for this project. | -| `import_url` | string | **{dotted-circle}** No | URL the repository was imported from. | -| `issues_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `issues_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable issues for this project. Use `issues_access_level` instead. | -| `issues_template` **(PREMIUM ALL)** | string | **{dotted-circle}** No | Default description for Issues. Description is parsed with GitLab Flavored Markdown. See [Templates for issues and merge requests](#templates-for-issues-and-merge-requests). | -| `jobs_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable jobs for this project. Use `builds_access_level` instead. | -| `keep_latest_artifact` | boolean | **{dotted-circle}** No | Disable or enable the ability to keep the latest artifact for this project. | -| `lfs_enabled` | boolean | **{dotted-circle}** No | Enable LFS. | -| `merge_commit_template` | string | **{dotted-circle}** No | [Template](../user/project/merge_requests/commit_templates.md) used to create merge commit message in merge requests. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/20263) in GitLab 14.5.)_ | -| `merge_method` | string | **{dotted-circle}** No | Set the [merge method](#project-merge-method) used. | -| `merge_pipelines_enabled` | boolean | **{dotted-circle}** No | Enable or disable merge pipelines. | -| `merge_requests_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `merge_requests_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable merge requests for this project. Use `merge_requests_access_level` instead. | -| `merge_requests_template` **(PREMIUM ALL)** | string | **{dotted-circle}** No | Default description for merge requests. Description is parsed with GitLab Flavored Markdown. See [Templates for issues and merge requests](#templates-for-issues-and-merge-requests). | -| `merge_trains_enabled` | boolean | **{dotted-circle}** No | Enable or disable merge trains. | -| `mirror_overwrites_diverged_branches` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Pull mirror overwrites diverged branches. | -| `mirror_trigger_builds` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Pull mirroring triggers builds. | -| `mirror_user_id` **(PREMIUM ALL)** | integer | **{dotted-circle}** No | User responsible for all the activity surrounding a pull mirror event. _(administrators only)_ | -| `mirror` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Enables pull mirroring in a project. | -| `mr_default_target_self` | boolean | **{dotted-circle}** No | For forked projects, target merge requests to this project. If `false`, the target is the upstream project. | -| `name` | string | **{dotted-circle}** No | The name of the project. | -| `only_allow_merge_if_all_discussions_are_resolved` | boolean | **{dotted-circle}** No | Set whether merge requests can only be merged when all the discussions are resolved. | -| `only_allow_merge_if_pipeline_succeeds` | boolean | **{dotted-circle}** No | Set whether merge requests can only be merged with successful jobs. | -| `only_mirror_protected_branches` **(PREMIUM ALL)** | boolean | **{dotted-circle}** No | Only mirror protected branches. | -| `packages_enabled` | boolean | **{dotted-circle}** No | Enable or disable packages repository feature. | -| `pages_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, `enabled`, or `public`. | -| `path` | string | **{dotted-circle}** No | Custom repository name for the project. By default generated based on name. | -| `printing_merge_request_link_enabled` | boolean | **{dotted-circle}** No | Show link to create/view merge request when pushing from the command line. | -| `public_builds` | boolean | **{dotted-circle}** No | If `true`, jobs can be viewed by non-project members. | -| `releases_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `environments_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `feature_flags_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `infrastructure_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `monitor_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `remove_source_branch_after_merge` | boolean | **{dotted-circle}** No | Enable `Delete source branch` option by default for all new merge requests. | -| `repository_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `repository_storage` | string | **{dotted-circle}** No | Which storage shard the repository is on. _(administrators only)_ | -| `request_access_enabled` | boolean | **{dotted-circle}** No | Allow users to request member access. | -| `requirements_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, `enabled` or `public` | -| `resolve_outdated_diff_discussions` | boolean | **{dotted-circle}** No | Automatically resolve merge request diffs discussions on lines changed with a push. | -| `restrict_user_defined_variables` | boolean | **{dotted-circle}** No | Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline. For example when the pipeline is triggered in the UI, with the API, or by a trigger token. | -| `security_and_compliance_access_level` | string | **{dotted-circle}** No | (GitLab 14.9 and later) Security and compliance access level. One of `disabled`, `private`, or `enabled`. | -| `service_desk_enabled` | boolean | **{dotted-circle}** No | Enable or disable Service Desk feature. | -| `shared_runners_enabled` | boolean | **{dotted-circle}** No | Enable shared runners for this project. | -| `show_default_award_emojis` | boolean | **{dotted-circle}** No | Show default award emojis. | -| `snippets_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `snippets_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable snippets for this project. Use `snippets_access_level` instead. | -| `issue_branch_template` | string | **{dotted-circle}** No | Template used to suggest names for [branches created from issues](../user/project/merge_requests/creating_merge_requests.md#from-an-issue). _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/21243) in GitLab 15.6.)_ | -| `squash_commit_template` | string | **{dotted-circle}** No | [Template](../user/project/merge_requests/commit_templates.md) used to create squash commit message in merge requests. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/345275) in GitLab 14.6.)_ | -| `squash_option` | string | **{dotted-circle}** No | One of `never`, `always`, `default_on`, or `default_off`. | -| `suggestion_commit_message` | string | **{dotted-circle}** No | The commit message used to apply merge request suggestions. | -| `tag_list` | array | **{dotted-circle}** No | _([Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0)_ The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. | -| `topics` | array | **{dotted-circle}** No | The list of topics for the project. This replaces any existing topics that are already added to the project. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0.)_ | -| `visibility` | string | **{dotted-circle}** No | See [project visibility level](#project-visibility-level). | -| `wiki_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. | -| `wiki_enabled` | boolean | **{dotted-circle}** No | _(Deprecated)_ Enable wiki for this project. Use `wiki_access_level` instead. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `allow_merge_on_skipped_pipeline` | boolean | No | Set whether or not merge requests can be merged with skipped jobs. | +| `allow_pipeline_trigger_approve_deployment` **(PREMIUM ALL)** | boolean | No | Set whether or not a pipeline triggerer is allowed to approve deployments. | +| `only_allow_merge_if_all_status_checks_passed` **(ULTIMATE ALL)** | boolean | No | Indicates that merges of merge requests should be blocked unless all status checks have passed. Defaults to false.<br/><br/>[Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/369859) in GitLab 15.5 with feature flag `only_allow_merge_if_all_status_checks_passed` disabled by default. The feature flag was enabled by default in GitLab 15.9. | +| `analytics_access_level` | string | No | One of `disabled`, `private` or `enabled` | +| `approvals_before_merge` **(PREMIUM ALL)** | integer | No | How many approvers should approve merge requests by default. [Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/353097) in GitLab 16.0. To configure approval rules, see [Merge request approvals API](merge_request_approvals.md). | +| `auto_cancel_pending_pipelines` | string | No | Auto-cancel pending pipelines. This action toggles between an enabled state and a disabled state; it is not a boolean. | +| `auto_devops_deploy_strategy` | string | No | Auto Deploy strategy (`continuous`, `manual`, or `timed_incremental`). | +| `auto_devops_enabled` | boolean | No | Enable Auto DevOps for this project. | +| `autoclose_referenced_issues` | boolean | No | Set whether auto-closing referenced issues on default branch. | +| `avatar` | mixed | No | Image file for avatar of the project. | +| `build_git_strategy` | string | No | The Git strategy. Defaults to `fetch`. | +| `build_timeout` | integer | No | The maximum amount of time, in seconds, that a job can run. | +| `builds_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `ci_config_path` | string | No | The path to CI configuration file. | +| `ci_default_git_depth` | integer | No | Default number of revisions for [shallow cloning](../ci/pipelines/settings.md#limit-the-number-of-changes-fetched-during-clone). | +| `ci_forward_deployment_enabled` | boolean | No | Enable or disable [prevent outdated deployment jobs](../ci/pipelines/settings.md#prevent-outdated-deployment-jobs). | +| `ci_forward_deployment_rollback_allowed` | boolean | No | Enable or disable [allow job retries for rollback deployments](../ci/pipelines/settings.md#prevent-outdated-deployment-jobs). | +| `ci_allow_fork_pipelines_to_run_in_parent_project` | boolean | No | Enable or disable [running pipelines in the parent project for merge requests from forks](../ci/pipelines/merge_request_pipelines.md#run-pipelines-in-the-parent-project). _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/325189) in GitLab 15.3.)_ | +| `ci_separated_caches` | boolean | No | Set whether or not caches should be [separated](../ci/caching/index.md#cache-key-names) by branch protection status. | +| `container_expiration_policy_attributes` | hash | No | Update the image cleanup policy for this project. Accepts: `cadence` (string), `keep_n` (integer), `older_than` (string), `name_regex` (string), `name_regex_delete` (string), `name_regex_keep` (string), `enabled` (boolean). | +| `container_registry_access_level` | string | No | Set visibility of container registry, for this project, to one of `disabled`, `private` or `enabled`. | +| `container_registry_enabled` | boolean | No | _(Deprecated)_ Enable container registry for this project. Use `container_registry_access_level` instead. | +| `default_branch` | string | No | The [default branch](../user/project/repository/branches/default.md) name. | +| `description` | string | No | Short project description. | +| `emails_disabled` | boolean | No | _(Deprecated)_ Disable email notifications. Use `emails_enabled` instead| +| `emails_enabled` | boolean | No | Enable email notifications. | +| `enforce_auth_checks_on_uploads` | boolean | No | Enforce [auth checks](../security/user_file_uploads.md#enable-authorization-checks-for-all-media-files) on uploads. | +| `external_authorization_classification_label` **(PREMIUM ALL)** | string | No | The classification label for the project. | +| `forking_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `group_runners_enabled` | boolean | No | Enable group runners for this project. | +| `import_url` | string | No | URL the repository was imported from. | +| `issues_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `issues_enabled` | boolean | No | _(Deprecated)_ Enable issues for this project. Use `issues_access_level` instead. | +| `issues_template` **(PREMIUM ALL)** | string | No | Default description for Issues. Description is parsed with GitLab Flavored Markdown. See [Templates for issues and merge requests](#templates-for-issues-and-merge-requests). | +| `jobs_enabled` | boolean | No | _(Deprecated)_ Enable jobs for this project. Use `builds_access_level` instead. | +| `keep_latest_artifact` | boolean | No | Disable or enable the ability to keep the latest artifact for this project. | +| `lfs_enabled` | boolean | No | Enable LFS. | +| `merge_commit_template` | string | No | [Template](../user/project/merge_requests/commit_templates.md) used to create merge commit message in merge requests. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/20263) in GitLab 14.5.)_ | +| `merge_method` | string | No | Set the [merge method](#project-merge-method) used. | +| `merge_pipelines_enabled` | boolean | No | Enable or disable merge pipelines. | +| `merge_requests_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `merge_requests_enabled` | boolean | No | _(Deprecated)_ Enable merge requests for this project. Use `merge_requests_access_level` instead. | +| `merge_requests_template` **(PREMIUM ALL)** | string | No | Default description for merge requests. Description is parsed with GitLab Flavored Markdown. See [Templates for issues and merge requests](#templates-for-issues-and-merge-requests). | +| `merge_trains_enabled` | boolean | No | Enable or disable merge trains. | +| `mirror_overwrites_diverged_branches` **(PREMIUM ALL)** | boolean | No | Pull mirror overwrites diverged branches. | +| `mirror_trigger_builds` **(PREMIUM ALL)** | boolean | No | Pull mirroring triggers builds. | +| `mirror_user_id` **(PREMIUM ALL)** | integer | No | User responsible for all the activity surrounding a pull mirror event. _(administrators only)_ | +| `mirror` **(PREMIUM ALL)** | boolean | No | Enables pull mirroring in a project. | +| `mr_default_target_self` | boolean | No | For forked projects, target merge requests to this project. If `false`, the target is the upstream project. | +| `name` | string | No | The name of the project. | +| `only_allow_merge_if_all_discussions_are_resolved` | boolean | No | Set whether merge requests can only be merged when all the discussions are resolved. | +| `only_allow_merge_if_pipeline_succeeds` | boolean | No | Set whether merge requests can only be merged with successful jobs. | +| `only_mirror_protected_branches` **(PREMIUM ALL)** | boolean | No | Only mirror protected branches. | +| `packages_enabled` | boolean | No | Enable or disable packages repository feature. | +| `pages_access_level` | string | No | One of `disabled`, `private`, `enabled`, or `public`. | +| `path` | string | No | Custom repository name for the project. By default generated based on name. | +| `printing_merge_request_link_enabled` | boolean | No | Show link to create/view merge request when pushing from the command line. | +| `public_builds` | boolean | No | If `true`, jobs can be viewed by non-project members. | +| `releases_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `environments_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `feature_flags_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `infrastructure_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `monitor_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `remove_source_branch_after_merge` | boolean | No | Enable `Delete source branch` option by default for all new merge requests. | +| `repository_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `repository_storage` | string | No | Which storage shard the repository is on. _(administrators only)_ | +| `request_access_enabled` | boolean | No | Allow users to request member access. | +| `requirements_access_level` | string | No | One of `disabled`, `private`, `enabled` or `public` | +| `resolve_outdated_diff_discussions` | boolean | No | Automatically resolve merge request diffs discussions on lines changed with a push. | +| `restrict_user_defined_variables` | boolean | No | Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline. For example when the pipeline is triggered in the UI, with the API, or by a trigger token. | +| `security_and_compliance_access_level` | string | No | (GitLab 14.9 and later) Security and compliance access level. One of `disabled`, `private`, or `enabled`. | +| `service_desk_enabled` | boolean | No | Enable or disable Service Desk feature. | +| `shared_runners_enabled` | boolean | No | Enable shared runners for this project. | +| `show_default_award_emojis` | boolean | No | Show default award emojis. | +| `snippets_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `snippets_enabled` | boolean | No | _(Deprecated)_ Enable snippets for this project. Use `snippets_access_level` instead. | +| `issue_branch_template` | string | No | Template used to suggest names for [branches created from issues](../user/project/merge_requests/creating_merge_requests.md#from-an-issue). _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/21243) in GitLab 15.6.)_ | +| `squash_commit_template` | string | No | [Template](../user/project/merge_requests/commit_templates.md) used to create squash commit message in merge requests. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/345275) in GitLab 14.6.)_ | +| `squash_option` | string | No | One of `never`, `always`, `default_on`, or `default_off`. | +| `suggestion_commit_message` | string | No | The commit message used to apply merge request suggestions. | +| `tag_list` | array | No | _([Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0)_ The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. | +| `topics` | array | No | The list of topics for the project. This replaces any existing topics that are already added to the project. _([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/328226) in GitLab 14.0.)_ | +| `visibility` | string | No | See [project visibility level](#project-visibility-level). | +| `wiki_access_level` | string | No | One of `disabled`, `private`, or `enabled`. | +| `wiki_enabled` | boolean | No | _(Deprecated)_ Enable wiki for this project. Use `wiki_access_level` instead. | ## Fork project @@ -1782,15 +1782,15 @@ POST /projects/:id/fork | Attribute | Type | Required | Description | |------------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `description` | string | **{dotted-circle}** No | The description assigned to the resultant project after forking. | -| `mr_default_target_self` | boolean | **{dotted-circle}** No | For forked projects, target merge requests to this project. If `false`, the target is the upstream project. | -| `name` | string | **{dotted-circle}** No | The name assigned to the resultant project after forking. | -| `namespace_id` | integer | **{dotted-circle}** No | The ID of the namespace that the project is forked to. | -| `namespace_path` | string | **{dotted-circle}** No | The path of the namespace that the project is forked to. | -| `namespace` | integer or string | **{dotted-circle}** No | _(Deprecated)_ The ID or path of the namespace that the project is forked to. | -| `path` | string | **{dotted-circle}** No | The path assigned to the resultant project after forking. | -| `visibility` | string | **{dotted-circle}** No | The [visibility level](#project-visibility-level) assigned to the resultant project after forking. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `description` | string | No | The description assigned to the resultant project after forking. | +| `mr_default_target_self` | boolean | No | For forked projects, target merge requests to this project. If `false`, the target is the upstream project. | +| `name` | string | No | The name assigned to the resultant project after forking. | +| `namespace_id` | integer | No | The ID of the namespace that the project is forked to. | +| `namespace_path` | string | No | The path of the namespace that the project is forked to. | +| `namespace` | integer or string | No | _(Deprecated)_ The ID or path of the namespace that the project is forked to. | +| `path` | string | No | The path assigned to the resultant project after forking. | +| `visibility` | string | No | The [visibility level](#project-visibility-level) assigned to the resultant project after forking. | ## List forks of a project @@ -1805,23 +1805,23 @@ GET /projects/:id/forks | Attribute | Type | Required | Description | |-------------------------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `archived` | boolean | **{dotted-circle}** No | Limit by archived status. | -| `membership` | boolean | **{dotted-circle}** No | Limit by projects that the current user is a member of. | -| `min_access_level` | integer | **{dotted-circle}** No | Limit by current user minimal [role (`access_level`)](members.md#roles). | -| `order_by` | string | **{dotted-circle}** No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at`. | -| `owned` | boolean | **{dotted-circle}** No | Limit by projects explicitly owned by the current user. | -| `search` | string | **{dotted-circle}** No | Return list of projects matching the search criteria. | -| `simple` | boolean | **{dotted-circle}** No | Return only limited fields for each project. Without authentication, this operation is a no-op; only simple fields are returned. | -| `sort` | string | **{dotted-circle}** No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | -| `starred` | boolean | **{dotted-circle}** No | Limit by projects starred by the current user. | -| `statistics` | boolean | **{dotted-circle}** No | Include project statistics. Available only to users with at least the Reporter role. | -| `visibility` | string | **{dotted-circle}** No | Limit by visibility `public`, `internal`, or `private`. | -| `with_custom_attributes` | boolean | **{dotted-circle}** No | Include [custom attributes](custom_attributes.md) in response. _(administrators only)_ | -| `with_issues_enabled` | boolean | **{dotted-circle}** No | Limit by enabled issues feature. | -| `with_merge_requests_enabled` | boolean | **{dotted-circle}** No | Limit by enabled merge requests feature. | -| `updated_before` | datetime | **{dotted-circle}** No | Limit results to projects last updated before the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | -| `updated_after` | datetime | **{dotted-circle}** No | Limit results to projects last updated after the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `archived` | boolean | No | Limit by archived status. | +| `membership` | boolean | No | Limit by projects that the current user is a member of. | +| `min_access_level` | integer | No | Limit by current user minimal [role (`access_level`)](members.md#roles). | +| `order_by` | string | No | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at`. | +| `owned` | boolean | No | Limit by projects explicitly owned by the current user. | +| `search` | string | No | Return list of projects matching the search criteria. | +| `simple` | boolean | No | Return only limited fields for each project. Without authentication, this operation is a no-op; only simple fields are returned. | +| `sort` | string | No | Return projects sorted in `asc` or `desc` order. Default is `desc`. | +| `starred` | boolean | No | Limit by projects starred by the current user. | +| `statistics` | boolean | No | Include project statistics. Available only to users with at least the Reporter role. | +| `visibility` | string | No | Limit by visibility `public`, `internal`, or `private`. | +| `with_custom_attributes` | boolean | No | Include [custom attributes](custom_attributes.md) in response. _(administrators only)_ | +| `with_issues_enabled` | boolean | No | Limit by enabled issues feature. | +| `with_merge_requests_enabled` | boolean | No | Limit by enabled merge requests feature. | +| `updated_before` | datetime | No | Limit results to projects last updated before the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | +| `updated_after` | datetime | No | Limit results to projects last updated after the specified time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`). [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/393979) in GitLab 15.10. | ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/forks" @@ -1924,7 +1924,7 @@ POST /projects/:id/star | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ```shell curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/star" @@ -2032,7 +2032,7 @@ POST /projects/:id/unstar | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ```shell curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/unstar" @@ -2138,8 +2138,8 @@ GET /projects/:id/starrers | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `search` | string | **{dotted-circle}** No | Search for specific users. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `search` | string | No | Search for specific users. | ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/starrers" @@ -2184,7 +2184,7 @@ GET /projects/:id/languages | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/languages" @@ -2215,7 +2215,7 @@ POST /projects/:id/archive | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ```shell curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/archive" @@ -2347,7 +2347,7 @@ POST /projects/:id/unarchive | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ```shell curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/unarchive" @@ -2494,7 +2494,7 @@ DELETE /projects/:id | Attribute | Type | Required | Description | |------------------------------------|-------------------|------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | | `permanently_remove` **(PREMIUM ALL)** | boolean/string | no | Immediately deletes a project if it is marked for deletion. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/396500) in GitLab 15.11 | | `full_path` **(PREMIUM ALL)** | string | no | Full path of project to use with `permanently_remove`. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/396500) in GitLab 15.11. To find the project path, use `path_with_namespace` from [get single project](projects.md#get-single-project) | @@ -2510,7 +2510,7 @@ POST /projects/:id/restore | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ## Upload a file @@ -2527,8 +2527,8 @@ POST /projects/:id/uploads | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `file` | string | **{check-circle}** Yes | The file to be uploaded. | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `file` | string | Yes | The file to be uploaded. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | To upload a file from your file system, use the `--form` argument. This causes cURL to post data using the header `Content-Type: multipart/form-data`. The @@ -2565,8 +2565,8 @@ PUT /projects/:id | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `avatar` | string | **{check-circle}** Yes | The file to be uploaded. | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `avatar` | string | Yes | The file to be uploaded. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | To upload an avatar from your file system, use the `--form` argument. This causes cURL to post data using the header `Content-Type: multipart/form-data`. The @@ -2611,10 +2611,10 @@ POST /projects/:id/share | Attribute | Type | Required | Description | |----------------|----------------|------------------------|-------------| -| `group_access` | integer | **{check-circle}** Yes | The [role (`access_level`)](members.md#roles) to grant the group. | -| `group_id` | integer | **{check-circle}** Yes | The ID of the group to share with. | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `expires_at` | string | **{dotted-circle}** No | Share expiration date in ISO 8601 format: 2016-09-26 | +| `group_access` | integer | Yes | The [role (`access_level`)](members.md#roles) to grant the group. | +| `group_id` | integer | Yes | The ID of the group to share with. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `expires_at` | string | No | Share expiration date in ISO 8601 format: 2016-09-26 | ## Delete a shared project link within a group @@ -2626,8 +2626,8 @@ DELETE /projects/:id/share/:group_id | Attribute | Type | Required | Description | |------------|----------------|------------------------|-------------| -| `group_id` | integer | **{check-circle}** Yes | The ID of the group. | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `group_id` | integer | Yes | The ID of the group. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ```shell curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/share/17" @@ -2648,8 +2648,8 @@ POST /projects/:id/import_project_members/:project_id | Attribute | Type | Required | Description | |--------------|-------------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path](rest/index.md#namespaced-path-encoding) of the target project to receive the members. | -| `project_id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path](rest/index.md#namespaced-path-encoding) of the source project to import the members from. | +| `id` | integer or string | Yes | The ID or [URL-encoded path](rest/index.md#namespaced-path-encoding) of the target project to receive the members. | +| `project_id` | integer or string | Yes | The ID or [URL-encoded path](rest/index.md#namespaced-path-encoding) of the source project to import the members from. | ```shell curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/import_project_members/32" @@ -2703,7 +2703,7 @@ GET /projects/:id/hooks | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ### Get project hook @@ -2715,8 +2715,8 @@ GET /projects/:id/hooks/:hook_id | Attribute | Type | Required | Description | |-----------|----------------|------------------------|---------------------------| -| `hook_id` | integer | **{check-circle}** Yes | The ID of a project hook. | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `hook_id` | integer | Yes | The ID of a project hook. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ```json { @@ -2755,23 +2755,23 @@ POST /projects/:id/hooks | Attribute | Type | Required | Description | |------------------------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `url` | string | **{check-circle}** Yes | The hook URL. | -| `confidential_issues_events` | boolean | **{dotted-circle}** No | Trigger hook on confidential issues events. | -| `confidential_note_events` | boolean | **{dotted-circle}** No | Trigger hook on confidential note events. | -| `deployment_events` | boolean | **{dotted-circle}** No | Trigger hook on deployment events. | -| `enable_ssl_verification` | boolean | **{dotted-circle}** No | Do SSL verification when triggering the hook. | -| `issues_events` | boolean | **{dotted-circle}** No | Trigger hook on issues events. | -| `job_events` | boolean | **{dotted-circle}** No | Trigger hook on job events. | -| `merge_requests_events` | boolean | **{dotted-circle}** No | Trigger hook on merge requests events. | -| `note_events` | boolean | **{dotted-circle}** No | Trigger hook on note events. | -| `pipeline_events` | boolean | **{dotted-circle}** No | Trigger hook on pipeline events. | -| `push_events_branch_filter` | string | **{dotted-circle}** No | Trigger hook on push events for matching branches only. | -| `push_events` | boolean | **{dotted-circle}** No | Trigger hook on push events. | -| `releases_events` | boolean | **{dotted-circle}** No | Trigger hook on release events. | -| `tag_push_events` | boolean | **{dotted-circle}** No | Trigger hook on tag push events. | -| `token` | string | **{dotted-circle}** No | Secret token to validate received payloads; the token isn't returned in the response. | -| `wiki_page_events` | boolean | **{dotted-circle}** No | Trigger hook on wiki events. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `url` | string | Yes | The hook URL. | +| `confidential_issues_events` | boolean | No | Trigger hook on confidential issues events. | +| `confidential_note_events` | boolean | No | Trigger hook on confidential note events. | +| `deployment_events` | boolean | No | Trigger hook on deployment events. | +| `enable_ssl_verification` | boolean | No | Do SSL verification when triggering the hook. | +| `issues_events` | boolean | No | Trigger hook on issues events. | +| `job_events` | boolean | No | Trigger hook on job events. | +| `merge_requests_events` | boolean | No | Trigger hook on merge requests events. | +| `note_events` | boolean | No | Trigger hook on note events. | +| `pipeline_events` | boolean | No | Trigger hook on pipeline events. | +| `push_events_branch_filter` | string | No | Trigger hook on push events for matching branches only. | +| `push_events` | boolean | No | Trigger hook on push events. | +| `releases_events` | boolean | No | Trigger hook on release events. | +| `tag_push_events` | boolean | No | Trigger hook on tag push events. | +| `token` | string | No | Secret token to validate received payloads; the token isn't returned in the response. | +| `wiki_page_events` | boolean | No | Trigger hook on wiki events. | ### Edit project hook @@ -2783,24 +2783,24 @@ PUT /projects/:id/hooks/:hook_id | Attribute | Type | Required | Description | |------------------------------|----------------|------------------------|-------------| -| `hook_id` | integer | **{check-circle}** Yes | The ID of the project hook. | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `url` | string | **{check-circle}** Yes | The hook URL. | -| `confidential_issues_events` | boolean | **{dotted-circle}** No | Trigger hook on confidential issues events. | -| `confidential_note_events` | boolean | **{dotted-circle}** No | Trigger hook on confidential note events. | -| `deployment_events` | boolean | **{dotted-circle}** No | Trigger hook on deployment events. | -| `enable_ssl_verification` | boolean | **{dotted-circle}** No | Do SSL verification when triggering the hook. | -| `issues_events` | boolean | **{dotted-circle}** No | Trigger hook on issues events. | -| `job_events` | boolean | **{dotted-circle}** No | Trigger hook on job events. | -| `merge_requests_events` | boolean | **{dotted-circle}** No | Trigger hook on merge requests events. | -| `note_events` | boolean | **{dotted-circle}** No | Trigger hook on note events. | -| `pipeline_events` | boolean | **{dotted-circle}** No | Trigger hook on pipeline events. | -| `push_events_branch_filter` | string | **{dotted-circle}** No | Trigger hook on push events for matching branches only. | -| `push_events` | boolean | **{dotted-circle}** No | Trigger hook on push events. | -| `releases_events` | boolean | **{dotted-circle}** No | Trigger hook on release events. | -| `tag_push_events` | boolean | **{dotted-circle}** No | Trigger hook on tag push events. | -| `token` | string | **{dotted-circle}** No | Secret token to validate received payloads. Not returned in the response. When you change the webhook URL, the secret token is reset and not retained. | -| `wiki_page_events` | boolean | **{dotted-circle}** No | Trigger hook on wiki page events. | +| `hook_id` | integer | Yes | The ID of the project hook. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `url` | string | Yes | The hook URL. | +| `confidential_issues_events` | boolean | No | Trigger hook on confidential issues events. | +| `confidential_note_events` | boolean | No | Trigger hook on confidential note events. | +| `deployment_events` | boolean | No | Trigger hook on deployment events. | +| `enable_ssl_verification` | boolean | No | Do SSL verification when triggering the hook. | +| `issues_events` | boolean | No | Trigger hook on issues events. | +| `job_events` | boolean | No | Trigger hook on job events. | +| `merge_requests_events` | boolean | No | Trigger hook on merge requests events. | +| `note_events` | boolean | No | Trigger hook on note events. | +| `pipeline_events` | boolean | No | Trigger hook on pipeline events. | +| `push_events_branch_filter` | string | No | Trigger hook on push events for matching branches only. | +| `push_events` | boolean | No | Trigger hook on push events. | +| `releases_events` | boolean | No | Trigger hook on release events. | +| `tag_push_events` | boolean | No | Trigger hook on tag push events. | +| `token` | string | No | Secret token to validate received payloads. Not returned in the response. When you change the webhook URL, the secret token is reset and not retained. | +| `wiki_page_events` | boolean | No | Trigger hook on wiki page events. | ### Delete project hook @@ -2813,8 +2813,8 @@ DELETE /projects/:id/hooks/:hook_id | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `hook_id` | integer | **{check-circle}** Yes | The ID of the project hook. | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `hook_id` | integer | Yes | The ID of the project hook. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | Note the JSON response differs if the hook is available or not. If the project hook is available before it's returned in the JSON response or an empty response @@ -2833,8 +2833,8 @@ POST /projects/:id/fork/:forked_from_id | Attribute | Type | Required | Description | |------------------|----------------|------------------------|-------------| -| `forked_from_id` | ID | **{check-circle}** Yes | The ID of the project that was forked from. | -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `forked_from_id` | ID | Yes | The ID of the project that was forked from. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ### Delete an existing forked from relationship @@ -2844,7 +2844,7 @@ DELETE /projects/:id/fork | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ## Search for projects by name @@ -2858,9 +2858,9 @@ GET /projects | Attribute | Type | Required | Description | |------------|--------|------------------------|-------------| -| `search` | string | **{check-circle}** Yes | A string contained in the project name. | -| `order_by` | string | **{dotted-circle}** No | Return requests ordered by `id`, `name`, `created_at` or `last_activity_at` fields. | -| `sort` | string | **{dotted-circle}** No | Return requests sorted in `asc` or `desc` order. | +| `search` | string | Yes | A string contained in the project name. | +| `order_by` | string | No | Return requests ordered by `id`, `name`, `created_at` or `last_activity_at` fields. | +| `sort` | string | No | Return requests sorted in `asc` or `desc` order. | ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects?search=test" @@ -2874,8 +2874,8 @@ POST /projects/:id/housekeeping | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `task` | string | **{dotted-circle}** No | `prune` to trigger manual prune of unreachable objects or `eager` to trigger eager housekeeping. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `task` | string | No | `prune` to trigger manual prune of unreachable objects or `eager` to trigger eager housekeeping. | ## Push rules **(PREMIUM ALL)** @@ -2890,7 +2890,7 @@ GET /projects/:id/push_rule | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding) | ```json { @@ -2921,18 +2921,18 @@ POST /projects/:id/push_rule | Attribute | Type | Required | Description | |-----------------------------------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `author_email_regex` | string | **{dotted-circle}** No | All commit author emails must match this, for example `@my-company.com$`. | -| `branch_name_regex` | string | **{dotted-circle}** No | All branch names must match this, for example `(feature|hotfix)\/*`. | -| `commit_committer_check` | boolean | **{dotted-circle}** No | Users can only push commits to this repository if the committer email is one of their own verified emails. | -| `commit_message_negative_regex` | string | **{dotted-circle}** No | No commit message is allowed to match this, for example `ssh\:\/\/`. | -| `commit_message_regex` | string | **{dotted-circle}** No | All commit messages must match this, for example `Fixed \d+\..*`. | -| `deny_delete_tag` | boolean | **{dotted-circle}** No | Deny deleting a tag. | -| `file_name_regex` | string | **{dotted-circle}** No | All committed filenames must **not** match this, for example `(jar|exe)$`. | -| `max_file_size` | integer | **{dotted-circle}** No | Maximum file size (MB). | -| `member_check` | boolean | **{dotted-circle}** No | Restrict commits by author (email) to existing GitLab users. | -| `prevent_secrets` | boolean | **{dotted-circle}** No | GitLab rejects any files that are likely to contain secrets. | -| `reject_unsigned_commits` | boolean | **{dotted-circle}** No | Reject commit when it's not signed through GPG. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `author_email_regex` | string | No | All commit author emails must match this, for example `@my-company.com$`. | +| `branch_name_regex` | string | No | All branch names must match this, for example `(feature|hotfix)\/*`. | +| `commit_committer_check` | boolean | No | Users can only push commits to this repository if the committer email is one of their own verified emails. | +| `commit_message_negative_regex` | string | No | No commit message is allowed to match this, for example `ssh\:\/\/`. | +| `commit_message_regex` | string | No | All commit messages must match this, for example `Fixed \d+\..*`. | +| `deny_delete_tag` | boolean | No | Deny deleting a tag. | +| `file_name_regex` | string | No | All committed filenames must **not** match this, for example `(jar|exe)$`. | +| `max_file_size` | integer | No | Maximum file size (MB). | +| `member_check` | boolean | No | Restrict commits by author (email) to existing GitLab users. | +| `prevent_secrets` | boolean | No | GitLab rejects any files that are likely to contain secrets. | +| `reject_unsigned_commits` | boolean | No | Reject commit when it's not signed through GPG. | ### Edit project push rule @@ -2944,18 +2944,18 @@ PUT /projects/:id/push_rule | Attribute | Type | Required | Description | |-----------------------------------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `author_email_regex` | string | **{dotted-circle}** No | All commit author emails must match this, for example `@my-company.com$`. | -| `branch_name_regex` | string | **{dotted-circle}** No | All branch names must match this, for example `(feature|hotfix)\/*`. | -| `commit_committer_check` | boolean | **{dotted-circle}** No | Users can only push commits to this repository if the committer email is one of their own verified emails. | -| `commit_message_negative_regex` | string | **{dotted-circle}** No | No commit message is allowed to match this, for example `ssh\:\/\/`. | -| `commit_message_regex` | string | **{dotted-circle}** No | All commit messages must match this, for example `Fixed \d+\..*`. | -| `deny_delete_tag` | boolean | **{dotted-circle}** No | Deny deleting a tag. | -| `file_name_regex` | string | **{dotted-circle}** No | All committed filenames must **not** match this, for example `(jar|exe)$`. | -| `max_file_size` | integer | **{dotted-circle}** No | Maximum file size (MB). | -| `member_check` | boolean | **{dotted-circle}** No | Restrict commits by author (email) to existing GitLab users. | -| `prevent_secrets` | boolean | **{dotted-circle}** No | GitLab rejects any files that are likely to contain secrets. | -| `reject_unsigned_commits` | boolean | **{dotted-circle}** No | Reject commits when they are not GPG signed. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `author_email_regex` | string | No | All commit author emails must match this, for example `@my-company.com$`. | +| `branch_name_regex` | string | No | All branch names must match this, for example `(feature|hotfix)\/*`. | +| `commit_committer_check` | boolean | No | Users can only push commits to this repository if the committer email is one of their own verified emails. | +| `commit_message_negative_regex` | string | No | No commit message is allowed to match this, for example `ssh\:\/\/`. | +| `commit_message_regex` | string | No | All commit messages must match this, for example `Fixed \d+\..*`. | +| `deny_delete_tag` | boolean | No | Deny deleting a tag. | +| `file_name_regex` | string | No | All committed filenames must **not** match this, for example `(jar|exe)$`. | +| `max_file_size` | integer | No | Maximum file size (MB). | +| `member_check` | boolean | No | Restrict commits by author (email) to existing GitLab users. | +| `prevent_secrets` | boolean | No | GitLab rejects any files that are likely to contain secrets. | +| `reject_unsigned_commits` | boolean | No | Reject commits when they are not GPG signed. | ### Delete project push rule @@ -2970,7 +2970,7 @@ DELETE /projects/:id/push_rule | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ## Get groups to which a user can transfer a project @@ -2984,8 +2984,8 @@ GET /projects/:id/transfer_locations | Attribute | Type | Required | Description | |-------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `search` | string | **{dotted-circle}** No | The group names to search for. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `search` | string | No | The group names to search for. | Example request: @@ -3029,8 +3029,8 @@ PUT /projects/:id/transfer | Attribute | Type | Required | Description | |-------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `namespace` | integer or string | **{check-circle}** Yes | The ID or path of the namespace to transfer to project to. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `namespace` | integer or string | Yes | The ID or path of the namespace to transfer to project to. | Example request: @@ -3180,7 +3180,7 @@ Supported attributes: | Attribute | Type | Required | Description | |:----------|:------|:------------|:------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | Example request: @@ -3220,11 +3220,11 @@ with the API scope enabled. | Attribute | Type | Required | Description | |--------------|---------|------------------------|-------------| -| `import_url` | string | **{check-circle}** Yes | URL of remote repository being mirrored (with `user:token` if needed). | -| `mirror` | boolean | **{check-circle}** Yes | Enables pull mirroring on project when set to `true`. | -| `mirror_trigger_builds`| boolean | **{dotted-circle}** No | Trigger pipelines for mirror updates when set to `true`. | -| `only_mirror_protected_branches`| boolean | **{dotted-circle}** No | Limits mirroring to only protected branches when set to `true`. | -| `mirror_branch_regex` | String | **{dotted-circle}** No | Contains a regular expression. Only branches with names matching the regex are mirrored. Requires `only_mirror_protected_branches` to be disabled. | +| `import_url` | string | Yes | URL of remote repository being mirrored (with `user:token` if needed). | +| `mirror` | boolean | Yes | Enables pull mirroring on project when set to `true`. | +| `mirror_trigger_builds`| boolean | No | Trigger pipelines for mirror updates when set to `true`. | +| `only_mirror_protected_branches`| boolean | No | Limits mirroring to only protected branches when set to `true`. | +| `mirror_branch_regex` | String | No | Contains a regular expression. Only branches with names matching the regex are mirrored. Requires `only_mirror_protected_branches` to be disabled. | ## Start the pull mirroring process for a Project **(PREMIUM ALL)** @@ -3236,7 +3236,7 @@ POST /projects/:id/mirror/pull | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ```shell curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/:id/mirror/pull" @@ -3263,8 +3263,8 @@ GET /projects/:id/snapshot | Attribute | Type | Required | Description | |-----------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | -| `wiki` | boolean | **{dotted-circle}** No | Whether to download the wiki, rather than project, repository. | +| `id` | integer or string | Yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `wiki` | boolean | No | Whether to download the wiki, rather than project, repository. | ## Get the path to repository storage @@ -3281,7 +3281,7 @@ GET /projects/:id/storage | Attribute | Type | Required | Description | |--------------|----------------|------------------------|-------------| -| `id` | integer or string | **{check-circle}** Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | +| `id` | integer or string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-path-encoding). | ```json [ diff --git a/doc/api/topics.md b/doc/api/topics.md index 5d413eec7c0..0c729a95fe5 100644 --- a/doc/api/topics.md +++ b/doc/api/topics.md @@ -22,10 +22,10 @@ Supported attributes: | Attribute | Type | Required | Description | | ------------------ | ------- | ---------------------- | ----------- | -| `page` | integer | **{dotted-circle}** No | Page to retrieve. Defaults to `1`. | -| `per_page` | integer | **{dotted-circle}** No | Number of records to return per page. Defaults to `20`. | -| `search` | string | **{dotted-circle}** No | Search topics against their `name`. | -| `without_projects` | boolean | **{dotted-circle}** No | Limit results to topics without assigned projects. | +| `page` | integer | No | Page to retrieve. Defaults to `1`. | +| `per_page` | integer | No | Number of records to return per page. Defaults to `20`. | +| `search` | string | No | Search topics against their `name`. | +| `without_projects` | boolean | No | Limit results to topics without assigned projects. | Example request: @@ -76,7 +76,7 @@ Supported attributes: | Attribute | Type | Required | Description | | --------- | ------- | ---------------------- | ------------------- | -| `id` | integer | **{check-circle}** Yes | ID of project topic | +| `id` | integer | Yes | ID of project topic | Example request: @@ -117,10 +117,10 @@ Supported attributes: | Attribute | Type | Required | Description | | ------------- | ------- | ---------------------- | ----------- | -| `name` | string | **{check-circle}** Yes | Slug (name) | -| `title` | string | **{check-circle}** Yes | Title | -| `avatar` | file | **{dotted-circle}** No | Avatar | -| `description` | string | **{dotted-circle}** No | Description | +| `name` | string | Yes | Slug (name) | +| `title` | string | Yes | Title | +| `avatar` | file | No | Avatar | +| `description` | string | No | Description | Example request: @@ -156,11 +156,11 @@ Supported attributes: | Attribute | Type | Required | Description | | ------------- | ------- | ---------------------- | ------------------- | -| `id` | integer | **{check-circle}** Yes | ID of project topic | -| `avatar` | file | **{dotted-circle}** No | Avatar | -| `description` | string | **{dotted-circle}** No | Description | -| `name` | string | **{dotted-circle}** No | Slug (name) | -| `title` | string | **{dotted-circle}** No | Title | +| `id` | integer | Yes | ID of project topic | +| `avatar` | file | No | Avatar | +| `description` | string | No | Description | +| `name` | string | No | Slug (name) | +| `title` | string | No | Title | Example request: @@ -228,7 +228,7 @@ Supported attributes: | Attribute | Type | Required | Description | | ------------- | ------- | ---------------------- | ------------------- | -| `id` | integer | **{check-circle}** Yes | ID of project topic | +| `id` | integer | Yes | ID of project topic | Example request: @@ -253,8 +253,8 @@ Supported attributes: | Attribute | Type | Required | Description | | ----------------- | ------- | ---------------------- | -------------------------- | -| `source_topic_id` | integer | **{check-circle}** Yes | ID of source project topic | -| `target_topic_id` | integer | **{check-circle}** Yes | ID of target project topic | +| `source_topic_id` | integer | Yes | ID of source project topic | +| `target_topic_id` | integer | Yes | ID of target project topic | Example request: |