diff options
Diffstat (limited to 'doc/api')
74 files changed, 7869 insertions, 2542 deletions
diff --git a/doc/api/README.md b/doc/api/README.md index 8fb3269d28b..3ba88132c25 100644 --- a/doc/api/README.md +++ b/doc/api/README.md @@ -21,7 +21,7 @@ Contributions are welcome. For a list of the available resources and their endpoints, see [API resources](api_resources.md). -## SCIM **(SILVER ONLY)** +## SCIM **(PREMIUM SAAS)** GitLab provides an [SCIM API](scim.md) that both implements [the RFC7644 protocol](https://tools.ietf.org/html/rfc7644) and provides the @@ -124,7 +124,7 @@ There are several methods you can use to authenticate with the GitLab API: - [GitLab CI/CD job token](#gitlab-ci-job-token) **(Specific endpoints only)** NOTE: -Project access tokens are supported for self-managed instances on Core and +Project access tokens are supported for self-managed instances on Free and higher. They're also supported on GitLab.com Bronze and higher. For administrators who want to authenticate with the API as a specific user, or who want @@ -207,7 +207,7 @@ to authenticate with the API: - [Go Proxy](../user/packages/go_proxy/index.md) - [Maven Repository](../user/packages/maven_repository/index.md#authenticate-with-a-ci-job-token-in-maven) - [NPM Repository](../user/packages/npm_registry/index.md#authenticate-with-a-ci-job-token) - - [Nuget Repository](../user/packages/nuget_repository/index.md) + - [NuGet Repository](../user/packages/nuget_repository/index.md) - [PyPI Repository](../user/packages/pypi_repository/index.md#authenticate-with-a-ci-job-token) - [Generic packages](../user/packages/generic_packages/index.md#publish-a-generic-package-by-using-cicd) - [Get job artifacts](job_artifacts.md#get-job-artifacts) @@ -744,3 +744,15 @@ For administrator documentation on rate limit settings, see [Rate limits](../security/rate_limits.md). To find the settings that are specifically used by GitLab.com, see [GitLab.com-specific rate limits](../user/gitlab_com/index.md#gitlabcom-specific-rate-limits). + +## Content type + +The GitLab API supports the `application/json` content type by default, though +some API endpoints also support `text/plain`. + +In [GitLab 13.9 and later](https://gitlab.com/gitlab-org/gitlab/-/issues/250342), +API endpoints do not support `text/plain` by default, unless it's explicitly documented. + +This change is deployed behind the `:api_always_use_application_json` [feature flag](../user/feature_flags.md), +enabled by default. On GitLab self-managed instances, GitLab administrators can choose +to [disable it](../administration/feature_flags.md). **(FREE SELF)** diff --git a/doc/api/admin_sidekiq_queues.md b/doc/api/admin_sidekiq_queues.md index 7f2f2b8668c..9cbdcb863d6 100644 --- a/doc/api/admin_sidekiq_queues.md +++ b/doc/api/admin_sidekiq_queues.md @@ -4,7 +4,7 @@ group: unassigned info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Sidekiq queues administration API **(CORE ONLY)** +# Sidekiq queues administration API **(FREE SELF)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/25998) in GitLab 12.9 diff --git a/doc/api/api_resources.md b/doc/api/api_resources.md index 029e434749f..7bb0c4ec67e 100644 --- a/doc/api/api_resources.md +++ b/doc/api/api_resources.md @@ -25,6 +25,7 @@ The following API resources are available in the project context: | Resource | Available endpoints | |:--------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [Access requests](access_requests.md) | `/projects/:id/access_requests` (also available for groups) | +| [Access tokens](resource_access_tokens.md) | `/projects/:id/access_tokens` | | [Award emoji](award_emoji.md) | `/projects/:id/issues/.../award_emoji`, `/projects/:id/merge_requests/.../award_emoji`, `/projects/:id/snippets/.../award_emoji` | | [Branches](branches.md) | `/projects/:id/repository/branches/`, `/projects/:id/repository/merged_branches` | | [Commits](commits.md) | `/projects/:id/repository/commits`, `/projects/:id/statuses` | @@ -76,7 +77,7 @@ The following API resources are available in the project context: | [Remote mirrors](remote_mirrors.md) | `/projects/:id/remote_mirrors` | | [Repositories](repositories.md) | `/projects/:id/repository` | | [Repository files](repository_files.md) | `/projects/:id/repository/files` | -| [Repository submodules](repository_submodules.md) | `/projects/:id/repository/submodules` | +| [Repository submodules](repository_submodules.md) | `/projects/:id/repository/submodules` | | [Resource label events](resource_label_events.md) | `/projects/:id/issues/.../resource_label_events`, `/projects/:id/merge_requests/.../resource_label_events` (also available for groups) | | [Runners](runners.md) | `/projects/:id/runners` (also available standalone) | | [Search](search.md) | `/projects/:id/search` (also available for groups and standalone) | @@ -127,10 +128,10 @@ The following API resources are available outside of project and group contexts | Resource | Available endpoints | |:---------------------------------------------------|:------------------------------------------------------------------------| | [Instance-level CI/CD variables](instance_level_ci_variables.md) | `/admin/ci/variables` | -| [Sidekiq queues administration](admin_sidekiq_queues.md) **(CORE ONLY)** | `/admin/sidekiq/queues/:queue_name` | -| [Appearance](appearance.md) **(CORE ONLY)** | `/application/appearance` | +| [Sidekiq queues administration](admin_sidekiq_queues.md) **(FREE SELF)** | `/admin/sidekiq/queues/:queue_name` | +| [Appearance](appearance.md) **(FREE SELF)** | `/application/appearance` | | [Applications](applications.md) | `/applications` | -| [Audit Events](audit_events.md) **(PREMIUM ONLY)** | `/audit_events` | +| [Audit Events](audit_events.md) **(PREMIUM SELF)** | `/audit_events` | | [Avatar](avatar.md) | `/avatar` | | [Broadcast messages](broadcast_messages.md) | `/broadcast_messages` | | [Code snippets](snippets.md) | `/snippets` | @@ -138,14 +139,14 @@ The following API resources are available outside of project and group contexts | [Deploy keys](deploy_keys.md) | `/deploy_keys` (also available for projects) | | [Events](events.md) | `/events`, `/users/:id/events` (also available for projects) | | [Feature flags](features.md) | `/features` | -| [Geo Nodes](geo_nodes.md) **(PREMIUM ONLY)** | `/geo_nodes` | +| [Geo Nodes](geo_nodes.md) **(PREMIUM SELF)** | `/geo_nodes` | | [Group Activity Analytics](group_activity_analytics.md) **(STARTER)** | `/analytics/group_activity/{issues_count | merge_requests_count | new_members_count }` | | [Import repository from GitHub](import.md) | `/import/github` | | [Instance clusters](instance_clusters.md) | `/admin/clusters` | | [Issues](issues.md) | `/issues` (also available for groups and projects) | | [Issues Statistics](issues_statistics.md) | `/issues_statistics` (also available for groups and projects) | | [Keys](keys.md) | `/keys` | -| [License](license.md) **(CORE ONLY)** | `/license` | +| [License](license.md) **(FREE SELF)** | `/license` | | [Markdown](markdown.md) | `/markdown` | | [Merge requests](merge_requests.md) | `/merge_requests` (also available for groups and projects) | | [Metrics dashboard annotations](metrics_dashboard_annotations.md) | `/environments/:id/metrics_dashboard/annotations`, `/clusters/:id/metrics_dashboard/annotations` | @@ -154,13 +155,13 @@ The following API resources are available outside of project and group contexts | [Pages domains](pages_domains.md) | `/pages/domains` (also available for projects) | | [Personal access tokens](personal_access_tokens.md) | `/personal_access_tokens` | | [Projects](projects.md) | `/users/:id/projects` (also available for projects) | -| [Project repository storage moves](project_repository_storage_moves.md) **(CORE ONLY)** | `/project_repository_storage_moves` | +| [Project repository storage moves](project_repository_storage_moves.md) **(FREE SELF)** | `/project_repository_storage_moves` | | [Runners](runners.md) | `/runners` (also available for projects) | | [Search](search.md) | `/search` (also available for groups and projects) | -| [Settings](settings.md) **(CORE ONLY)** | `/application/settings` | -| [Snippet repository storage moves](snippet_repository_storage_moves.md) **(CORE ONLY)** | `/snippet_repository_storage_moves` | +| [Settings](settings.md) **(FREE SELF)** | `/application/settings` | +| [Snippet repository storage moves](snippet_repository_storage_moves.md) **(FREE SELF)** | `/snippet_repository_storage_moves` | | [Statistics](statistics.md) | `/application/statistics` | -| [Sidekiq metrics](sidekiq_metrics.md) **(CORE ONLY)** | `/sidekiq` | +| [Sidekiq metrics](sidekiq_metrics.md) **(FREE SELF)** | `/sidekiq` | | [Suggestions](suggestions.md) | `/suggestions` | | [System hooks](system_hooks.md) | `/hooks` | | [To-dos](todos.md) | `/todos` | diff --git a/doc/api/appearance.md b/doc/api/appearance.md index d03fc94cfcf..5689cacd9ce 100644 --- a/doc/api/appearance.md +++ b/doc/api/appearance.md @@ -4,7 +4,7 @@ group: Access info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Appearance API **(CORE ONLY)** +# Appearance API **(FREE SELF)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/16647) in GitLab 12.7. diff --git a/doc/api/audit_events.md b/doc/api/audit_events.md index 5017c8defaf..78bf292a3d7 100644 --- a/doc/api/audit_events.md +++ b/doc/api/audit_events.md @@ -6,7 +6,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w # Audit Events API -## Instance Audit Events **(PREMIUM ONLY)** +## Instance Audit Events **(PREMIUM SELF)** The Audit Events API allows you to retrieve [instance audit events](../administration/audit_events.md#instance-events). @@ -126,7 +126,7 @@ Example response: } ``` -## Group Audit Events **(STARTER)** +## Group Audit Events **(PREMIUM)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/34078) in GitLab 12.5. @@ -233,7 +233,7 @@ Example response: } ``` -## Project Audit Events **(STARTER)** +## Project Audit Events **(PREMIUM)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/219238) in GitLab 13.1. diff --git a/doc/api/boards.md b/doc/api/boards.md index e86f0d846ed..021e4103228 100644 --- a/doc/api/boards.md +++ b/doc/api/boards.md @@ -8,8 +8,8 @@ info: To determine the technical writer assigned to the Stage/Group associated w Every API call to boards must be authenticated. -If a user is not a member of a project and the project is private, a `GET` -request on that project will result to a `404` status code. +If a user is not a member of a private project, +a `GET` request on that project results in a `404` status code. ## List project issue boards @@ -488,7 +488,7 @@ Example response: ## Delete a board list from a board -Only for admins and project owners. Deletes the board list in question. +Only for administrators and project owners. Deletes a board list. ```plaintext DELETE /projects/:id/boards/:board_id/lists/:list_id diff --git a/doc/api/build_triggers.md b/doc/api/build_triggers.md deleted file mode 100644 index 13adf949981..00000000000 --- a/doc/api/build_triggers.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -redirect_to: 'pipeline_triggers.md' ---- - -This document was moved to [another location](pipeline_triggers.md). - -<!-- This redirect file can be deleted after February 1, 2021. --> -<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/api/builds.md b/doc/api/builds.md deleted file mode 100644 index b7b61e853a8..00000000000 --- a/doc/api/builds.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -redirect_to: 'jobs.md' ---- - -This document was moved to [another location](jobs.md). - -<!-- This redirect file can be deleted after February 1, 2021. --> -<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/api/dependency_proxy.md b/doc/api/dependency_proxy.md index ab691aaecea..8448edef9c5 100644 --- a/doc/api/dependency_proxy.md +++ b/doc/api/dependency_proxy.md @@ -9,9 +9,9 @@ info: To determine the technical writer assigned to the Stage/Group associated w ## Purge the dependency proxy for a group > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11631) in GitLab 12.10. -> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/273655) to [GitLab Core](https://about.gitlab.com/pricing/) in GitLab 13.6. +> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/273655) to [GitLab Free](https://about.gitlab.com/pricing/) in GitLab 13.6. -Deletes the cached manifests and blobs for a group. This endpoint requires group admin access. +Deletes the cached manifests and blobs for a group. This endpoint requires group owner access. WARNING: [A bug exists](https://gitlab.com/gitlab-org/gitlab/-/issues/277161) for this API. diff --git a/doc/api/deploy_key_multiple_projects.md b/doc/api/deploy_key_multiple_projects.md deleted file mode 100644 index 16ce201c1c0..00000000000 --- a/doc/api/deploy_key_multiple_projects.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -redirect_to: deploy_keys.md#adding-deploy-keys-to-multiple-projects ---- - -This document was moved to [another location](deploy_keys.md#adding-deploy-keys-to-multiple-projects). - -<!-- This redirect file can be deleted after February 1, 2021. --> -<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/api/epic_links.md b/doc/api/epic_links.md index cabab18ed71..228f68531fd 100644 --- a/doc/api/epic_links.md +++ b/doc/api/epic_links.md @@ -12,9 +12,10 @@ Manages parent-child [epic relationships](../user/group/epics/index.md#multi-lev Every API call to `epic_links` must be authenticated. -If a user makes a `GET` request to a private group they are not a member of, the result is a `404` status code. +If a user is not a member of a private group, a `GET` request on that +group results in a `404` status code. -Multi-level Epics are available only in GitLab [Ultimate/Gold](https://about.gitlab.com/pricing/). +Multi-level Epics are available only in GitLab [Ultimate](https://about.gitlab.com/pricing/). If the Multi-level Epics feature is not available, a `403` status code is returned. ## List epics related to a given epic diff --git a/doc/api/error_tracking.md b/doc/api/error_tracking.md index 12ff0148661..c737edbdc44 100644 --- a/doc/api/error_tracking.md +++ b/doc/api/error_tracking.md @@ -4,7 +4,7 @@ group: Health info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Error Tracking settings API +# Error Tracking settings API **(FREE)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/34940) in GitLab 12.7. diff --git a/doc/api/events.md b/doc/api/events.md index d073e7ed633..e2ff779f3bf 100644 --- a/doc/api/events.md +++ b/doc/api/events.md @@ -25,7 +25,7 @@ Available action types for the `action` parameter are: - `destroyed` - `expired` -Note that these options are downcased. +Note that these options are in lower case. ### Target Types @@ -39,7 +39,7 @@ Available target types for the `target_type` parameter are: - `snippet` - `user` -Note that these options are downcased. +Note that these options are in lower case. ### Date formatting diff --git a/doc/api/feature_flag_user_lists.md b/doc/api/feature_flag_user_lists.md index ba03b81ebfd..e0a5fe99663 100644 --- a/doc/api/feature_flag_user_lists.md +++ b/doc/api/feature_flag_user_lists.md @@ -4,10 +4,10 @@ group: Release info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Feature flag user lists API **(CORE)** +# Feature flag user lists API **(FREE)** > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/205409) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.10. -> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212318) to GitLab Core in 13.5. +> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212318) to GitLab Free in 13.5. API for accessing GitLab Feature Flag User Lists. diff --git a/doc/api/feature_flags.md b/doc/api/feature_flags.md index e8d6911463d..77d30475555 100644 --- a/doc/api/feature_flags.md +++ b/doc/api/feature_flags.md @@ -4,11 +4,11 @@ group: Release info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Feature Flags API **(CORE)** +# Feature Flags API **(FREE)** > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/9566) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.5. > - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212318) to [GitLab Starter](https://about.gitlab.com/pricing/) in 13.4. -> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212318) to [GitLab Core](https://about.gitlab.com/pricing/) in 13.5. +> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212318) to [GitLab Free](https://about.gitlab.com/pricing/) in 13.5. API for accessing resources of [GitLab Feature Flags](../operations/feature_flags.md). diff --git a/doc/api/feature_flags_legacy.md b/doc/api/feature_flags_legacy.md index 8a5af39a37f..33ea2727fb9 100644 --- a/doc/api/feature_flags_legacy.md +++ b/doc/api/feature_flags_legacy.md @@ -4,11 +4,11 @@ group: Release info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Legacy Feature Flags API **(CORE)** +# Legacy Feature Flags API **(FREE)** > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/9566) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.5. > - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212318) to [GitLab Starter](https://about.gitlab.com/pricing/) in 13.4. -> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212318) to [GitLab Core](https://about.gitlab.com/pricing/) in 13.5. +> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212318) to [GitLab Free](https://about.gitlab.com/pricing/) in 13.5. WARNING: This API is deprecated and [scheduled for removal in GitLab 14.0](https://gitlab.com/gitlab-org/gitlab/-/issues/213369). Use [this API](feature_flags.md) instead. diff --git a/doc/api/features.md b/doc/api/features.md index 0ed0dec1b6d..cb3ee04d076 100644 --- a/doc/api/features.md +++ b/doc/api/features.md @@ -128,7 +128,7 @@ POST /features/:name | `user` | string | no | A GitLab username | | `group` | string | no | A GitLab group's path, for example `gitlab-org` | | `project` | string | no | A projects path, for example `gitlab-org/gitlab-foss` | -| `force` | boolean | no | Skip feature flag validation checks, ie. YAML definition | +| `force` | boolean | no | Skip feature flag validation checks, such as a YAML definition | Note that you can enable or disable a feature for a `feature_group`, a `user`, a `group`, and a `project` in a single API call. diff --git a/doc/api/geo_nodes.md b/doc/api/geo_nodes.md index 280d02ced32..386472a23f6 100644 --- a/doc/api/geo_nodes.md +++ b/doc/api/geo_nodes.md @@ -4,7 +4,7 @@ group: Geo info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Geo Nodes API **(PREMIUM ONLY)** +# Geo Nodes API **(PREMIUM SELF)** To interact with Geo node endpoints, you need to authenticate yourself as an admin. @@ -307,37 +307,37 @@ Example response: "health_status": "Healthy", "missing_oauth_application": false, "attachments_count": 1, - "attachments_synced_count": nil, - "attachments_failed_count": nil, + "attachments_synced_count": null, + "attachments_failed_count": null, "attachments_synced_missing_on_primary_count": 0, "attachments_synced_in_percentage": "0.00%", - "db_replication_lag_seconds": nil, + "db_replication_lag_seconds": null, "lfs_objects_count": 0, - "lfs_objects_synced_count": nil, - "lfs_objects_failed_count": nil, + "lfs_objects_synced_count": null, + "lfs_objects_failed_count": null, "lfs_objects_synced_missing_on_primary_count": 0, "lfs_objects_synced_in_percentage": "0.00%", "job_artifacts_count": 2, - "job_artifacts_synced_count": nil, - "job_artifacts_failed_count": nil, + "job_artifacts_synced_count": null, + "job_artifacts_failed_count": null, "job_artifacts_synced_missing_on_primary_count": 0, "job_artifacts_synced_in_percentage": "0.00%", "container_repositories_count": 3, - "container_repositories_synced_count": nil, - "container_repositories_failed_count": nil, + "container_repositories_synced_count": null, + "container_repositories_failed_count": null, "container_repositories_synced_in_percentage": "0.00%", "design_repositories_count": 3, - "design_repositories_synced_count": nil, - "design_repositories_failed_count": nil, + "design_repositories_synced_count": null, + "design_repositories_failed_count": null, "design_repositories_synced_in_percentage": "0.00%", "projects_count": 41, "repositories_count": 41, - "repositories_failed_count": nil, - "repositories_synced_count": nil, + "repositories_failed_count": null, + "repositories_synced_count": null, "repositories_synced_in_percentage": "0.00%", "wikis_count": 41, - "wikis_failed_count": nil, - "wikis_synced_count": nil, + "wikis_failed_count": null, + "wikis_synced_count": null, "wikis_synced_in_percentage": "0.00%", "replication_slots_count": 1, "replication_slots_used_count": 1, @@ -367,7 +367,7 @@ Example response: "repositories_checked_in_percentage": "17.07%", "last_event_id": 23, "last_event_timestamp": 1509681166, - "cursor_last_event_id": nil, + "cursor_last_event_id": null, "cursor_last_event_timestamp": 0, "last_successful_status_check_timestamp": 1510125024, "version": "10.3.0", @@ -408,12 +408,12 @@ Example response: "job_artifacts_synced_missing_on_primary_count": 0, "job_artifacts_synced_in_percentage": "50.00%", "container_repositories_count": 3, - "container_repositories_synced_count": nil, - "container_repositories_failed_count": nil, + "container_repositories_synced_count": null, + "container_repositories_failed_count": null, "container_repositories_synced_in_percentage": "0.00%", "design_repositories_count": 3, - "design_repositories_synced_count": nil, - "design_repositories_failed_count": nil, + "design_repositories_synced_count": null, + "design_repositories_failed_count": null, "design_repositories_synced_in_percentage": "0.00%", "projects_count": 41, "repositories_count": 41, @@ -424,10 +424,10 @@ Example response: "wikis_failed_count": 0, "wikis_synced_count": 41, "wikis_synced_in_percentage": "100.00%", - "replication_slots_count": nil, - "replication_slots_used_count": nil, + "replication_slots_count": null, + "replication_slots_used_count": null, "replication_slots_used_in_percentage": "0.00%", - "replication_slots_max_retained_wal_bytes": nil, + "replication_slots_max_retained_wal_bytes": null, "repositories_checksummed_count": 20, "repositories_checksum_failed_count": 5, "repositories_checksummed_in_percentage": "48.78%", @@ -518,12 +518,12 @@ Example response: "job_artifacts_synced_missing_on_primary_count": 0, "job_artifacts_synced_in_percentage": "50.00%", "container_repositories_count": 3, - "container_repositories_synced_count": nil, - "container_repositories_failed_count": nil, + "container_repositories_synced_count": null, + "container_repositories_failed_count": null, "container_repositories_synced_in_percentage": "0.00%", "design_repositories_count": 3, - "design_repositories_synced_count": nil, - "design_repositories_failed_count": nil, + "design_repositories_synced_count": null, + "design_repositories_failed_count": null, "design_repositories_synced_in_percentage": "0.00%", "projects_count": 41, "repositories_count": 41, @@ -534,10 +534,10 @@ Example response: "wikis_failed_count": 0, "wikis_synced_count": 41, "wikis_synced_in_percentage": "100.00%", - "replication_slots_count": nil, - "replication_slots_used_count": nil, + "replication_slots_count": null, + "replication_slots_used_count": null, "replication_slots_used_in_percentage": "0.00%", - "replication_slots_max_retained_wal_bytes": nil, + "replication_slots_max_retained_wal_bytes": null, "last_event_id": 23, "last_event_timestamp": 1509681166, "cursor_last_event_id": 23, diff --git a/doc/api/graphql/getting_started.md b/doc/api/graphql/getting_started.md index ca2b7989700..1b7e273f7a1 100644 --- a/doc/api/graphql/getting_started.md +++ b/doc/api/graphql/getting_started.md @@ -314,9 +314,10 @@ Pagination is a way of only asking for a subset of the records (say, the first 1 If we want more of them, we can make another request for the next 10 from the server (in the form of something like "please give me the next 10 records"). -By default, the GitLab GraphQL API returns only the first 100 records of any collection. +By default, the GitLab GraphQL API returns 100 records per page. This can be changed by using `first` or `last` arguments. Both arguments take a value, so `first: 10` returns the first 10 records, and `last: 10` the last 10 records. +There is a limit on how many records will be returned per page, which is generally `100`. Example: Retrieve only the first 2 issues (slicing). The `cursor` field gives us a position from which we can retrieve further records relative to that one. diff --git a/doc/api/graphql/index.md b/doc/api/graphql/index.md index 45a327d323b..a97d892dbc4 100644 --- a/doc/api/graphql/index.md +++ b/doc/api/graphql/index.md @@ -117,6 +117,43 @@ information about multiplexed queries is also available for [GraphQL Ruby](https://graphql-ruby.org/queries/multiplex.html), the library GitLab uses on the backend. +## Limits + +The following limits apply to the GitLab GraphQL API. + +### Max page size + +By default, connections return at most `100` records ("nodes") per page, +and this limit applies to most connections in the API. Particular connections +may have different max page size limits that are higher or lower. + +### Max query complexity + +The GitLab GraphQL API scores the _complexity_ of a query. Generally, larger +queries will have a higher complexity score. This limit is designed to protect +the API from performing queries that could negatively impact its overall performance. + +The complexity of a single query is limited to a maximum of: + +- `200` for unauthenticated requests. +- `250` for authenticated requests. + +There is no way to discover the complexity of a query except by exceeding the limit. + +If a query exceeds the complexity limit an error message response will +be returned. + +In general, each field in a query will add `1` to the complexity score, although +this can be higher or lower for particular fields. Sometimes the addition of +certain arguments may also increase the complexity of a query. + +The complexity limits may be revised in future, and additionally, the complexity +of a query may be altered. + +### Request timeout + +Requests time out at 30 seconds. + ## Reference The GitLab GraphQL reference [is available](reference/index.md). diff --git a/doc/api/graphql/reference/gitlab_schema.graphql b/doc/api/graphql/reference/gitlab_schema.graphql index 94792a49933..c3120d8417d 100644 --- a/doc/api/graphql/reference/gitlab_schema.graphql +++ b/doc/api/graphql/reference/gitlab_schema.graphql @@ -3,12 +3,12 @@ Represents the access level of a relationship between a User and object that it """ type AccessLevel { """ - Integer representation of access level + Integer representation of access level. """ integerValue: Int """ - String representation of access level + String representation of access level. """ stringValue: AccessLevelEnum } @@ -40,7 +40,7 @@ input AddAwardEmojiInput { clientMutationId: String """ - The emoji name + The emoji name. """ name: String! } @@ -180,7 +180,7 @@ Describes an alert from the project's Alert Management """ type AlertManagementAlert implements Noteable { """ - Assignees of the alert + Assignees of the alert. """ assignees( """ @@ -205,22 +205,22 @@ type AlertManagementAlert implements Noteable { ): UserConnection """ - Timestamp the alert was created + Timestamp the alert was created. """ createdAt: Time """ - Description of the alert + Description of the alert. """ description: String """ - Alert details + Alert details. """ details: JSON """ - The URL of the alert detail page + The URL of the alert detail page. """ detailsUrl: String! @@ -250,42 +250,42 @@ type AlertManagementAlert implements Noteable { ): DiscussionConnection! """ - Timestamp the alert ended + Timestamp the alert ended. """ endedAt: Time """ - Environment for the alert + Environment for the alert. """ environment: Environment """ - Number of events of this alert + Number of events of this alert. """ eventCount: Int """ - List of hosts the alert came from + List of hosts the alert came from. """ hosts: [String!] """ - Internal ID of the alert + Internal ID of the alert. """ iid: ID! """ - Internal ID of the GitLab issue attached to the alert + Internal ID of the GitLab issue attached to the alert. """ issueIid: ID """ - URL for metrics embed for the alert + URL for metrics embed for the alert. """ metricsDashboardUrl: String """ - Monitoring tool the alert came from + Monitoring tool the alert came from. """ monitoringTool: String @@ -315,42 +315,42 @@ type AlertManagementAlert implements Noteable { ): NoteConnection! """ - The alert condition for Prometheus + The alert condition for Prometheus. """ prometheusAlert: PrometheusAlert """ - Runbook for the alert as defined in alert details + Runbook for the alert as defined in alert details. """ runbook: String """ - Service the alert came from + Service the alert came from. """ service: String """ - Severity of the alert + Severity of the alert. """ severity: AlertManagementSeverity """ - Timestamp the alert was raised + Timestamp the alert was raised. """ startedAt: Time """ - Status of the alert + Status of the alert. """ status: AlertManagementStatus """ - Title of the alert + Title of the alert. """ title: String """ - Todos of the current user for the alert + To-do items of the current user for the alert. """ todos( """ @@ -405,7 +405,7 @@ type AlertManagementAlert implements Noteable { ): TodoConnection """ - Timestamp the alert was last updated + Timestamp the alert was last updated. """ updatedAt: Time } @@ -570,7 +570,7 @@ type AlertManagementAlertStatusCountsType { acknowledged: Int """ - Total number of alerts for the project + Total number of alerts for the project. """ all: Int @@ -580,7 +580,7 @@ type AlertManagementAlertStatusCountsType { ignored: Int """ - Number of alerts with status TRIGGERED or ACKNOWLEDGED for the project + Number of alerts with status TRIGGERED or ACKNOWLEDGED for the project. """ open: Int @@ -615,79 +615,79 @@ An endpoint and credentials used to accept alerts for a project """ type AlertManagementHttpIntegration implements AlertManagementIntegration { """ - Whether the endpoint is currently accepting alerts + Whether the endpoint is currently accepting alerts. """ active: Boolean """ - URL at which Prometheus metrics can be queried to populate the metrics dashboard + URL at which Prometheus metrics can be queried to populate the metrics dashboard. """ apiUrl: String """ - ID of the integration + ID of the integration. """ id: ID! """ - Name of the integration + Name of the integration. """ name: String """ - Token used to authenticate alert notification requests + Token used to authenticate alert notification requests. """ token: String """ - Type of integration + Type of integration. """ type: AlertManagementIntegrationType! """ - Endpoint which accepts alert notifications + Endpoint which accepts alert notifications. """ url: String } """ -Identifier of AlertManagement::HttpIntegration +Identifier of AlertManagement::HttpIntegration. """ scalar AlertManagementHttpIntegrationID interface AlertManagementIntegration { """ - Whether the endpoint is currently accepting alerts + Whether the endpoint is currently accepting alerts. """ active: Boolean """ - URL at which Prometheus metrics can be queried to populate the metrics dashboard + URL at which Prometheus metrics can be queried to populate the metrics dashboard. """ apiUrl: String """ - ID of the integration + ID of the integration. """ id: ID! """ - Name of the integration + Name of the integration. """ name: String """ - Token used to authenticate alert notification requests + Token used to authenticate alert notification requests. """ token: String """ - Type of integration + Type of integration. """ type: AlertManagementIntegrationType! """ - Endpoint which accepts alert notifications + Endpoint which accepts alert notifications. """ url: String } @@ -743,6 +743,26 @@ enum AlertManagementIntegrationType { } """ +Parsed field from an alert used for custom mappings +""" +type AlertManagementPayloadAlertField { + """ + Human-readable label of the payload path. + """ + label: String + + """ + Path to value inside payload JSON. + """ + path: [String!] + + """ + Type of the parsed value. + """ + type: AlertManagementPayloadAlertFieldType +} + +""" Field that are available while modifying the custom mapping attributes for an HTTP integration """ input AlertManagementPayloadAlertFieldInput { @@ -847,37 +867,37 @@ An endpoint and credentials used to accept Prometheus alerts for a project """ type AlertManagementPrometheusIntegration implements AlertManagementIntegration { """ - Whether the endpoint is currently accepting alerts + Whether the endpoint is currently accepting alerts. """ active: Boolean """ - URL at which Prometheus metrics can be queried to populate the metrics dashboard + URL at which Prometheus metrics can be queried to populate the metrics dashboard. """ apiUrl: String """ - ID of the integration + ID of the integration. """ id: ID! """ - Name of the integration + Name of the integration. """ name: String """ - Token used to authenticate alert notification requests + Token used to authenticate alert notification requests. """ token: String """ - Type of integration + Type of integration. """ type: AlertManagementIntegrationType! """ - Endpoint which accepts alert notifications + Endpoint which accepts alert notifications. """ url: String } @@ -997,7 +1017,7 @@ type AlertSetAssigneesPayload { issue: Issue """ - The todo after mutation. + The to-do item after mutation. """ todo: Todo } @@ -1047,13 +1067,13 @@ type AlertTodoCreatePayload { issue: Issue """ - The todo after mutation. + The to-do item after mutation. """ todo: Todo } """ -Identifier of Analytics::DevopsAdoption::Segment +Identifier of Analytics::DevopsAdoption::Segment. """ scalar AnalyticsDevopsAdoptionSegmentID @@ -1077,32 +1097,32 @@ An emoji awarded by a user """ type AwardEmoji { """ - The emoji description + The emoji description. """ description: String! """ - The emoji as an icon + The emoji as an icon. """ emoji: String! """ - The emoji name + The emoji name. """ name: String! """ - The emoji in unicode + The emoji in Unicode. """ unicode: String! """ - The unicode version for this emoji + The Unicode version for this emoji. """ unicodeVersion: String! """ - The user who awarded the emoji + The user who awarded the emoji. """ user: User! } @@ -1122,7 +1142,7 @@ input AwardEmojiAddInput { clientMutationId: String """ - The emoji name + The emoji name. """ name: String! } @@ -1148,6 +1168,41 @@ type AwardEmojiAddPayload { } """ +The connection type for AwardEmoji. +""" +type AwardEmojiConnection { + """ + A list of edges. + """ + edges: [AwardEmojiEdge] + + """ + A list of nodes. + """ + nodes: [AwardEmoji] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! +} + +""" +An edge in a connection. +""" +type AwardEmojiEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: AwardEmoji +} + +""" Autogenerated input type of AwardEmojiRemove """ input AwardEmojiRemoveInput { @@ -1162,7 +1217,7 @@ input AwardEmojiRemoveInput { clientMutationId: String """ - The emoji name + The emoji name. """ name: String! } @@ -1202,7 +1257,7 @@ input AwardEmojiToggleInput { clientMutationId: String """ - The emoji name + The emoji name. """ name: String! } @@ -1233,7 +1288,7 @@ type AwardEmojiTogglePayload { } """ -Identifier of Awardable +Identifier of Awardable. """ scalar AwardableID @@ -1287,7 +1342,7 @@ type Blob implements Entry { path: String! """ - Last commit sha for the entry + Last commit SHA for the entry """ sha: String! @@ -1391,17 +1446,17 @@ type Board { ): BoardEpicConnection """ - Whether or not backlog list is hidden + Whether or not backlog list is hidden. """ hideBacklogList: Boolean """ - Whether or not closed list is hidden + Whether or not closed list is hidden. """ hideClosedList: Boolean """ - ID (global ID) of the board + ID (global ID) of the board. """ id: ID! @@ -1436,7 +1491,7 @@ type Board { ): LabelConnection """ - Lists of the board + Lists of the board. """ lists( """ @@ -1476,7 +1531,7 @@ type Board { milestone: Milestone """ - Name of the board + Name of the board. """ name: String @@ -1536,12 +1591,37 @@ Represents an epic on an issue board """ type BoardEpic implements CurrentUserTodos & Noteable { """ - Author of the epic + Author of the epic. """ author: User! """ - Children (sub-epics) of the epic + A list of award emojis associated with the epic. + """ + awardEmoji( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): AwardEmojiConnection + + """ + Children (sub-epics) of the epic. """ children( """ @@ -1639,22 +1719,22 @@ type BoardEpic implements CurrentUserTodos & Noteable { ): EpicConnection """ - Timestamp of when the epic was closed + Timestamp of when the epic was closed. """ closedAt: Time """ - Indicates if the epic is confidential + Indicates if the epic is confidential. """ confidential: Boolean """ - Timestamp of when the epic was created + Timestamp of when the epic was created. """ createdAt: Time """ - Todos for the current user + To-do items for the current user. """ currentUserTodos( """ @@ -1678,23 +1758,23 @@ type BoardEpic implements CurrentUserTodos & Noteable { last: Int """ - State of the todos + State of the to-do items. """ state: TodoStateEnum ): TodoConnection! """ - Number of open and closed descendant epics and issues + Number of open and closed descendant epics and issues. """ descendantCounts: EpicDescendantCount """ - Total weight of open and closed issues in the epic and its descendants + Total weight of open and closed issues in the epic and its descendants. """ descendantWeightSum: EpicDescendantWeights """ - Description of the epic + Description of the epic. """ description: String @@ -1724,67 +1804,67 @@ type BoardEpic implements CurrentUserTodos & Noteable { ): DiscussionConnection! """ - Number of downvotes the epic has received + Number of downvotes the epic has received. """ downvotes: Int! """ - Due date of the epic + Due date of the epic. """ dueDate: Time """ - Fixed due date of the epic + Fixed due date of the epic. """ dueDateFixed: Time """ - Inherited due date of the epic from milestones + Inherited due date of the epic from milestones. """ dueDateFromMilestones: Time """ - Indicates if the due date has been manually set + Indicates if the due date has been manually set. """ dueDateIsFixed: Boolean """ - Group to which the epic belongs + Group to which the epic belongs. """ group: Group! """ - Indicates if the epic has children + Indicates if the epic has children. """ hasChildren: Boolean! """ - Indicates if the epic has direct issues + Indicates if the epic has direct issues. """ hasIssues: Boolean! """ - Indicates if the epic has a parent epic + Indicates if the epic has a parent epic. """ hasParent: Boolean! """ - Current health status of the epic + Current health status of the epic. """ healthStatus: EpicHealthStatus """ - ID of the epic + ID of the epic. """ id: ID! """ - Internal ID of the epic + Internal ID of the epic. """ iid: ID! """ - A list of issues associated with the epic + A list of issues associated with the epic. """ issues( """ @@ -1809,7 +1889,7 @@ type BoardEpic implements CurrentUserTodos & Noteable { ): EpicIssueConnection """ - Labels assigned to the epic + Labels assigned to the epic. """ labels( """ @@ -1859,12 +1939,12 @@ type BoardEpic implements CurrentUserTodos & Noteable { ): NoteConnection! """ - Parent epic of the epic + Parent epic of the epic. """ parent: Epic """ - List of participants for the epic + List of participants for the epic. """ participants( """ @@ -1889,77 +1969,77 @@ type BoardEpic implements CurrentUserTodos & Noteable { ): UserConnection """ - Internal reference of the epic. Returned in shortened format by default + Internal reference of the epic. Returned in shortened format by default. """ reference( """ - Indicates if the reference should be returned in full + Indicates if the reference should be returned in full. """ full: Boolean = false ): String! """ - URI path of the epic-issue relationship + URI path of the epic-issue relationship. """ relationPath: String """ - The relative position of the epic in the epic tree + The relative position of the epic in the epic tree. """ relativePosition: Int """ - Start date of the epic + Start date of the epic. """ startDate: Time """ - Fixed start date of the epic + Fixed start date of the epic. """ startDateFixed: Time """ - Inherited start date of the epic from milestones + Inherited start date of the epic from milestones. """ startDateFromMilestones: Time """ - Indicates if the start date has been manually set + Indicates if the start date has been manually set. """ startDateIsFixed: Boolean """ - State of the epic + State of the epic. """ state: EpicState! """ - Indicates the currently logged in user is subscribed to the epic + Indicates the currently logged in user is subscribed to the epic. """ subscribed: Boolean! """ - Title of the epic + Title of the epic. """ title: String """ - Timestamp of when the epic was updated + Timestamp of when the epic was updated. """ updatedAt: Time """ - Number of upvotes the epic has received + Number of upvotes the epic has received. """ upvotes: Int! """ - Number of user discussions in the epic + Number of user discussions in the epic. """ userDiscussionsCount: Int! """ - Number of user notes of the epic + Number of user notes of the epic. """ userNotesCount: Int! @@ -1974,12 +2054,12 @@ type BoardEpic implements CurrentUserTodos & Noteable { userPreferences: BoardEpicUserPreferences """ - Web path of the epic + Web path of the epic. """ webPath: String! """ - Web URL of the epic + Web URL of the epic. """ webUrl: String! } @@ -2030,18 +2110,18 @@ type BoardEpicUserPreferences { } """ -Identifier of Board +Identifier of Board. """ scalar BoardID input BoardIssueInput { """ - Filter by assignee username + Filter by assignee username. """ assigneeUsername: [String] """ - Filter by author username + Filter by author username. """ authorUsername: String @@ -2066,32 +2146,32 @@ input BoardIssueInput { iterationWildcardId: IterationWildcardId """ - Filter by label name + Filter by label name. """ labelName: [String] """ - Filter by milestone title + Filter by milestone title. """ milestoneTitle: String """ - Filter by reaction emoji + Filter by reaction emoji. """ myReactionEmoji: String """ - List of negated params. Warning: this argument is experimental and a subject to change in future + List of negated params. Warning: this argument is experimental and a subject to change in future. """ not: NegatedBoardIssueInput """ - Filter by release tag + Filter by release tag. """ releaseTag: String """ - Search query for issue title or description + Search query for issue title or description. """ search: String @@ -2111,17 +2191,17 @@ type BoardList { assignee: User """ - Indicates if list is collapsed for this user + Indicates if list is collapsed for this user. """ collapsed: Boolean """ - ID (global ID) of the list + ID (global ID) of the list. """ id: ID! """ - Board issues + Board issues. """ issues( """ @@ -2151,7 +2231,7 @@ type BoardList { ): IssueConnection """ - Count of issues in the list + Count of issues in the list. """ issuesCount: Int @@ -2161,7 +2241,7 @@ type BoardList { iteration: Iteration """ - Label of the list + Label of the list. """ label: Label @@ -2171,7 +2251,7 @@ type BoardList { limitMetric: ListLimitMetric """ - Type of the list + Type of the list. """ listType: String! @@ -2191,12 +2271,12 @@ type BoardList { milestone: Milestone """ - Position of list within the board + Position of list within the board. """ position: Int """ - Title of the list + Title of the list. """ title: String! @@ -2352,23 +2432,23 @@ type BoardListUpdateLimitMetricsPayload { } """ -Identifier of Boards::EpicBoard +Identifier of Boards::EpicBoard. """ scalar BoardsEpicBoardID """ -Identifier of Boards::EpicList +Identifier of Boards::EpicList. """ scalar BoardsEpicListID type Branch { """ - Commit for the branch + Commit for the branch. """ commit: Commit """ - Name of the branch + Name of the branch. """ name: String! } @@ -2482,17 +2562,17 @@ type CiCdSettingsUpdatePayload { type CiConfig { """ - Linting errors + Linting errors. """ errors: [String!] """ - Merged CI config YAML + Merged CI configuration YAML. """ mergedYaml: String """ - Stages of the pipeline + Stages of the pipeline. """ stages( """ @@ -2517,14 +2597,14 @@ type CiConfig { ): CiConfigStageConnection """ - Status of linting, can be either valid or invalid + Status of linting, can be either valid or invalid. """ status: CiConfigStatus } type CiConfigGroup { """ - Jobs in group + Jobs in group. """ jobs( """ @@ -2549,12 +2629,12 @@ type CiConfigGroup { ): CiConfigJobConnection """ - Name of the job group + Name of the job group. """ name: String """ - Size of the job group + Size of the job group. """ size: Int } @@ -2725,7 +2805,7 @@ type CiConfigJobRestriction { type CiConfigNeed { """ - Name of the need + Name of the need. """ name: String } @@ -2767,7 +2847,7 @@ type CiConfigNeedEdge { type CiConfigStage { """ - Groups of jobs for the stage + Groups of jobs for the stage. """ groups( """ @@ -2792,7 +2872,7 @@ type CiConfigStage { ): CiConfigGroupConnection """ - Name of the stage + Name of the stage. """ name: String } @@ -2849,12 +2929,12 @@ enum CiConfigStatus { type CiGroup { """ - Detailed status of the group + Detailed status of the group. """ detailedStatus: DetailedStatus """ - Jobs in group + Jobs in group. """ jobs( """ @@ -2879,12 +2959,12 @@ type CiGroup { ): CiJobConnection """ - Name of the job group + Name of the job group. """ name: String """ - Size of the group + Size of the group. """ size: Int } @@ -2926,7 +3006,7 @@ type CiGroupEdge { type CiJob { """ - Artifacts generated by the job + Artifacts generated by the job. """ artifacts( """ @@ -2951,17 +3031,17 @@ type CiJob { ): CiJobArtifactConnection """ - Detailed status of the job + Detailed status of the job. """ detailedStatus: DetailedStatus """ - Name of the job + Name of the job. """ name: String """ - References to builds that must complete before the jobs run + References to builds that must complete before the jobs run. """ needs( """ @@ -2986,24 +3066,24 @@ type CiJob { ): CiBuildNeedConnection """ - Pipeline the job belongs to + Pipeline the job belongs to. """ pipeline: Pipeline """ - Schedule for the build + Schedule for the build. """ scheduledAt: Time } type CiJobArtifact { """ - URL for downloading the artifact's file + URL for downloading the artifact's file. """ downloadPath: String """ - File type of the artifact + File type of the artifact. """ fileType: JobArtifactFileType } @@ -3079,18 +3159,18 @@ type CiJobEdge { } """ -Identifier of Ci::Pipeline +Identifier of Ci::Pipeline. """ scalar CiPipelineID type CiStage { """ - Detailed status of the stage + Detailed status of the stage. """ detailedStatus: DetailedStatus """ - Group of jobs for the stage + Group of jobs for the stage. """ groups( """ @@ -3115,7 +3195,7 @@ type CiStage { ): CiGroupConnection """ - Name of the stage + Name of the stage. """ name: String } @@ -3212,7 +3292,7 @@ The connection type for ClusterAgent. """ type ClusterAgentConnection { """ - Total count of collection + Total count of collection. """ count: Int! @@ -3299,7 +3379,7 @@ The connection type for ClusterAgentToken. """ type ClusterAgentTokenConnection { """ - Total count of collection + Total count of collection. """ count: Int! @@ -3405,17 +3485,17 @@ type ClusterAgentTokenEdge { } """ -Identifier of Clusters::Agent +Identifier of Clusters::Agent. """ scalar ClustersAgentID """ -Identifier of Clusters::AgentToken +Identifier of Clusters::AgentToken. """ scalar ClustersAgentTokenID """ -Identifier of Clusters::Cluster +Identifier of Clusters::Cluster. """ scalar ClustersClusterID @@ -3501,27 +3581,27 @@ type CodeCoverageSummary { type Commit { """ - Author of the commit + Author of the commit. """ author: User """ - Commit authors gravatar + Commit authors gravatar. """ authorGravatar: String """ - Commit authors name + Commit authors name. """ authorName: String """ - Timestamp of when the commit was authored + Timestamp of when the commit was authored. """ authoredDate: Time """ - Description of the commit message + Description of the commit message. """ description: String @@ -3531,17 +3611,17 @@ type Commit { descriptionHtml: String """ - ID (global ID) of the commit + ID (global ID) of the commit. """ id: ID! """ - Raw commit message + Raw commit message. """ message: String """ - Pipelines of the commit ordered latest first + Pipelines of the commit ordered latest first. """ pipelines( """ @@ -3581,22 +3661,22 @@ type Commit { ): PipelineConnection """ - SHA1 ID of the commit + SHA1 ID of the commit. """ sha: String! """ - Short SHA1 ID of the commit + Short SHA1 ID of the commit. """ shortId: String! """ - Rendered HTML of the commit signature + Rendered HTML of the commit signature. """ signatureHtml: String """ - Title of the commit message + Title of the commit message. """ title: String @@ -3606,49 +3686,49 @@ type Commit { titleHtml: String """ - Web path of the commit + Web path of the commit. """ webPath: String! """ - Web URL of the commit + Web URL of the commit. """ webUrl: String! } input CommitAction { """ - The action to perform, create, delete, move, update, chmod + The action to perform, create, delete, move, update, chmod. """ action: CommitActionMode! """ - Content of the file + Content of the file. """ content: String """ - Encoding of the file. Default is text + Encoding of the file. Default is text. """ encoding: CommitEncoding """ - Enables/disables the execute flag on the file + Enables/disables the execute flag on the file. """ executeFilemode: Boolean """ - Full path to the file + Full path to the file. """ filePath: String! """ - Last known file commit ID + Last known file commit ID. """ lastCommitId: String """ - Original full path to the file being moved + Original full path to the file being moved. """ previousPath: String } @@ -3723,7 +3803,7 @@ input CommitCreateInput { clientMutationId: String """ - Raw commit message + Raw commit message. """ message: String! @@ -3808,6 +3888,12 @@ type ComplianceFramework { Name of the compliance framework """ name: String! + + """ + Full path of the compliance pipeline configuration stored in a project + repository, such as `.gitlab/compliance/soc2/.gitlab-ci.yml`. + """ + pipelineConfigurationFullPath: String } """ @@ -3860,14 +3946,35 @@ input ComplianceFrameworkInput { New name for the compliance framework. """ name: String + + """ + Full path of the compliance pipeline configuration stored in a project + repository, such as `.gitlab/compliance/soc2/.gitlab-ci.yml`. + """ + pipelineConfigurationFullPath: String } """ -Identifier of ComplianceManagement::Framework +Identifier of ComplianceManagement::Framework. """ scalar ComplianceManagementFrameworkID """ +Composer metadata +""" +type ComposerMetadata { + """ + Data of the Composer JSON file. + """ + composerJson: PackageComposerJsonType! + + """ + Target SHA of the package. + """ + targetSha: String! +} + +""" Autogenerated input type of ConfigureSast """ input ConfigureSastInput { @@ -3917,47 +4024,47 @@ A tag expiration policy designed to keep only the images that matter most """ type ContainerExpirationPolicy { """ - This container expiration policy schedule + This container expiration policy schedule. """ cadence: ContainerExpirationPolicyCadenceEnum! """ - Timestamp of when the container expiration policy was created + Timestamp of when the container expiration policy was created. """ createdAt: Time! """ - Indicates whether this container expiration policy is enabled + Indicates whether this container expiration policy is enabled. """ enabled: Boolean! """ - Number of tags to retain + Number of tags to retain. """ keepN: ContainerExpirationPolicyKeepEnum """ - Tags with names matching this regex pattern will expire + Tags with names matching this regex pattern will expire. """ nameRegex: UntrustedRegexp """ - Tags with names matching this regex pattern will be preserved + Tags with names matching this regex pattern will be preserved. """ nameRegexKeep: UntrustedRegexp """ - Next time that this container expiration policy will get executed + Next time that this container expiration policy will get executed. """ nextRunAt: Time """ - Tags older that this will expire + Tags older that this will expire. """ olderThan: ContainerExpirationPolicyOlderThanEnum """ - Timestamp of when the container expiration policy was updated + Timestamp of when the container expiration policy was updated. """ updatedAt: Time! } @@ -4088,7 +4195,7 @@ type ContainerRepository { path: String! """ - Project of the container registry + Project of the container registry. """ project: Project! @@ -4198,7 +4305,7 @@ type ContainerRepositoryDetails { path: String! """ - Project of the container registry + Project of the container registry. """ project: Project! @@ -4208,7 +4315,7 @@ type ContainerRepositoryDetails { status: ContainerRepositoryStatus """ - Tags of the container repository + Tags of the container repository. """ tags( """ @@ -4259,7 +4366,7 @@ type ContainerRepositoryEdge { } """ -Identifier of ContainerRepository +Identifier of ContainerRepository. """ scalar ContainerRepositoryID @@ -4408,7 +4515,7 @@ type CreateAlertIssuePayload { issue: Issue """ - The todo after mutation. + The to-do item after mutation. """ todo: Todo } @@ -4488,17 +4595,17 @@ input CreateBoardInput { clientMutationId: String """ - The group full path the resource is associated with. + Full path of the group with which the resource is associated. """ groupPath: ID """ - Whether or not backlog list is hidden + Whether or not backlog list is hidden. """ hideBacklogList: Boolean """ - Whether or not closed list is hidden + Whether or not closed list is hidden. """ hideClosedList: Boolean @@ -4528,7 +4635,7 @@ input CreateBoardInput { name: String """ - The project full path the resource is associated with. + Full path of the project with which the resource is associated. """ projectPath: ID @@ -5083,12 +5190,12 @@ input CreateIterationInput { dueDate: String """ - The target group for the iteration. + Full path of the group with which the resource is associated. """ groupPath: ID """ - The target project for the iteration. + Full path of the project with which the resource is associated. """ projectPath: ID @@ -5228,6 +5335,13 @@ input CreateSnippetInput { blobActions: [SnippetBlobActionInputType!] """ + A valid CAPTCHA response value obtained by using the provided captchaSiteKey + with a CAPTCHA API to present a challenge to be solved on the client. Required + to resubmit if the previous operation returned "NeedsCaptchaResponse: true". + """ + captchaResponse: String + + """ A unique identifier for the client performing the mutation. """ clientMutationId: String @@ -5243,6 +5357,13 @@ input CreateSnippetInput { projectPath: ID """ + The spam log ID which must be passed along with a valid CAPTCHA response for + the operation to be completed. Required to resubmit if the previous operation + returned "NeedsCaptchaResponse: true". + """ + spamLogId: Int + + """ Title of the snippet. """ title: String! @@ -5263,6 +5384,13 @@ Autogenerated return type of CreateSnippet """ type CreateSnippetPayload { """ + The CAPTCHA site key which must be used to render a challenge for the user to + solve to obtain a valid captchaResponse value. Included only when an operation + was not completed because "NeedsCaptchaResponse" is true. + """ + captchaSiteKey: String + + """ A unique identifier for the client performing the mutation. """ clientMutationId: String @@ -5273,14 +5401,31 @@ type CreateSnippetPayload { errors: [String!]! """ + Indicates whether the operation was detected as possible spam and not + completed. If CAPTCHA is enabled, the request must be resubmitted with a valid + CAPTCHA response and spam_log_id included for the operation to be completed. + Included only when an operation was not completed because + "NeedsCaptchaResponse" is true. + """ + needsCaptchaResponse: Boolean + + """ The snippet after mutation. """ snippet: Snippet """ - Indicates whether the operation returns a record detected as spam. + Indicates whether the operation was detected as definite spam. There is no + option to resubmit the request with a CAPTCHA response. """ spam: Boolean + + """ + The spam log ID which must be passed along with a valid CAPTCHA response for + an operation to be completed. Included only when an operation was not + completed because "NeedsCaptchaResponse" is true. + """ + spamLogId: Int } """ @@ -5335,7 +5480,7 @@ type CreateTestCasePayload { interface CurrentUserTodos { """ - Todos for the current user + To-do items for the current user. """ currentUserTodos( """ @@ -5359,7 +5504,7 @@ interface CurrentUserTodos { last: Int """ - State of the todos + State of the to-do items. """ state: TodoStateEnum ): TodoConnection! @@ -5370,22 +5515,22 @@ A custom emoji uploaded by user """ type CustomEmoji { """ - Whether the emoji is an external link + Whether the emoji is an external link. """ external: Boolean! """ - The ID of the emoji + The ID of the emoji. """ id: CustomEmojiID! """ - The name of the emoji + The name of the emoji. """ name: String! """ - The link to file of the emoji + The link to file of the emoji. """ url: String! } @@ -5426,7 +5571,7 @@ type CustomEmojiEdge { } """ -Identifier of CustomEmoji +Identifier of CustomEmoji. """ scalar CustomEmojiID @@ -5475,6 +5620,146 @@ type DastOnDemandScanCreatePayload { pipelineUrl: String } +""" +Represents a DAST Profile +""" +type DastProfile { + """ + The associated scanner profile. + """ + dastScannerProfile: DastScannerProfile + + """ + The associated site profile. + """ + dastSiteProfile: DastSiteProfile + + """ + The description of the scan. + """ + description: String + + """ + Relative web path to the edit page of a profile. + """ + editPath: String + + """ + ID of the profile. + """ + id: DastProfileID! + + """ + The name of the profile. + """ + name: String +} + +""" +The connection type for DastProfile. +""" +type DastProfileConnection { + """ + A list of edges. + """ + edges: [DastProfileEdge] + + """ + A list of nodes. + """ + nodes: [DastProfile] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! +} + +""" +Autogenerated input type of DastProfileCreate +""" +input DastProfileCreateInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the scanner profile to be associated. + """ + dastScannerProfileId: DastScannerProfileID! + + """ + ID of the site profile to be associated. + """ + dastSiteProfileId: DastSiteProfileID! + + """ + The description of the profile. Defaults to an empty string. + """ + description: String = "" + + """ + The project the profile belongs to. + """ + fullPath: ID! + + """ + The name of the profile. + """ + name: String! + + """ + Run scan using profile after creation. Defaults to false. + """ + runAfterCreate: Boolean = false +} + +""" +Autogenerated return type of DastProfileCreate +""" +type DastProfileCreatePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The created profile. + """ + dastProfile: DastProfile + + """ + Errors encountered during execution of the mutation. + """ + errors: [String!]! + + """ + The URL of the pipeline that was created. Requires `runAfterCreate` to be set to `true`. + """ + pipelineUrl: String! +} + +""" +An edge in a connection. +""" +type DastProfileEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: DastProfile +} + +""" +Identifier of Dast::Profile. +""" +scalar DastProfileID + enum DastScanTypeEnum { """ Active DAST scan. This scan will make active attacks against the target site. @@ -5682,7 +5967,7 @@ type DastScannerProfileEdge { } """ -Identifier of DastScannerProfile +Identifier of DastScannerProfile. """ scalar DastScannerProfileID @@ -5914,7 +6199,7 @@ type DastSiteProfileEdge { } """ -Identifier of DastSiteProfile +Identifier of DastSiteProfile. """ scalar DastSiteProfileID @@ -6056,7 +6341,7 @@ type DastSiteTokenCreatePayload { } """ -Identifier of DastSiteToken +Identifier of DastSiteToken. """ scalar DastSiteTokenID @@ -6171,10 +6456,45 @@ type DastSiteValidationEdge { } """ -Identifier of DastSiteValidation +Identifier of DastSiteValidation. """ scalar DastSiteValidationID +""" +Autogenerated input type of DastSiteValidationRevoke +""" +input DastSiteValidationRevokeInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The project the site validation belongs to. + """ + fullPath: ID! + + """ + Normalized URL of the target to be revoked. + """ + normalizedTargetUrl: String! +} + +""" +Autogenerated return type of DastSiteValidationRevoke +""" +type DastSiteValidationRevokePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Errors encountered during execution of the mutation. + """ + errors: [String!]! +} + enum DastSiteValidationStrategyEnum { """ Header validation @@ -6347,17 +6667,17 @@ The response from the AdminSidekiqQueuesDeleteJobs mutation """ type DeleteJobsResponse { """ - Whether or not the entire queue was processed in time; if not, retrying the same request is safe + Whether or not the entire queue was processed in time; if not, retrying the same request is safe. """ completed: Boolean """ - The number of matching jobs deleted + The number of matching jobs deleted. """ deletedJobs: Int """ - The queue size after processing + The queue size after processing. """ queueSize: Int } @@ -6367,7 +6687,7 @@ A single design """ type Design implements CurrentUserTodos & DesignFields & Noteable { """ - Todos for the current user + To-do items for the current user. """ currentUserTodos( """ @@ -6391,13 +6711,13 @@ type Design implements CurrentUserTodos & DesignFields & Noteable { last: Int """ - State of the todos + State of the to-do items. """ state: TodoStateEnum ): TodoConnection! """ - The diff refs for this design + The diff refs for this design. """ diffRefs: DiffRefs! @@ -6427,27 +6747,27 @@ type Design implements CurrentUserTodos & DesignFields & Noteable { ): DiscussionConnection! """ - How this design was changed in the current version + How this design was changed in the current version. """ event: DesignVersionEvent! """ - The filename of the design + The filename of the design. """ filename: String! """ - The full path to the design file + The full path to the design file. """ fullPath: String! """ - The ID of this design + The ID of this design. """ id: ID! """ - The URL of the full-sized image + The URL of the full-sized image. """ image: String! @@ -6457,7 +6777,7 @@ type Design implements CurrentUserTodos & DesignFields & Noteable { imageV432x230: String """ - The issue the design belongs to + The issue the design belongs to. """ issue: Issue! @@ -6487,17 +6807,17 @@ type Design implements CurrentUserTodos & DesignFields & Noteable { ): NoteConnection! """ - The total count of user-created notes for this design + The total count of user-created notes for this design. """ notesCount: Int! """ - The project the design belongs to + The project the design belongs to. """ project: Project! """ - All versions related to this design ordered newest first + All versions related to this design ordered newest first. """ versions( """ @@ -6537,37 +6857,37 @@ A design pinned to a specific version. The image field reflects the design as of """ type DesignAtVersion implements DesignFields { """ - The underlying design + The underlying design. """ design: Design! """ - The diff refs for this design + The diff refs for this design. """ diffRefs: DiffRefs! """ - How this design was changed in the current version + How this design was changed in the current version. """ event: DesignVersionEvent! """ - The filename of the design + The filename of the design. """ filename: String! """ - The full path to the design file + The full path to the design file. """ fullPath: String! """ - The ID of this design + The ID of this design. """ id: ID! """ - The URL of the full-sized image + The URL of the full-sized image. """ image: String! @@ -6577,22 +6897,22 @@ type DesignAtVersion implements DesignFields { imageV432x230: String """ - The issue the design belongs to + The issue the design belongs to. """ issue: Issue! """ - The total count of user-created notes for this design + The total count of user-created notes for this design. """ notesCount: Int! """ - The project the design belongs to + The project the design belongs to. """ project: Project! """ - The version this design-at-versions is pinned to + The version this design-at-versions is pinned to. """ version: DesignVersion! } @@ -6637,12 +6957,12 @@ A collection of designs """ type DesignCollection { """ - Copy state of the design collection + Copy state of the design collection. """ copyState: DesignCollectionCopyState """ - Find a specific design + Find a specific design. """ design( """ @@ -6657,7 +6977,7 @@ type DesignCollection { ): Design """ - Find a design as of a version + Find a design as of a version. """ designAtVersion( """ @@ -6667,7 +6987,7 @@ type DesignCollection { ): DesignAtVersion """ - All designs for the design collection + All designs for the design collection. """ designs( """ @@ -6708,17 +7028,17 @@ type DesignCollection { ): DesignConnection! """ - Issue associated with the design collection + Issue associated with the design collection. """ issue: Issue! """ - Project associated with the design collection + Project associated with the design collection. """ project: Project! """ - A specific version + A specific version. """ version( """ @@ -6733,7 +7053,7 @@ type DesignCollection { ): DesignVersion """ - All versions related to all designs, ordered newest first + All versions related to all designs, ordered newest first. """ versions( """ @@ -6825,32 +7145,32 @@ type DesignEdge { interface DesignFields { """ - The diff refs for this design + The diff refs for this design. """ diffRefs: DiffRefs! """ - How this design was changed in the current version + How this design was changed in the current version. """ event: DesignVersionEvent! """ - The filename of the design + The filename of the design. """ filename: String! """ - The full path to the design file + The full path to the design file. """ fullPath: String! """ - The ID of this design + The ID of this design. """ id: ID! """ - The URL of the full-sized image + The URL of the full-sized image. """ image: String! @@ -6860,24 +7180,24 @@ interface DesignFields { imageV432x230: String """ - The issue the design belongs to + The issue the design belongs to. """ issue: Issue! """ - The total count of user-created notes for this design + The total count of user-created notes for this design. """ notesCount: Int! """ - The project the design belongs to + The project the design belongs to. """ project: Project! } type DesignManagement { """ - Find a design as of a version + Find a design as of a version. """ designAtVersion( """ @@ -6887,7 +7207,7 @@ type DesignManagement { ): DesignAtVersion """ - Find a version + Find a version. """ version( """ @@ -6943,12 +7263,12 @@ type DesignManagementDeletePayload { } """ -Identifier of DesignManagement::DesignAtVersion +Identifier of DesignManagement::DesignAtVersion. """ scalar DesignManagementDesignAtVersionID """ -Identifier of DesignManagement::Design +Identifier of DesignManagement::Design. """ scalar DesignManagementDesignID @@ -7048,7 +7368,7 @@ type DesignManagementUploadPayload { } """ -Identifier of DesignManagement::Version +Identifier of DesignManagement::Version. """ scalar DesignManagementVersionID @@ -7057,7 +7377,7 @@ A specific version in which designs were added, modified or deleted """ type DesignVersion { """ - A particular design as of this version, provided it is visible at this version + A particular design as of this version, provided it is visible at this version. """ designAtVersion( """ @@ -7077,7 +7397,7 @@ type DesignVersion { ): DesignAtVersion! """ - All designs that were changed in the version + All designs that were changed in the version. """ designs( """ @@ -7102,7 +7422,7 @@ type DesignVersion { ): DesignConnection! """ - All designs that are visible at this version, as of this version + All designs that are visible at this version, as of this version. """ designsAtVersion( """ @@ -7137,12 +7457,12 @@ type DesignVersion { ): DesignAtVersionConnection! """ - ID of the design version + ID of the design version. """ id: ID! """ - SHA of the design version + SHA of the design version. """ sha: ID! } @@ -7454,47 +7774,47 @@ type DestroySnippetPayload { type DetailedStatus { """ - Action information for the status. This includes method, button title, icon, path, and title + Action information for the status. This includes method, button title, icon, path, and title. """ action: StatusAction """ - Path of the details for the status + Path of the details for the status. """ detailsPath: String """ - Favicon of the status + Favicon of the status. """ favicon: String """ - Group of the status + Group of the status. """ group: String """ - Indicates if the status has further details + Indicates if the status has further details. """ hasDetails: Boolean """ - Icon of the status + Icon of the status. """ icon: String """ - Label of the status + Label of the status. """ label: String """ - Text of the status + Text of the status. """ text: String """ - Tooltip associated with the status + Tooltip associated with the status. """ tooltip: String } @@ -7616,12 +7936,12 @@ type DevopsAdoptionSnapshot { input DiffImagePositionInput { """ - Merge base of the branch the comment was made on + Merge base of the branch the comment was made on. """ baseSha: String """ - SHA of the HEAD at the time the comment was made + SHA of the HEAD at the time the comment was made. """ headSha: String! @@ -7637,7 +7957,7 @@ input DiffImagePositionInput { paths: DiffPathsInput! """ - SHA of the branch being compared against + SHA of the branch being compared against. """ startSha: String! @@ -7658,18 +7978,18 @@ input DiffImagePositionInput { } """ -Identifier of DiffNote +Identifier of DiffNote. """ scalar DiffNoteID input DiffPathsInput { """ - The path of the file on the head sha + The path of the file on the head sha. """ newPath: String """ - The path of the file on the start sha + The path of the file on the start sha. """ oldPath: String } @@ -7733,12 +8053,12 @@ type DiffPosition { input DiffPositionInput { """ - Merge base of the branch the comment was made on + Merge base of the branch the comment was made on. """ baseSha: String """ - SHA of the HEAD at the time the comment was made + SHA of the HEAD at the time the comment was made. """ headSha: String! @@ -7759,7 +8079,7 @@ input DiffPositionInput { paths: DiffPathsInput! """ - SHA of the branch being compared against + SHA of the branch being compared against. """ startSha: String! } @@ -7774,17 +8094,17 @@ enum DiffPositionType { type DiffRefs { """ - Merge base of the branch the comment was made on + Merge base of the branch the comment was made on. """ baseSha: String """ - SHA of the HEAD at the time the comment was made + SHA of the HEAD at the time the comment was made. """ headSha: String! """ - SHA of the branch being compared against + SHA of the branch being compared against. """ startSha: String! } @@ -7794,17 +8114,17 @@ Changes to a single file """ type DiffStats { """ - Number of lines added to this file + Number of lines added to this file. """ additions: Int! """ - Number of lines deleted from this file + Number of lines deleted from this file. """ deletions: Int! """ - File path, relative to repository root + File path, relative to repository root. """ path: String! } @@ -7814,22 +8134,22 @@ Aggregated summary of changes """ type DiffStatsSummary { """ - Number of lines added + Number of lines added. """ additions: Int! """ - Number of lines changed + Number of lines changed. """ changes: Int! """ - Number of lines deleted + Number of lines deleted. """ deletions: Int! """ - Number of files changed + Number of files changed. """ fileCount: Int! } @@ -7843,7 +8163,7 @@ type Discussion implements ResolvableInterface { """ ID of this discussion """ - id: ID! + id: DiscussionID! """ All notes in the discussion @@ -7873,7 +8193,7 @@ type Discussion implements ResolvableInterface { """ ID used to reply to this discussion """ - replyId: ID! + replyId: DiscussionID! """ Indicates if the object can be resolved @@ -7932,7 +8252,7 @@ type DiscussionEdge { } """ -Identifier of Discussion +Identifier of Discussion. """ scalar DiscussionID @@ -8043,7 +8363,7 @@ interface Entry { path: String! """ - Last commit sha for the entry + Last commit SHA for the entry """ sha: String! @@ -8067,17 +8387,17 @@ Describes where code is deployed for a project """ type Environment { """ - ID of the environment + ID of the environment. """ id: ID! """ - The most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned + The most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned. """ latestOpenedMostSevereAlert: AlertManagementAlert """ - Metrics dashboard schema for the environment + Metrics dashboard schema for the environment. """ metricsDashboard( """ @@ -8087,7 +8407,7 @@ type Environment { ): MetricsDashboard """ - Human-readable name of the environment + Human-readable name of the environment. """ name: String! @@ -8097,7 +8417,7 @@ type Environment { path: String! """ - State of the environment, for example: available/stopped + State of the environment, for example: available/stopped. """ state: String! } @@ -8138,7 +8458,7 @@ type EnvironmentEdge { } """ -Identifier of Environment +Identifier of Environment. """ scalar EnvironmentID @@ -8182,12 +8502,37 @@ Represents an epic """ type Epic implements CurrentUserTodos & Noteable { """ - Author of the epic + Author of the epic. """ author: User! """ - Children (sub-epics) of the epic + A list of award emojis associated with the epic. + """ + awardEmoji( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): AwardEmojiConnection + + """ + Children (sub-epics) of the epic. """ children( """ @@ -8285,22 +8630,22 @@ type Epic implements CurrentUserTodos & Noteable { ): EpicConnection """ - Timestamp of when the epic was closed + Timestamp of when the epic was closed. """ closedAt: Time """ - Indicates if the epic is confidential + Indicates if the epic is confidential. """ confidential: Boolean """ - Timestamp of when the epic was created + Timestamp of when the epic was created. """ createdAt: Time """ - Todos for the current user + To-do items for the current user. """ currentUserTodos( """ @@ -8324,23 +8669,23 @@ type Epic implements CurrentUserTodos & Noteable { last: Int """ - State of the todos + State of the to-do items. """ state: TodoStateEnum ): TodoConnection! """ - Number of open and closed descendant epics and issues + Number of open and closed descendant epics and issues. """ descendantCounts: EpicDescendantCount """ - Total weight of open and closed issues in the epic and its descendants + Total weight of open and closed issues in the epic and its descendants. """ descendantWeightSum: EpicDescendantWeights """ - Description of the epic + Description of the epic. """ description: String @@ -8370,67 +8715,67 @@ type Epic implements CurrentUserTodos & Noteable { ): DiscussionConnection! """ - Number of downvotes the epic has received + Number of downvotes the epic has received. """ downvotes: Int! """ - Due date of the epic + Due date of the epic. """ dueDate: Time """ - Fixed due date of the epic + Fixed due date of the epic. """ dueDateFixed: Time """ - Inherited due date of the epic from milestones + Inherited due date of the epic from milestones. """ dueDateFromMilestones: Time """ - Indicates if the due date has been manually set + Indicates if the due date has been manually set. """ dueDateIsFixed: Boolean """ - Group to which the epic belongs + Group to which the epic belongs. """ group: Group! """ - Indicates if the epic has children + Indicates if the epic has children. """ hasChildren: Boolean! """ - Indicates if the epic has direct issues + Indicates if the epic has direct issues. """ hasIssues: Boolean! """ - Indicates if the epic has a parent epic + Indicates if the epic has a parent epic. """ hasParent: Boolean! """ - Current health status of the epic + Current health status of the epic. """ healthStatus: EpicHealthStatus """ - ID of the epic + ID of the epic. """ id: ID! """ - Internal ID of the epic + Internal ID of the epic. """ iid: ID! """ - A list of issues associated with the epic + A list of issues associated with the epic. """ issues( """ @@ -8455,7 +8800,7 @@ type Epic implements CurrentUserTodos & Noteable { ): EpicIssueConnection """ - Labels assigned to the epic + Labels assigned to the epic. """ labels( """ @@ -8505,12 +8850,12 @@ type Epic implements CurrentUserTodos & Noteable { ): NoteConnection! """ - Parent epic of the epic + Parent epic of the epic. """ parent: Epic """ - List of participants for the epic + List of participants for the epic. """ participants( """ @@ -8535,77 +8880,77 @@ type Epic implements CurrentUserTodos & Noteable { ): UserConnection """ - Internal reference of the epic. Returned in shortened format by default + Internal reference of the epic. Returned in shortened format by default. """ reference( """ - Indicates if the reference should be returned in full + Indicates if the reference should be returned in full. """ full: Boolean = false ): String! """ - URI path of the epic-issue relationship + URI path of the epic-issue relationship. """ relationPath: String """ - The relative position of the epic in the epic tree + The relative position of the epic in the epic tree. """ relativePosition: Int """ - Start date of the epic + Start date of the epic. """ startDate: Time """ - Fixed start date of the epic + Fixed start date of the epic. """ startDateFixed: Time """ - Inherited start date of the epic from milestones + Inherited start date of the epic from milestones. """ startDateFromMilestones: Time """ - Indicates if the start date has been manually set + Indicates if the start date has been manually set. """ startDateIsFixed: Boolean """ - State of the epic + State of the epic. """ state: EpicState! """ - Indicates the currently logged in user is subscribed to the epic + Indicates the currently logged in user is subscribed to the epic. """ subscribed: Boolean! """ - Title of the epic + Title of the epic. """ title: String """ - Timestamp of when the epic was updated + Timestamp of when the epic was updated. """ updatedAt: Time """ - Number of upvotes the epic has received + Number of upvotes the epic has received. """ upvotes: Int! """ - Number of user discussions in the epic + Number of user discussions in the epic. """ userDiscussionsCount: Int! """ - Number of user notes of the epic + Number of user notes of the epic. """ userNotesCount: Int! @@ -8615,12 +8960,12 @@ type Epic implements CurrentUserTodos & Noteable { userPermissions: EpicPermissions! """ - Web path of the epic + Web path of the epic. """ webPath: String! """ - Web URL of the epic + Web URL of the epic. """ webUrl: String! } @@ -8746,6 +9091,56 @@ type EpicBoardConnection { } """ +Autogenerated input type of EpicBoardCreate +""" +input EpicBoardCreateInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Full path of the group with which the resource is associated. + """ + groupPath: ID + + """ + Whether or not backlog list is hidden. + """ + hideBacklogList: Boolean + + """ + Whether or not closed list is hidden. + """ + hideClosedList: Boolean + + """ + The board name. + """ + name: String +} + +""" +Autogenerated return type of EpicBoardCreate +""" +type EpicBoardCreatePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The created epic board. + """ + epicBoard: EpicBoard + + """ + Errors encountered during execution of the mutation. + """ + errors: [String!]! +} + +""" An edge in a connection. """ type EpicBoardEdge { @@ -8856,7 +9251,7 @@ type EpicHealthStatus { } """ -Identifier of Epic +Identifier of Epic. """ scalar EpicID @@ -8930,7 +9325,7 @@ type EpicIssue implements CurrentUserTodos & Noteable { createdAt: Time! """ - Todos for the current user + To-do items for the current user. """ currentUserTodos( """ @@ -8954,7 +9349,7 @@ type EpicIssue implements CurrentUserTodos & Noteable { last: Int """ - State of the todos + State of the to-do items. """ state: TodoStateEnum ): TodoConnection! @@ -9280,7 +9675,7 @@ The connection type for EpicIssue. """ type EpicIssueConnection { """ - Total count of collection + Total count of collection. """ count: Int! @@ -9610,7 +10005,7 @@ type EpicTreeReorderPayload { } """ -Identifier of EpicTreeSorting +Identifier of EpicTreeSorting. """ scalar EpicTreeSortingID @@ -9654,6 +10049,11 @@ input ExportRequirementsInput { search: String """ + List of selected requirements fields to be exported. + """ + selectedFields: [String!] + + """ List requirements by sort order. """ sort: Sort @@ -9937,33 +10337,63 @@ type GeoNode { } """ -Identifier of Gitlab::ErrorTracking::DetailedError +Identifier of Gitlab::ErrorTracking::DetailedError. """ scalar GitlabErrorTrackingDetailedErrorID +""" +Autogenerated input type of GitlabSubscriptionActivate +""" +input GitlabSubscriptionActivateInput { + """ + Activation code received after purchasing a GitLab subscription. + """ + activationCode: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + +""" +Autogenerated return type of GitlabSubscriptionActivate +""" +type GitlabSubscriptionActivatePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Errors encountered during execution of the mutation. + """ + errors: [String!]! +} + type GrafanaIntegration { """ - Timestamp of the issue's creation + Timestamp of the issue's creation. """ createdAt: Time! """ - Indicates whether Grafana integration is enabled + Indicates whether Grafana integration is enabled. """ enabled: Boolean! """ - URL for the Grafana host for the Grafana integration + URL for the Grafana host for the Grafana integration. """ grafanaUrl: String! """ - Internal ID of the Grafana integration + Internal ID of the Grafana integration. """ id: ID! """ - Timestamp of the issue's last activity + Timestamp of the issue's last activity. """ updatedAt: Time! } @@ -9980,17 +10410,17 @@ type Group { additionalPurchasedStorageSize: Float """ - Indicates whether Auto DevOps is enabled for all projects within this group + Indicates whether Auto DevOps is enabled for all projects within this group. """ autoDevopsEnabled: Boolean """ - Avatar URL of the group + Avatar URL of the group. """ avatarUrl: String """ - A single board of the group + A single board of the group. """ board( """ @@ -10000,7 +10430,7 @@ type Group { ): Board """ - Boards of the group + Boards of the group. """ boards( """ @@ -10091,7 +10521,7 @@ type Group { ): ComplianceFrameworkConnection """ - Container repositories of the group + Container repositories of the group. """ containerRepositories( """ @@ -10121,7 +10551,7 @@ type Group { ): ContainerRepositoryConnection """ - Number of container repositories in the group + Number of container repositories in the group. """ containerRepositoriesCount: Int! @@ -10131,7 +10561,7 @@ type Group { containsLockedProjects: Boolean! """ - Custom emoji within this namespace Available only when feature flag `custom_emoji` is enabled. + Custom emoji within this namespace. Available only when feature flag `custom_emoji` is enabled. """ customEmoji( """ @@ -10166,7 +10596,7 @@ type Group { descriptionHtml: String """ - Indicates if a group has email notifications disabled + Indicates if a group has email notifications disabled. """ emailsDisabled: Boolean @@ -10397,7 +10827,7 @@ type Group { fullPath: ID! """ - A membership of a user within this group + A membership of a user within this group. """ groupMembers( """ @@ -10447,7 +10877,7 @@ type Group { isTemporaryStorageIncreaseEnabled: Boolean! """ - Issues for projects in this group + Issues for projects in this group. """ issues( """ @@ -10645,17 +11075,17 @@ type Group { ): IterationConnection """ - A label available on this group + A label available on this group. """ label( """ - Title of the label + Title of the label. """ title: String! ): Label """ - Labels available on this group + Labels available on this group. """ labels( """ @@ -10679,7 +11109,7 @@ type Group { last: Int """ - A search term to find labels with + A search term to find labels with. """ searchTerm: String ): LabelConnection @@ -10690,12 +11120,12 @@ type Group { lfsEnabled: Boolean """ - Indicates if a group is disabled from getting mentioned + Indicates if a group is disabled from getting mentioned. """ mentionsDisabled: Boolean """ - Merge requests for projects in this group + Merge requests for projects in this group. """ mergeRequests( """ @@ -10780,7 +11210,7 @@ type Group { ): MergeRequestConnection """ - Milestones of the group + Milestones of the group. """ milestones( """ @@ -10863,7 +11293,7 @@ type Group { packageSettings: PackageSettings """ - Parent group + Parent group. """ parent: Group @@ -10873,7 +11303,7 @@ type Group { path: String! """ - The permission level required to create projects in the group + The permission level required to create projects in the group. """ projectCreationLevel: String @@ -10933,7 +11363,7 @@ type Group { requestAccessEnabled: Boolean """ - Indicates if all users in this group are required to set up two-factor authentication + Indicates if all users in this group are required to set up two-factor authentication. """ requireTwoFactorAuthentication: Boolean @@ -10943,7 +11373,7 @@ type Group { rootStorageStatistics: RootStorageStatistics """ - Indicates if sharing a project with another group within this group is prevented + Indicates if sharing a project with another group within this group is prevented. """ shareWithGroupLock: Boolean @@ -10958,7 +11388,7 @@ type Group { storageSizeLimit: Float """ - The permission level required to create subgroups within the group + The permission level required to create subgroups within the group. """ subgroupCreationLevel: String @@ -11023,7 +11453,7 @@ type Group { totalRepositorySizeExcess: Float """ - Time before two-factor authentication is enforced + Time before two-factor authentication is enforced. """ twoFactorGracePeriod: Int @@ -11184,7 +11614,7 @@ type Group { ): [VulnerableProjectsByGrade!]! """ - Vulnerability scanners reported on the project vulnerabilties of the group and its subgroups + Vulnerability scanners reported on the project vulnerabilities of the group and its subgroups """ vulnerabilityScanners( """ @@ -11239,13 +11669,13 @@ type Group { ): VulnerabilitySeveritiesCount """ - Web URL of the group + Web URL of the group. """ webUrl: String! } """ -Identifier of Group +Identifier of Group. """ scalar GroupID @@ -11274,7 +11704,7 @@ type GroupMember implements MemberInterface { expiresAt: Time """ - Group that a User is a member of + Group that a User is a member of. """ group: Group @@ -11545,6 +11975,16 @@ input HttpIntegrationUpdateInput { The name of the integration. """ name: String + + """ + The custom mapping of GitLab alert attributes to fields from the payload_example. + """ + payloadAttributeMappings: [AlertManagementPayloadAlertFieldInput!] + + """ + The example of an alert payload. + """ + payloadExample: JsonString } """ @@ -11573,7 +12013,7 @@ An ISO 8601-encoded date scalar ISO8601Date """ -Identifier of IncidentManagement::OncallParticipant +Identifier of IncidentManagement::OncallParticipant. """ scalar IncidentManagementOncallParticipantID @@ -11627,6 +12067,41 @@ type IncidentManagementOncallRotation { ): OncallParticipantTypeConnection """ + Blocks of time for which a participant is on-call within a given time frame. Time frame cannot exceed one month. + """ + shifts( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + End of timeframe to include shifts for. Cannot exceed one month after start. + """ + endTime: Time! + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Start of timeframe to include shifts for. + """ + startTime: Time! + ): IncidentManagementOncallShiftConnection + + """ Start date of the on-call rotation. """ startsAt: Time @@ -11668,7 +12143,7 @@ type IncidentManagementOncallRotationEdge { } """ -Identifier of IncidentManagement::OncallRotation +Identifier of IncidentManagement::OncallRotation. """ scalar IncidentManagementOncallRotationID @@ -11757,6 +12232,61 @@ type IncidentManagementOncallScheduleEdge { node: IncidentManagementOncallSchedule } +""" +A block of time for which a participant is on-call. +""" +type IncidentManagementOncallShift { + """ + End time of the on-call shift. + """ + endsAt: Time + + """ + Participant assigned to the on-call shift. + """ + participant: OncallParticipantType + + """ + Start time of the on-call shift. + """ + startsAt: Time +} + +""" +The connection type for IncidentManagementOncallShift. +""" +type IncidentManagementOncallShiftConnection { + """ + A list of edges. + """ + edges: [IncidentManagementOncallShiftEdge] + + """ + A list of nodes. + """ + nodes: [IncidentManagementOncallShift] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! +} + +""" +An edge in a connection. +""" +type IncidentManagementOncallShiftEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: IncidentManagementOncallShift +} + type InstanceSecurityDashboard { """ Projects selected in Instance Security Dashboard @@ -11789,7 +12319,7 @@ type InstanceSecurityDashboard { vulnerabilityGrades: [VulnerableProjectsByGrade!]! """ - Vulnerability scanners reported on the vulnerabilties from projects selected in Instance Security Dashboard + Vulnerability scanners reported on the vulnerabilities from projects selected in Instance Security Dashboard """ vulnerabilityScanners( """ @@ -11849,17 +12379,17 @@ Represents a recorded measurement (object count) for the Admins """ type InstanceStatisticsMeasurement { """ - Object count + Object count. """ count: Int! """ - The type of objects being measured + The type of objects being measured. """ identifier: MeasurementIdentifier! """ - The time the measurement was recorded + The time the measurement was recorded. """ recordedAt: Time } @@ -12006,7 +12536,7 @@ type Issue implements CurrentUserTodos & Noteable { createdAt: Time! """ - Todos for the current user + To-do items for the current user. """ currentUserTodos( """ @@ -12030,7 +12560,7 @@ type Issue implements CurrentUserTodos & Noteable { last: Int """ - State of the todos + State of the to-do items. """ state: TodoStateEnum ): TodoConnection! @@ -12346,7 +12876,7 @@ The connection type for Issue. """ type IssueConnection { """ - Total count of collection + Total count of collection. """ count: Int! @@ -12387,7 +12917,7 @@ type IssueEdge { } """ -Identifier of Issue +Identifier of Issue. """ scalar IssueID @@ -13272,7 +13802,7 @@ type IterationEdge { } """ -Identifier of Iteration +Identifier of Iteration. """ scalar IterationID @@ -13684,7 +14214,7 @@ The connection type for Label. """ type LabelConnection { """ - Total count of collection + Total count of collection. """ count: Int! @@ -13726,12 +14256,12 @@ input LabelCreateInput { description: String """ - The group full path the resource is associated with. + Full path of the group with which the resource is associated. """ groupPath: ID """ - The project full path the resource is associated with. + Full path of the project with which the resource is associated. """ projectPath: ID @@ -13777,12 +14307,12 @@ type LabelEdge { } """ -Identifier of Label +Identifier of Label. """ scalar LabelID """ -Identifier of List +Identifier of List. """ scalar ListID @@ -14089,7 +14619,7 @@ type MergeRequest implements CurrentUserTodos & Noteable { createdAt: Time! """ - Todos for the current user + To-do items for the current user. """ currentUserTodos( """ @@ -14113,7 +14643,7 @@ type MergeRequest implements CurrentUserTodos & Noteable { last: Int """ - State of the todos + State of the to-do items. """ state: TodoStateEnum ): TodoConnection! @@ -14604,7 +15134,7 @@ The connection type for MergeRequest. """ type MergeRequestConnection { """ - Total count of collection + Total count of collection. """ count: Int! @@ -14785,7 +15315,7 @@ type MergeRequestEdge { } """ -Identifier of MergeRequest +Identifier of MergeRequest. """ scalar MergeRequestID @@ -14840,6 +15370,51 @@ type MergeRequestPermissions { } """ +Autogenerated input type of MergeRequestReviewerRereview +""" +input MergeRequestReviewerRereviewInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The IID of the merge request to mutate. + """ + iid: String! + + """ + The project the merge request to mutate is in. + """ + projectPath: ID! + + """ + The user ID for the user that has been requested for a new review. + """ + userId: UserID! +} + +""" +Autogenerated return type of MergeRequestReviewerRereview +""" +type MergeRequestReviewerRereviewPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Errors encountered during execution of the mutation. + """ + errors: [String!]! + + """ + The merge request after mutation. + """ + mergeRequest: MergeRequest +} + +""" Autogenerated input type of MergeRequestSetAssignees """ input MergeRequestSetAssigneesInput { @@ -15211,6 +15786,10 @@ enum MergeRequestState { all closed locked + + """ + Merge Request has been merged + """ merged opened } @@ -15422,7 +16001,7 @@ type MetricsDashboardAnnotationEdge { } """ -Identifier of Metrics::Dashboard::Annotation +Identifier of Metrics::Dashboard::Annotation. """ scalar MetricsDashboardAnnotationID @@ -15537,12 +16116,22 @@ type MilestoneEdge { } """ -Identifier of Milestone +Identifier of Milestone. """ scalar MilestoneID +""" +Current state of milestone +""" enum MilestoneStateEnum { + """ + Milestone is currently active + """ active + + """ + Milestone is closed + """ closed } @@ -15615,6 +16204,7 @@ type Mutation { createSnippet(input: CreateSnippetInput!): CreateSnippetPayload createTestCase(input: CreateTestCaseInput!): CreateTestCasePayload dastOnDemandScanCreate(input: DastOnDemandScanCreateInput!): DastOnDemandScanCreatePayload + dastProfileCreate(input: DastProfileCreateInput!): DastProfileCreatePayload dastScannerProfileCreate(input: DastScannerProfileCreateInput!): DastScannerProfileCreatePayload dastScannerProfileDelete(input: DastScannerProfileDeleteInput!): DastScannerProfileDeletePayload dastScannerProfileUpdate(input: DastScannerProfileUpdateInput!): DastScannerProfileUpdatePayload @@ -15623,6 +16213,7 @@ type Mutation { dastSiteProfileUpdate(input: DastSiteProfileUpdateInput!): DastSiteProfileUpdatePayload dastSiteTokenCreate(input: DastSiteTokenCreateInput!): DastSiteTokenCreatePayload dastSiteValidationCreate(input: DastSiteValidationCreateInput!): DastSiteValidationCreatePayload + dastSiteValidationRevoke(input: DastSiteValidationRevokeInput!): DastSiteValidationRevokePayload deleteAnnotation(input: DeleteAnnotationInput!): DeleteAnnotationPayload deleteDevopsAdoptionSegment(input: DeleteDevopsAdoptionSegmentInput!): DeleteDevopsAdoptionSegmentPayload designManagementDelete(input: DesignManagementDeleteInput!): DesignManagementDeletePayload @@ -15643,9 +16234,11 @@ type Mutation { dismissVulnerability(input: DismissVulnerabilityInput!): DismissVulnerabilityPayload @deprecated(reason: "Use vulnerabilityDismiss. Deprecated in 13.5.") environmentsCanaryIngressUpdate(input: EnvironmentsCanaryIngressUpdateInput!): EnvironmentsCanaryIngressUpdatePayload epicAddIssue(input: EpicAddIssueInput!): EpicAddIssuePayload + epicBoardCreate(input: EpicBoardCreateInput!): EpicBoardCreatePayload epicSetSubscription(input: EpicSetSubscriptionInput!): EpicSetSubscriptionPayload epicTreeReorder(input: EpicTreeReorderInput!): EpicTreeReorderPayload exportRequirements(input: ExportRequirementsInput!): ExportRequirementsPayload + gitlabSubscriptionActivate(input: GitlabSubscriptionActivateInput!): GitlabSubscriptionActivatePayload httpIntegrationCreate(input: HttpIntegrationCreateInput!): HttpIntegrationCreatePayload httpIntegrationDestroy(input: HttpIntegrationDestroyInput!): HttpIntegrationDestroyPayload httpIntegrationResetToken(input: HttpIntegrationResetTokenInput!): HttpIntegrationResetTokenPayload @@ -15666,6 +16259,7 @@ type Mutation { labelCreate(input: LabelCreateInput!): LabelCreatePayload markAsSpamSnippet(input: MarkAsSpamSnippetInput!): MarkAsSpamSnippetPayload mergeRequestCreate(input: MergeRequestCreateInput!): MergeRequestCreatePayload + mergeRequestReviewerRereview(input: MergeRequestReviewerRereviewInput!): MergeRequestReviewerRereviewPayload mergeRequestSetAssignees(input: MergeRequestSetAssigneesInput!): MergeRequestSetAssigneesPayload mergeRequestSetLabels(input: MergeRequestSetLabelsInput!): MergeRequestSetLabelsPayload mergeRequestSetLocked(input: MergeRequestSetLockedInput!): MergeRequestSetLockedPayload @@ -15679,6 +16273,7 @@ type Mutation { mergeRequestUpdate(input: MergeRequestUpdateInput!): MergeRequestUpdatePayload namespaceIncreaseStorageTemporarily(input: NamespaceIncreaseStorageTemporarilyInput!): NamespaceIncreaseStorageTemporarilyPayload oncallRotationCreate(input: OncallRotationCreateInput!): OncallRotationCreatePayload + oncallRotationDestroy(input: OncallRotationDestroyInput!): OncallRotationDestroyPayload oncallScheduleCreate(input: OncallScheduleCreateInput!): OncallScheduleCreatePayload oncallScheduleDestroy(input: OncallScheduleDestroyInput!): OncallScheduleDestroyPayload oncallScheduleUpdate(input: OncallScheduleUpdateInput!): OncallScheduleUpdatePayload @@ -15983,7 +16578,7 @@ type NamespaceEdge { } """ -Identifier of Namespace +Identifier of Namespace. """ scalar NamespaceID @@ -16039,12 +16634,12 @@ enum NamespaceProjectSort { input NegatedBoardIssueInput { """ - Filter by assignee username + Filter by assignee username. """ assigneeUsername: [String] """ - Filter by author username + Filter by author username. """ authorUsername: String @@ -16059,22 +16654,22 @@ input NegatedBoardIssueInput { iterationTitle: String """ - Filter by label name + Filter by label name. """ labelName: [String] """ - Filter by milestone title + Filter by milestone title. """ milestoneTitle: String """ - Filter by reaction emoji + Filter by reaction emoji. """ myReactionEmoji: String """ - Filter by release tag + Filter by release tag. """ releaseTag: String @@ -16118,7 +16713,7 @@ type Note implements ResolvableInterface { """ ID of the note """ - id: ID! + id: NoteID! """ The position of this note on a diff @@ -16212,7 +16807,7 @@ type NoteEdge { } """ -Identifier of Note +Identifier of Note. """ scalar NoteID @@ -16301,7 +16896,7 @@ interface Noteable { } """ -Identifier of Noteable +Identifier of Noteable. """ scalar NoteableID @@ -16441,6 +17036,51 @@ input OncallRotationDateInputType { } """ +Autogenerated input type of OncallRotationDestroy +""" +input OncallRotationDestroyInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the on-call rotation to remove. + """ + id: IncidentManagementOncallRotationID! + + """ + The project to remove the on-call schedule from. + """ + projectPath: ID! + + """ + The IID of the on-call schedule to the on-call rotation belongs to. + """ + scheduleIid: String! +} + +""" +Autogenerated return type of OncallRotationDestroy +""" +type OncallRotationDestroyPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Errors encountered during execution of the mutation. + """ + errors: [String!]! + + """ + The on-call rotation. + """ + oncallRotation: IncidentManagementOncallRotation +} + +""" The rotation length of the on-call rotation """ input OncallRotationLengthInputType { @@ -16645,142 +17285,27 @@ Represents a package in the Package Registry """ type Package { """ - The created date. + Date of creation. """ createdAt: Time! """ - The ID of the package. - """ - id: ID! - - """ - The name of the package. + ID of the package. """ - name: String! + id: PackagesPackageID! """ - The type of the package. + Package metadata. """ - packageType: PackageTypeEnum! + metadata: PackageMetadata """ - Pipelines that built the package. - """ - pipelines( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PipelineConnection - - """ - Project where the package is stored. - """ - project: Project! - - """ - The package tags. - """ - tags( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PackageTagConnection - - """ - The updated date. - """ - updatedAt: Time! - - """ - The version of the package. - """ - version: String - - """ - The other versions of the package. - """ - versions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PackageConnection -} - -""" -Details of a Composer package -""" -type PackageComposerDetails { - """ - The Composer metadatum. - """ - composerMetadatum: PackageComposerMetadatumType! - - """ - The created date. - """ - createdAt: Time! - - """ - The ID of the package. - """ - id: ID! - - """ - The name of the package. + Name of the package. """ name: String! """ - The type of the package. + Package type. """ packageType: PackageTypeEnum! @@ -16815,7 +17340,7 @@ type PackageComposerDetails { project: Project! """ - The package tags. + Package tags. """ tags( """ @@ -16840,12 +17365,12 @@ type PackageComposerDetails { ): PackageTagConnection """ - The updated date. + Date of most recent update. """ updatedAt: Time! """ - The version of the package. + Version string. """ version: String @@ -16872,7 +17397,7 @@ type PackageComposerDetails { Returns the last _n_ elements from the list. """ last: Int - ): PackageConnection + ): PackageWithoutVersionsConnection } """ @@ -16901,21 +17426,6 @@ type PackageComposerJsonType { } """ -Composer metadatum -""" -type PackageComposerMetadatumType { - """ - Data of the Composer JSON file. - """ - composerJson: PackageComposerJsonType! - - """ - Target SHA of the package. - """ - targetSha: String! -} - -""" The connection type for Package. """ type PackageConnection { @@ -17031,6 +17541,11 @@ type PackageFileRegistryEdge { } """ +Represents metadata associated with a Package +""" +union PackageMetadata = ComposerMetadata + +""" Namespace-level Package Registry settings """ type PackageSettings { @@ -17154,7 +17669,137 @@ enum PackageTypeEnum { } """ -Identifier of Packages::Package +Represents a version of a package in the Package Registry +""" +type PackageWithoutVersions { + """ + Date of creation. + """ + createdAt: Time! + + """ + ID of the package. + """ + id: PackagesPackageID! + + """ + Package metadata. + """ + metadata: PackageMetadata + + """ + Name of the package. + """ + name: String! + + """ + Package type. + """ + packageType: PackageTypeEnum! + + """ + Pipelines that built the package. + """ + pipelines( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PipelineConnection + + """ + Project where the package is stored. + """ + project: Project! + + """ + Package tags. + """ + tags( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PackageTagConnection + + """ + Date of most recent update. + """ + updatedAt: Time! + + """ + Version string. + """ + version: String +} + +""" +The connection type for PackageWithoutVersions. +""" +type PackageWithoutVersionsConnection { + """ + A list of edges. + """ + edges: [PackageWithoutVersionsEdge] + + """ + A list of nodes. + """ + nodes: [PackageWithoutVersions] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! +} + +""" +An edge in a connection. +""" +type PackageWithoutVersionsEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: PackageWithoutVersions +} + +""" +Identifier of Packages::Package. """ scalar PackagesPackageID @@ -17185,49 +17830,49 @@ type PageInfo { type Pipeline { """ - Indicates if the pipeline is active + Indicates if the pipeline is active. """ active: Boolean! """ - Base SHA of the source branch + Base SHA of the source branch. """ beforeSha: String """ - Specifies if a pipeline can be canceled + Specifies if a pipeline can be canceled. """ cancelable: Boolean! """ - Timestamp of the pipeline's commit + Timestamp of the pipeline's commit. """ committedAt: Time """ - Config source of the pipeline (UNKNOWN_SOURCE, REPOSITORY_SOURCE, + Configuration source of the pipeline (UNKNOWN_SOURCE, REPOSITORY_SOURCE, AUTO_DEVOPS_SOURCE, WEBIDE_SOURCE, REMOTE_SOURCE, EXTERNAL_PROJECT_SOURCE, BRIDGE_SOURCE, PARAMETER_SOURCE) """ configSource: PipelineConfigSourceEnum """ - Coverage percentage + Coverage percentage. """ coverage: Float """ - Timestamp of the pipeline's creation + Timestamp of the pipeline's creation. """ createdAt: Time! """ - Detailed status of the pipeline + Detailed status of the pipeline. """ detailedStatus: DetailedStatus! """ - Pipelines this pipeline will trigger + Pipelines this pipeline will trigger. """ downstream( """ @@ -17252,27 +17897,27 @@ type Pipeline { ): PipelineConnection """ - Duration of the pipeline in seconds + Duration of the pipeline in seconds. """ duration: Int """ - Timestamp of the pipeline's completion + Timestamp of the pipeline's completion. """ finishedAt: Time """ - ID of the pipeline + ID of the pipeline. """ id: ID! """ - Internal ID of the pipeline + Internal ID of the pipeline. """ iid: String! """ - Jobs belonging to the pipeline + Jobs belonging to the pipeline. """ jobs( """ @@ -17302,17 +17947,17 @@ type Pipeline { ): CiJobConnection """ - Relative path to the pipeline's page + Relative path to the pipeline's page. """ path: String """ - Project the pipeline belongs to + Project the pipeline belongs to. """ project: Project """ - Specifies if a pipeline can be retried + Specifies if a pipeline can be retried. """ retryable: Boolean! @@ -17322,17 +17967,17 @@ type Pipeline { securityReportSummary: SecurityReportSummary """ - SHA of the pipeline's commit + SHA of the pipeline's commit. """ sha: String! """ - Job where pipeline was triggered from + Job where pipeline was triggered from. """ sourceJob: CiJob """ - Stages of the pipeline + Stages of the pipeline. """ stages( """ @@ -17357,7 +18002,7 @@ type Pipeline { ): CiStageConnection """ - Timestamp when the pipeline was started + Timestamp when the pipeline was started. """ startedAt: Time @@ -17368,17 +18013,17 @@ type Pipeline { status: PipelineStatusEnum! """ - Timestamp of the pipeline's last activity + Timestamp of the pipeline's last activity. """ updatedAt: Time! """ - Pipeline that triggered the pipeline + Pipeline that triggered the pipeline. """ upstream: Pipeline """ - Pipeline user + Pipeline user. """ user: User @@ -17390,57 +18035,57 @@ type Pipeline { type PipelineAnalytics { """ - Labels for the monthly pipeline count + Labels for the monthly pipeline count. """ monthPipelinesLabels: [String!] """ - Total monthly successful pipeline count + Total monthly successful pipeline count. """ monthPipelinesSuccessful: [Int!] """ - Total monthly pipeline count + Total monthly pipeline count. """ monthPipelinesTotals: [Int!] """ - Pipeline times labels + Pipeline times labels. """ pipelineTimesLabels: [String!] """ - Pipeline times + Pipeline times. """ pipelineTimesValues: [Int!] """ - Labels for the weekly pipeline count + Labels for the weekly pipeline count. """ weekPipelinesLabels: [String!] """ - Total weekly successful pipeline count + Total weekly successful pipeline count. """ weekPipelinesSuccessful: [Int!] """ - Total weekly pipeline count + Total weekly pipeline count. """ weekPipelinesTotals: [Int!] """ - Labels for the yearly pipeline count + Labels for the yearly pipeline count. """ yearPipelinesLabels: [String!] """ - Total yearly successful pipeline count + Total yearly successful pipeline count. """ yearPipelinesSuccessful: [Int!] """ - Total yearly pipeline count + Total yearly pipeline count. """ yearPipelinesTotals: [Int!] } @@ -17491,7 +18136,7 @@ The connection type for Pipeline. """ type PipelineConnection { """ - Total count of collection + Total count of collection. """ count: Int! @@ -17759,6 +18404,16 @@ type Project { ): AlertManagementIntegrationConnection """ + Extract alert fields from payload for custom mapping + """ + alertManagementPayloadFields( + """ + Sample payload for extracting alert fields for custom mappings. + """ + payloadExample: String! + ): [AlertManagementPayloadAlertField!] + + """ If `only_allow_merge_if_pipeline_succeeds` is true, indicates if merge requests of the project can also be merged with skipped jobs """ @@ -17940,7 +18595,32 @@ type Project { createdAt: Time """ - The DAST scanner profiles associated with the project + DAST Profiles associated with the project. Always returns no nodes if `dast_saved_scans` is disabled. + """ + dastProfiles( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DastProfileConnection + + """ + The DAST scanner profiles associated with the project. """ dastScannerProfiles( """ @@ -17965,7 +18645,7 @@ type Project { ): DastScannerProfileConnection """ - DAST Site Profile associated with the project + DAST Site Profile associated with the project. """ dastSiteProfile( """ @@ -17975,7 +18655,7 @@ type Project { ): DastSiteProfile """ - DAST Site Profiles associated with the project + DAST Site Profiles associated with the project. """ dastSiteProfiles( """ @@ -18000,8 +18680,8 @@ type Project { ): DastSiteProfileConnection """ - DAST Site Validations associated with the project. Will always return no nodes - if `security_on_demand_scans_site_validation` is disabled + DAST Site Validations associated with the project. Always returns no nodes if + `security_on_demand_scans_site_validation` is disabled. """ dastSiteValidations( """ @@ -19250,7 +19930,7 @@ type Project { snippetsEnabled: Boolean """ - Indicates if squash readonly is enabled + Indicates if `squashReadOnly` is enabled """ squashReadOnly: Boolean! @@ -19280,7 +19960,17 @@ type Project { tagList: String """ - Terraform states associated with the project + Find a single Terraform state by name. + """ + terraformState( + """ + Name of the Terraform state. + """ + name: String! + ): TerraformState + + """ + Terraform states associated with the project. """ terraformStates( """ @@ -19415,7 +20105,7 @@ type Project { ): VulnerabilitiesCountByDayConnection """ - Vulnerability scanners reported on the project vulnerabilties + Vulnerability scanners reported on the project vulnerabilities """ vulnerabilityScanners( """ @@ -19538,7 +20228,7 @@ type ProjectEdge { } """ -Identifier of Project +Identifier of Project. """ scalar ProjectID @@ -20052,7 +20742,7 @@ type PrometheusIntegrationUpdatePayload { } """ -Identifier of PrometheusService +Identifier of PrometheusService. """ scalar PrometheusServiceID @@ -20293,14 +20983,14 @@ type Query { ): Namespace """ - Find a composer package + Find a package """ - packageComposerDetails( + package( """ The global ID of the package. """ id: PackagesPackageID! - ): PackageComposerDetails + ): Package """ Find a project @@ -21015,7 +21705,7 @@ The connection type for Release. """ type ReleaseConnection { """ - Total count of collection + Total count of collection. """ count: Int! @@ -21165,22 +21855,22 @@ Evidence for a release """ type ReleaseEvidence { """ - Timestamp when the evidence was collected + Timestamp when the evidence was collected. """ collectedAt: Time """ - URL from where the evidence can be downloaded + URL from where the evidence can be downloaded. """ filepath: String """ - ID of the evidence + ID of the evidence. """ id: ID! """ - SHA1 ID of the evidence hash + SHA1 ID of the evidence hash. """ sha: String } @@ -21407,7 +22097,7 @@ input RemoveAwardEmojiInput { clientMutationId: String """ - The emoji name + The emoji name. """ name: String! } @@ -21888,12 +22578,12 @@ type RunDASTScanPayload { type RunnerArchitecture { """ - Download location for the runner for the platform architecture + Download location for the runner for the platform architecture. """ downloadLocation: String! """ - Name of the runner platform architecture + Name of the runner platform architecture. """ name: String! } @@ -21935,7 +22625,7 @@ type RunnerArchitectureEdge { type RunnerPlatform { """ - Runner architectures supported for the platform + Runner architectures supported for the platform. """ architectures( """ @@ -21960,12 +22650,12 @@ type RunnerPlatform { ): RunnerArchitectureConnection """ - Human readable name of the runner platform + Human readable name of the runner platform. """ humanReadableName: String! """ - Name slug of the runner platform + Name slug of the runner platform. """ name: String! } @@ -22007,12 +22697,12 @@ type RunnerPlatformEdge { type RunnerSetup { """ - Instructions for installing the runner on the specified architecture + Instructions for installing the runner on the specified architecture. """ installInstructions: String! """ - Instructions for registering the runner + Instructions for registering the runner. """ registerInstructions: String } @@ -22102,27 +22792,27 @@ Represents an analyzer entity in SAST CI configuration """ type SastCiConfigurationAnalyzersEntity { """ - Analyzer description that is displayed on the form + Analyzer description that is displayed on the form. """ description: String """ - Indicates whether an analyzer is enabled + Indicates whether an analyzer is enabled. """ enabled: Boolean """ - Analyzer label used in the config UI + Analyzer label used in the config UI. """ label: String """ - Name of the analyzer + Name of the analyzer. """ name: String """ - List of supported variables + List of supported variables. """ variables( """ @@ -22187,17 +22877,17 @@ Represents the analyzers entity in SAST CI configuration """ input SastCiConfigurationAnalyzersEntityInput { """ - State of the analyzer + State of the analyzer. """ enabled: Boolean! """ - Name of analyzer + Name of analyzer. """ name: String! """ - List of variables for the analyzer + List of variables for the analyzer. """ variables: [SastCiConfigurationEntityInput!] } @@ -22307,17 +22997,17 @@ Represents an entity in SAST CI configuration """ input SastCiConfigurationEntityInput { """ - Default value that is used if value is empty + Default value that is used if value is empty. """ defaultValue: String! """ - CI keyword of entity + CI keyword of entity. """ field: String! """ - Current value of the entity + Current value of the entity. """ value: String! } @@ -22327,17 +23017,17 @@ Represents a CI configuration of SAST """ input SastCiConfigurationInput { """ - List of analyzers and related variables for the SAST configuration + List of analyzers and related variables for the SAST configuration. """ analyzers: [SastCiConfigurationAnalyzersEntityInput!] """ - List of global entities related to SAST configuration + List of global entities related to SAST configuration. """ global: [SastCiConfigurationEntityInput!] """ - List of pipeline entities related to SAST configuration + List of pipeline entities related to SAST configuration. """ pipeline: [SastCiConfigurationEntityInput!] } @@ -22456,37 +23146,37 @@ Represents summary of a security report """ type SecurityReportSummary { """ - Aggregated counts for the api_fuzzing scan + Aggregated counts for the `api_fuzzing` scan """ apiFuzzing: SecurityReportSummarySection """ - Aggregated counts for the container_scanning scan + Aggregated counts for the `container_scanning` scan """ containerScanning: SecurityReportSummarySection """ - Aggregated counts for the coverage_fuzzing scan + Aggregated counts for the `coverage_fuzzing` scan """ coverageFuzzing: SecurityReportSummarySection """ - Aggregated counts for the dast scan + Aggregated counts for the `dast` scan """ dast: SecurityReportSummarySection """ - Aggregated counts for the dependency_scanning scan + Aggregated counts for the `dependency_scanning` scan """ dependencyScanning: SecurityReportSummarySection """ - Aggregated counts for the sast scan + Aggregated counts for the `sast` scan """ sast: SecurityReportSummarySection """ - Aggregated counts for the secret_detection scan + Aggregated counts for the `secret_detection` scan """ secretDetection: SecurityReportSummarySection } @@ -22611,142 +23301,142 @@ A Sentry error """ type SentryDetailedError { """ - Count of occurrences + Count of occurrences. """ count: Int! """ - Culprit of the error + Culprit of the error. """ culprit: String! """ - External Base URL of the Sentry Instance + External Base URL of the Sentry Instance. """ externalBaseUrl: String! """ - External URL of the error + External URL of the error. """ externalUrl: String! """ - Commit the error was first seen + Commit the error was first seen. """ firstReleaseLastCommit: String """ - Release short version the error was first seen + Release short version the error was first seen. """ firstReleaseShortVersion: String """ - Release version the error was first seen + Release version the error was first seen. """ firstReleaseVersion: String """ - Timestamp when the error was first seen + Timestamp when the error was first seen. """ firstSeen: Time! """ - Last 24hr stats of the error + Last 24hr stats of the error. """ frequency: [SentryErrorFrequency!]! """ - GitLab commit SHA attributed to the Error based on the release version + GitLab commit SHA attributed to the Error based on the release version. """ gitlabCommit: String """ - Path to the GitLab page for the GitLab commit attributed to the error + Path to the GitLab page for the GitLab commit attributed to the error. """ gitlabCommitPath: String """ - URL of GitLab Issue + URL of GitLab Issue. """ gitlabIssuePath: String """ - ID (global ID) of the error + ID (global ID) of the error. """ id: ID! """ - Commit the error was last seen + Commit the error was last seen. """ lastReleaseLastCommit: String """ - Release short version the error was last seen + Release short version the error was last seen. """ lastReleaseShortVersion: String """ - Release version the error was last seen + Release version the error was last seen. """ lastReleaseVersion: String """ - Timestamp when the error was last seen + Timestamp when the error was last seen. """ lastSeen: Time! """ - Sentry metadata message of the error + Sentry metadata message of the error. """ message: String """ - ID (Sentry ID) of the error + ID (Sentry ID) of the error. """ sentryId: String! """ - ID of the project (Sentry project) + ID of the project (Sentry project). """ sentryProjectId: ID! """ - Name of the project affected by the error + Name of the project affected by the error. """ sentryProjectName: String! """ - Slug of the project affected by the error + Slug of the project affected by the error. """ sentryProjectSlug: String! """ - Short ID (Sentry ID) of the error + Short ID (Sentry ID) of the error. """ shortId: String! """ - Status of the error + Status of the error. """ status: SentryErrorStatus! """ - Tags associated with the Sentry Error + Tags associated with the Sentry Error. """ tags: SentryErrorTags! """ - Title of the error + Title of the error. """ title: String! """ - Type of the error + Type of the error. """ type: String! """ - Count of users affected by the error + Count of users affected by the error. """ userCount: Int! } @@ -22756,87 +23446,87 @@ A Sentry error. A simplified version of SentryDetailedError """ type SentryError { """ - Count of occurrences + Count of occurrences. """ count: Int! """ - Culprit of the error + Culprit of the error. """ culprit: String! """ - External URL of the error + External URL of the error. """ externalUrl: String! """ - Timestamp when the error was first seen + Timestamp when the error was first seen. """ firstSeen: Time! """ - Last 24hr stats of the error + Last 24hr stats of the error. """ frequency: [SentryErrorFrequency!]! """ - ID (global ID) of the error + ID (global ID) of the error. """ id: ID! """ - Timestamp when the error was last seen + Timestamp when the error was last seen. """ lastSeen: Time! """ - Sentry metadata message of the error + Sentry metadata message of the error. """ message: String """ - ID (Sentry ID) of the error + ID (Sentry ID) of the error. """ sentryId: String! """ - ID of the project (Sentry project) + ID of the project (Sentry project). """ sentryProjectId: ID! """ - Name of the project affected by the error + Name of the project affected by the error. """ sentryProjectName: String! """ - Slug of the project affected by the error + Slug of the project affected by the error. """ sentryProjectSlug: String! """ - Short ID (Sentry ID) of the error + Short ID (Sentry ID) of the error. """ shortId: String! """ - Status of the error + Status of the error. """ status: SentryErrorStatus! """ - Title of the error + Title of the error. """ title: String! """ - Type of the error + Type of the error. """ type: String! """ - Count of users affected by the error + Count of users affected by the error. """ userCount: Int! } @@ -22846,7 +23536,7 @@ An object containing a collection of Sentry errors, and a detailed error """ type SentryErrorCollection { """ - Detailed version of a Sentry error on the project + Detailed version of a Sentry error on the project. """ detailedError( """ @@ -22856,7 +23546,7 @@ type SentryErrorCollection { ): SentryDetailedError """ - Stack Trace of Sentry Error + Stack Trace of Sentry Error. """ errorStackTrace( """ @@ -22866,7 +23556,7 @@ type SentryErrorCollection { ): SentryErrorStackTrace """ - Collection of Sentry Errors + Collection of Sentry Errors. """ errors( """ @@ -22901,7 +23591,7 @@ type SentryErrorCollection { ): SentryErrorConnection """ - External URL for Sentry + External URL for Sentry. """ externalUrl: String } @@ -22943,12 +23633,12 @@ type SentryErrorEdge { type SentryErrorFrequency { """ - Count of errors received since the previously recorded time + Count of errors received since the previously recorded time. """ count: Int! """ - Time the error frequency stats were recorded + Time the error frequency stats were recorded. """ time: Time! } @@ -22958,17 +23648,17 @@ An object containing a stack trace entry for a Sentry error """ type SentryErrorStackTrace { """ - Time the stack trace was received by Sentry + Time the stack trace was received by Sentry. """ dateReceived: String! """ - ID of the Sentry error + ID of the Sentry error. """ issueId: String! """ - Stack trace entries for the Sentry error + Stack trace entries for the Sentry error. """ stackTraceEntries: [SentryErrorStackTraceEntry!]! } @@ -22978,12 +23668,12 @@ An object context for a Sentry error stack trace """ type SentryErrorStackTraceContext { """ - Code number of the context + Code number of the context. """ code: String! """ - Line number of the context + Line number of the context. """ line: Int! } @@ -22993,27 +23683,27 @@ An object containing a stack trace entry for a Sentry error """ type SentryErrorStackTraceEntry { """ - Function in which the Sentry error occurred + Function in which the Sentry error occurred. """ col: String """ - File in which the Sentry error occurred + File in which the Sentry error occurred. """ fileName: String """ - Function in which the Sentry error occurred + Function in which the Sentry error occurred. """ function: String """ - Function in which the Sentry error occurred + Function in which the Sentry error occurred. """ line: String """ - Context of the Sentry error + Context of the Sentry error. """ traceContext: [SentryErrorStackTraceContext!] } @@ -23048,12 +23738,12 @@ State of a Sentry error """ type SentryErrorTags { """ - Severity level of the Sentry Error + Severity level of the Sentry Error. """ level: String """ - Logger of the Sentry Error + Logger of the Sentry Error. """ logger: String } @@ -23459,7 +24149,7 @@ type SnippetBlobViewer { fileType: String! """ - Shows whether the blob content is loaded async + Shows whether the blob content is loaded asynchronously """ loadAsync: Boolean! @@ -23520,7 +24210,7 @@ type SnippetEdge { } """ -Identifier of Snippet +Identifier of Snippet. """ scalar SnippetID @@ -23683,27 +24373,27 @@ enum Sort { type StatusAction { """ - Title for the button, for example: Retry this job + Title for the button, for example: Retry this job. """ buttonTitle: String """ - Icon used in the action button + Icon used in the action button. """ icon: String """ - Method for the action, for example: :post + Method for the action, for example: :post. """ method: String """ - Path for the action + Path for the action. """ path: String """ - Title for the action, for example: Retry + Title for the action, for example: Retry. """ title: String } @@ -23730,7 +24420,7 @@ type Submodule implements Entry { path: String! """ - Last commit sha for the entry + Last commit SHA for the entry """ sha: String! @@ -23842,7 +24532,7 @@ The connection type for TerraformState. """ type TerraformStateConnection { """ - Total count of collection + Total count of collection. """ count: Int! @@ -23908,7 +24598,7 @@ type TerraformStateEdge { } """ -Identifier of Terraform::State +Identifier of Terraform::State. """ scalar TerraformStateID @@ -24297,51 +24987,51 @@ type TimelogEdge { } """ -Representing a todo entry +Representing a to-do entry """ type Todo { """ - Action of the todo + Action of the to-do item """ action: TodoActionEnum! """ - The author of this todo + The author of this to-do item """ author: User! """ - Body of the todo + Body of the to-do item """ body: String! """ - Timestamp this todo was created + Timestamp this to-do item was created """ createdAt: Time! """ - Group this todo is associated with + Group this to-do item is associated with """ group: Group """ - ID of the todo + ID of the to-do item """ id: ID! """ - The project this todo is associated with + The project this to-do item is associated with """ project: Project """ - State of the todo + State of the to-do item """ state: TodoStateEnum! """ - Target type of the todo + Target type of the to-do item """ targetType: TodoTargetEnum! } @@ -24406,7 +25096,7 @@ type TodoCreatePayload { errors: [String!]! """ - The to-do created. + The to-do item created. """ todo: Todo } @@ -24427,7 +25117,7 @@ type TodoEdge { } """ -Identifier of Todo +Identifier of Todo. """ scalar TodoID @@ -24441,7 +25131,7 @@ input TodoMarkDoneInput { clientMutationId: String """ - The global ID of the todo to mark as done. + The global ID of the to-do item to mark as done. """ id: TodoID! } @@ -24461,7 +25151,7 @@ type TodoMarkDonePayload { errors: [String!]! """ - The requested todo. + The requested to-do item. """ todo: Todo! } @@ -24476,7 +25166,7 @@ input TodoRestoreInput { clientMutationId: String """ - The global ID of the todo to restore. + The global ID of the to-do item to restore. """ id: TodoID! } @@ -24491,7 +25181,7 @@ input TodoRestoreManyInput { clientMutationId: String """ - The global IDs of the todos to restore (a maximum of 50 is supported at once). + The global IDs of the to-do items to restore (a maximum of 50 is supported at once). """ ids: [TodoID!]! } @@ -24511,14 +25201,14 @@ type TodoRestoreManyPayload { errors: [String!]! """ - Updated todos. + Updated to-do items. """ todos: [Todo!]! """ - The IDs of the updated todo items. Deprecated in 13.2: Use todos. + The IDs of the updated to-do items. Deprecated in 13.2: Use to-do items. """ - updatedIds: [TodoID!]! @deprecated(reason: "Use todos. Deprecated in 13.2.") + updatedIds: [TodoID!]! @deprecated(reason: "Use to-do items. Deprecated in 13.2.") } """ @@ -24536,7 +25226,7 @@ type TodoRestorePayload { errors: [String!]! """ - The requested todo. + The requested to-do item. """ todo: Todo! } @@ -24579,7 +25269,7 @@ enum TodoTargetEnum { } """ -Identifier of Todoable +Identifier of Todoable. """ scalar TodoableID @@ -24608,14 +25298,14 @@ type TodosMarkAllDonePayload { errors: [String!]! """ - Updated todos. + Updated to-do items. """ todos: [Todo!]! """ - Ids of the updated todos. Deprecated in 13.2: Use todos. + IDs of the updated to-do items. Deprecated in 13.2: Use to-do items. """ - updatedIds: [TodoID!]! @deprecated(reason: "Use todos. Deprecated in 13.2.") + updatedIds: [TodoID!]! @deprecated(reason: "Use to-do items. Deprecated in 13.2.") } """ @@ -24633,7 +25323,7 @@ input ToggleAwardEmojiInput { clientMutationId: String """ - The emoji name + The emoji name. """ name: String! } @@ -24770,7 +25460,7 @@ type TreeEntry implements Entry { path: String! """ - Last commit sha for the entry + Last commit SHA for the entry """ sha: String! @@ -24885,7 +25575,7 @@ type UpdateAlertStatusPayload { issue: Issue """ - The todo after mutation. + The to-do item after mutation. """ todo: Todo } @@ -24950,12 +25640,12 @@ input UpdateBoardInput { clientMutationId: String """ - Whether or not backlog list is hidden + Whether or not backlog list is hidden. """ hideBacklogList: Boolean """ - Whether or not closed list is hidden + Whether or not closed list is hidden. """ hideClosedList: Boolean @@ -25105,7 +25795,7 @@ Autogenerated input type of UpdateContainerExpirationPolicy """ input UpdateContainerExpirationPolicyInput { """ - This container expiration policy schedule + This container expiration policy schedule. """ cadence: ContainerExpirationPolicyCadenceEnum @@ -25115,27 +25805,27 @@ input UpdateContainerExpirationPolicyInput { clientMutationId: String """ - Indicates whether this container expiration policy is enabled + Indicates whether this container expiration policy is enabled. """ enabled: Boolean """ - Number of tags to retain + Number of tags to retain. """ keepN: ContainerExpirationPolicyKeepEnum """ - Tags with names matching this regex pattern will expire + Tags with names matching this regex pattern will expire. """ nameRegex: UntrustedRegexp """ - Tags with names matching this regex pattern will be preserved + Tags with names matching this regex pattern will be preserved. """ nameRegexKeep: UntrustedRegexp """ - Tags older that this will expire + Tags older that this will expire. """ olderThan: ContainerExpirationPolicyOlderThanEnum @@ -25688,6 +26378,13 @@ input UpdateSnippetInput { blobActions: [SnippetBlobActionInputType!] """ + A valid CAPTCHA response value obtained by using the provided captchaSiteKey + with a CAPTCHA API to present a challenge to be solved on the client. Required + to resubmit if the previous operation returned "NeedsCaptchaResponse: true". + """ + captchaResponse: String + + """ A unique identifier for the client performing the mutation. """ clientMutationId: String @@ -25703,6 +26400,13 @@ input UpdateSnippetInput { id: SnippetID! """ + The spam log ID which must be passed along with a valid CAPTCHA response for + the operation to be completed. Required to resubmit if the previous operation + returned "NeedsCaptchaResponse: true". + """ + spamLogId: Int + + """ Title of the snippet. """ title: String @@ -25718,6 +26422,13 @@ Autogenerated return type of UpdateSnippet """ type UpdateSnippetPayload { """ + The CAPTCHA site key which must be used to render a challenge for the user to + solve to obtain a valid captchaResponse value. Included only when an operation + was not completed because "NeedsCaptchaResponse" is true. + """ + captchaSiteKey: String + + """ A unique identifier for the client performing the mutation. """ clientMutationId: String @@ -25728,14 +26439,31 @@ type UpdateSnippetPayload { errors: [String!]! """ + Indicates whether the operation was detected as possible spam and not + completed. If CAPTCHA is enabled, the request must be resubmitted with a valid + CAPTCHA response and spam_log_id included for the operation to be completed. + Included only when an operation was not completed because + "NeedsCaptchaResponse" is true. + """ + needsCaptchaResponse: Boolean + + """ The snippet after mutation. """ snippet: Snippet """ - Indicates whether the operation returns a record detected as spam. + Indicates whether the operation was detected as definite spam. There is no + option to resubmit the request with a CAPTCHA response. """ spam: Boolean + + """ + The spam log ID which must be passed along with a valid CAPTCHA response for + an operation to be completed. Included only when an operation was not + completed because "NeedsCaptchaResponse" is true. + """ + spamLogId: Int } scalar Upload @@ -26177,7 +26905,7 @@ type User { status: UserStatus """ - Todos of the user + To-do items of the user """ todos( """ @@ -26288,7 +27016,7 @@ type UserEdge { } """ -Identifier of User +Identifier of User. """ scalar UserID @@ -26489,7 +27217,7 @@ type VulnerabilitiesCountByDayEdge { } """ -Identifier of Vulnerabilities::ExternalIssueLink +Identifier of Vulnerabilities::ExternalIssueLink. """ scalar VulnerabilitiesExternalIssueLinkID @@ -26513,6 +27241,11 @@ type Vulnerability implements Noteable { description: String """ + Details of the vulnerability + """ + details: [VulnerabilityDetail!]! + + """ Timestamp of when the vulnerability was first detected """ detectedAt: Time! @@ -26781,6 +27514,366 @@ type VulnerabilityConnection { } """ +Represents a vulnerability detail field. The fields with data will depend on the vulnerability detail type +""" +union VulnerabilityDetail = VulnerabilityDetailBase | VulnerabilityDetailBoolean | VulnerabilityDetailCode | VulnerabilityDetailCommit | VulnerabilityDetailDiff | VulnerabilityDetailFileLocation | VulnerabilityDetailInt | VulnerabilityDetailList | VulnerabilityDetailMarkdown | VulnerabilityDetailModuleLocation | VulnerabilityDetailTable | VulnerabilityDetailText | VulnerabilityDetailUrl + +""" +Represents the vulnerability details base +""" +type VulnerabilityDetailBase { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Name of the field. + """ + name: String! +} + +""" +Represents the vulnerability details boolean value +""" +type VulnerabilityDetailBoolean { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Name of the field. + """ + name: String! + + """ + Value of the field. + """ + value: Boolean! +} + +""" +Represents the vulnerability details code field +""" +type VulnerabilityDetailCode { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Language of the code. + """ + lang: String + + """ + Name of the field. + """ + name: String! + + """ + Source code. + """ + value: String! +} + +""" +Represents the vulnerability details commit field +""" +type VulnerabilityDetailCommit { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Name of the field. + """ + name: String! + + """ + The commit SHA value. + """ + value: String! +} + +""" +Represents the vulnerability details diff field +""" +type VulnerabilityDetailDiff { + """ + Value of the field after the change. + """ + after: String! + + """ + Value of the field before the change. + """ + before: String! + + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Name of the field. + """ + name: String! +} + +""" +Represents the vulnerability details location within a file in the project +""" +type VulnerabilityDetailFileLocation { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + File name. + """ + fileName: String! + + """ + End line number of the file location. + """ + lineEnd: Int! + + """ + Start line number of the file location. + """ + lineStart: Int! + + """ + Name of the field. + """ + name: String! +} + +""" +Represents the vulnerability details integer value +""" +type VulnerabilityDetailInt { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Name of the field. + """ + name: String! + + """ + Value of the field. + """ + value: Int! +} + +""" +Represents the vulnerability details list value +""" +type VulnerabilityDetailList { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + List of details. + """ + items: [VulnerabilityDetail!]! + + """ + Name of the field. + """ + name: String! +} + +""" +Represents the vulnerability details Markdown field +""" +type VulnerabilityDetailMarkdown { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Name of the field. + """ + name: String! + + """ + Value of the Markdown field. + """ + value: String! +} + +""" +Represents the vulnerability details location within a file in the project +""" +type VulnerabilityDetailModuleLocation { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Module name. + """ + moduleName: String! + + """ + Name of the field. + """ + name: String! + + """ + Offset of the module location. + """ + offset: Int! +} + +""" +Represents the vulnerability details table value +""" +type VulnerabilityDetailTable { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Table headers. + """ + headers: [VulnerabilityDetail!]! + + """ + Name of the field. + """ + name: String! + + """ + Table rows. + """ + rows: [VulnerabilityDetail!]! +} + +""" +Represents the vulnerability details text field +""" +type VulnerabilityDetailText { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Name of the field. + """ + name: String! + + """ + Value of the text field. + """ + value: String! +} + +""" +Represents the vulnerability details URL field +""" +type VulnerabilityDetailUrl { + """ + Description of the field. + """ + description: String! + + """ + Name of the field. + """ + fieldName: String + + """ + Href of the URL. + """ + href: String! + + """ + Name of the field. + """ + name: String! + + """ + Text of the URL. + """ + text: String +} + +""" Autogenerated input type of VulnerabilityDismiss """ input VulnerabilityDismissInput { @@ -27032,7 +28125,7 @@ enum VulnerabilityGrade { } """ -Identifier of Vulnerability +Identifier of Vulnerability. """ scalar VulnerabilityID @@ -27154,6 +28247,11 @@ Represents the location of a vulnerability found by a Coverage Fuzzing scan """ type VulnerabilityLocationCoverageFuzzing { """ + Blob path to the vulnerable file + """ + blobPath: String + + """ Number of the last relevant line in the vulnerable file """ endLine: String @@ -27209,6 +28307,11 @@ Represents the location of a vulnerability found by a dependency security scan """ type VulnerabilityLocationDependencyScanning { """ + Blob path to the vulnerable file + """ + blobPath: String + + """ Dependency containing the vulnerability """ dependency: VulnerableDependency @@ -27224,6 +28327,11 @@ Represents the location of a vulnerability found by a SAST scan """ type VulnerabilityLocationSast { """ + Blob path to the vulnerable file + """ + blobPath: String + + """ Number of the last relevant line in the vulnerable file """ endLine: String @@ -27254,6 +28362,11 @@ Represents the location of a vulnerability found by a secret detection scan """ type VulnerabilityLocationSecretDetection { """ + Blob path to the vulnerable file + """ + blobPath: String + + """ Number of the last relevant line in the vulnerable file """ endLine: String diff --git a/doc/api/graphql/reference/gitlab_schema.json b/doc/api/graphql/reference/gitlab_schema.json index 138530abb17..47855e1cf98 100644 --- a/doc/api/graphql/reference/gitlab_schema.json +++ b/doc/api/graphql/reference/gitlab_schema.json @@ -16,7 +16,7 @@ "fields": [ { "name": "integerValue", - "description": "Integer representation of access level", + "description": "Integer representation of access level.", "args": [ ], @@ -30,7 +30,7 @@ }, { "name": "stringValue", - "description": "String representation of access level", + "description": "String representation of access level.", "args": [ ], @@ -119,7 +119,7 @@ }, { "name": "name", - "description": "The emoji name", + "description": "The emoji name.", "type": { "kind": "NON_NULL", "name": null, @@ -504,7 +504,7 @@ "fields": [ { "name": "assignees", - "description": "Assignees of the alert", + "description": "Assignees of the alert.", "args": [ { "name": "after", @@ -557,7 +557,7 @@ }, { "name": "createdAt", - "description": "Timestamp the alert was created", + "description": "Timestamp the alert was created.", "args": [ ], @@ -571,7 +571,7 @@ }, { "name": "description", - "description": "Description of the alert", + "description": "Description of the alert.", "args": [ ], @@ -585,7 +585,7 @@ }, { "name": "details", - "description": "Alert details", + "description": "Alert details.", "args": [ ], @@ -599,7 +599,7 @@ }, { "name": "detailsUrl", - "description": "The URL of the alert detail page", + "description": "The URL of the alert detail page.", "args": [ ], @@ -674,7 +674,7 @@ }, { "name": "endedAt", - "description": "Timestamp the alert ended", + "description": "Timestamp the alert ended.", "args": [ ], @@ -688,7 +688,7 @@ }, { "name": "environment", - "description": "Environment for the alert", + "description": "Environment for the alert.", "args": [ ], @@ -702,7 +702,7 @@ }, { "name": "eventCount", - "description": "Number of events of this alert", + "description": "Number of events of this alert.", "args": [ ], @@ -716,7 +716,7 @@ }, { "name": "hosts", - "description": "List of hosts the alert came from", + "description": "List of hosts the alert came from.", "args": [ ], @@ -738,7 +738,7 @@ }, { "name": "iid", - "description": "Internal ID of the alert", + "description": "Internal ID of the alert.", "args": [ ], @@ -756,7 +756,7 @@ }, { "name": "issueIid", - "description": "Internal ID of the GitLab issue attached to the alert", + "description": "Internal ID of the GitLab issue attached to the alert.", "args": [ ], @@ -770,7 +770,7 @@ }, { "name": "metricsDashboardUrl", - "description": "URL for metrics embed for the alert", + "description": "URL for metrics embed for the alert.", "args": [ ], @@ -784,7 +784,7 @@ }, { "name": "monitoringTool", - "description": "Monitoring tool the alert came from", + "description": "Monitoring tool the alert came from.", "args": [ ], @@ -855,7 +855,7 @@ }, { "name": "prometheusAlert", - "description": "The alert condition for Prometheus", + "description": "The alert condition for Prometheus.", "args": [ ], @@ -869,7 +869,7 @@ }, { "name": "runbook", - "description": "Runbook for the alert as defined in alert details", + "description": "Runbook for the alert as defined in alert details.", "args": [ ], @@ -883,7 +883,7 @@ }, { "name": "service", - "description": "Service the alert came from", + "description": "Service the alert came from.", "args": [ ], @@ -897,7 +897,7 @@ }, { "name": "severity", - "description": "Severity of the alert", + "description": "Severity of the alert.", "args": [ ], @@ -911,7 +911,7 @@ }, { "name": "startedAt", - "description": "Timestamp the alert was raised", + "description": "Timestamp the alert was raised.", "args": [ ], @@ -925,7 +925,7 @@ }, { "name": "status", - "description": "Status of the alert", + "description": "Status of the alert.", "args": [ ], @@ -939,7 +939,7 @@ }, { "name": "title", - "description": "Title of the alert", + "description": "Title of the alert.", "args": [ ], @@ -953,7 +953,7 @@ }, { "name": "todos", - "description": "Todos of the current user for the alert", + "description": "To-do items of the current user for the alert.", "args": [ { "name": "action", @@ -1114,7 +1114,7 @@ }, { "name": "updatedAt", - "description": "Timestamp the alert was last updated", + "description": "Timestamp the alert was last updated.", "args": [ ], @@ -1414,7 +1414,7 @@ }, { "name": "all", - "description": "Total number of alerts for the project", + "description": "Total number of alerts for the project.", "args": [ ], @@ -1442,7 +1442,7 @@ }, { "name": "open", - "description": "Number of alerts with status TRIGGERED or ACKNOWLEDGED for the project", + "description": "Number of alerts with status TRIGGERED or ACKNOWLEDGED for the project.", "args": [ ], @@ -1520,7 +1520,7 @@ "fields": [ { "name": "active", - "description": "Whether the endpoint is currently accepting alerts", + "description": "Whether the endpoint is currently accepting alerts.", "args": [ ], @@ -1534,7 +1534,7 @@ }, { "name": "apiUrl", - "description": "URL at which Prometheus metrics can be queried to populate the metrics dashboard", + "description": "URL at which Prometheus metrics can be queried to populate the metrics dashboard.", "args": [ ], @@ -1548,7 +1548,7 @@ }, { "name": "id", - "description": "ID of the integration", + "description": "ID of the integration.", "args": [ ], @@ -1566,7 +1566,7 @@ }, { "name": "name", - "description": "Name of the integration", + "description": "Name of the integration.", "args": [ ], @@ -1580,7 +1580,7 @@ }, { "name": "token", - "description": "Token used to authenticate alert notification requests", + "description": "Token used to authenticate alert notification requests.", "args": [ ], @@ -1594,7 +1594,7 @@ }, { "name": "type", - "description": "Type of integration", + "description": "Type of integration.", "args": [ ], @@ -1612,7 +1612,7 @@ }, { "name": "url", - "description": "Endpoint which accepts alert notifications", + "description": "Endpoint which accepts alert notifications.", "args": [ ], @@ -1639,7 +1639,7 @@ { "kind": "SCALAR", "name": "AlertManagementHttpIntegrationID", - "description": "Identifier of AlertManagement::HttpIntegration", + "description": "Identifier of AlertManagement::HttpIntegration.", "fields": null, "inputFields": null, "interfaces": null, @@ -1653,7 +1653,7 @@ "fields": [ { "name": "active", - "description": "Whether the endpoint is currently accepting alerts", + "description": "Whether the endpoint is currently accepting alerts.", "args": [ ], @@ -1667,7 +1667,7 @@ }, { "name": "apiUrl", - "description": "URL at which Prometheus metrics can be queried to populate the metrics dashboard", + "description": "URL at which Prometheus metrics can be queried to populate the metrics dashboard.", "args": [ ], @@ -1681,7 +1681,7 @@ }, { "name": "id", - "description": "ID of the integration", + "description": "ID of the integration.", "args": [ ], @@ -1699,7 +1699,7 @@ }, { "name": "name", - "description": "Name of the integration", + "description": "Name of the integration.", "args": [ ], @@ -1713,7 +1713,7 @@ }, { "name": "token", - "description": "Token used to authenticate alert notification requests", + "description": "Token used to authenticate alert notification requests.", "args": [ ], @@ -1727,7 +1727,7 @@ }, { "name": "type", - "description": "Type of integration", + "description": "Type of integration.", "args": [ ], @@ -1745,7 +1745,7 @@ }, { "name": "url", - "description": "Endpoint which accepts alert notifications", + "description": "Endpoint which accepts alert notifications.", "args": [ ], @@ -1910,6 +1910,69 @@ "possibleTypes": null }, { + "kind": "OBJECT", + "name": "AlertManagementPayloadAlertField", + "description": "Parsed field from an alert used for custom mappings", + "fields": [ + { + "name": "label", + "description": "Human-readable label of the payload path.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "path", + "description": "Path to value inside payload JSON.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": "Type of the parsed value.", + "args": [ + + ], + "type": { + "kind": "ENUM", + "name": "AlertManagementPayloadAlertFieldType", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { "kind": "INPUT_OBJECT", "name": "AlertManagementPayloadAlertFieldInput", "description": "Field that are available while modifying the custom mapping attributes for an HTTP integration", @@ -2087,7 +2150,7 @@ "fields": [ { "name": "active", - "description": "Whether the endpoint is currently accepting alerts", + "description": "Whether the endpoint is currently accepting alerts.", "args": [ ], @@ -2101,7 +2164,7 @@ }, { "name": "apiUrl", - "description": "URL at which Prometheus metrics can be queried to populate the metrics dashboard", + "description": "URL at which Prometheus metrics can be queried to populate the metrics dashboard.", "args": [ ], @@ -2115,7 +2178,7 @@ }, { "name": "id", - "description": "ID of the integration", + "description": "ID of the integration.", "args": [ ], @@ -2133,7 +2196,7 @@ }, { "name": "name", - "description": "Name of the integration", + "description": "Name of the integration.", "args": [ ], @@ -2147,7 +2210,7 @@ }, { "name": "token", - "description": "Token used to authenticate alert notification requests", + "description": "Token used to authenticate alert notification requests.", "args": [ ], @@ -2161,7 +2224,7 @@ }, { "name": "type", - "description": "Type of integration", + "description": "Type of integration.", "args": [ ], @@ -2179,7 +2242,7 @@ }, { "name": "url", - "description": "Endpoint which accepts alert notifications", + "description": "Endpoint which accepts alert notifications.", "args": [ ], @@ -2441,7 +2504,7 @@ }, { "name": "todo", - "description": "The todo after mutation.", + "description": "The to-do item after mutation.", "args": [ ], @@ -2585,7 +2648,7 @@ }, { "name": "todo", - "description": "The todo after mutation.", + "description": "The to-do item after mutation.", "args": [ ], @@ -2608,7 +2671,7 @@ { "kind": "SCALAR", "name": "AnalyticsDevopsAdoptionSegmentID", - "description": "Identifier of Analytics::DevopsAdoption::Segment", + "description": "Identifier of Analytics::DevopsAdoption::Segment.", "fields": null, "inputFields": null, "interfaces": null, @@ -2645,7 +2708,7 @@ "fields": [ { "name": "description", - "description": "The emoji description", + "description": "The emoji description.", "args": [ ], @@ -2663,7 +2726,7 @@ }, { "name": "emoji", - "description": "The emoji as an icon", + "description": "The emoji as an icon.", "args": [ ], @@ -2681,7 +2744,7 @@ }, { "name": "name", - "description": "The emoji name", + "description": "The emoji name.", "args": [ ], @@ -2699,7 +2762,7 @@ }, { "name": "unicode", - "description": "The emoji in unicode", + "description": "The emoji in Unicode.", "args": [ ], @@ -2717,7 +2780,7 @@ }, { "name": "unicodeVersion", - "description": "The unicode version for this emoji", + "description": "The Unicode version for this emoji.", "args": [ ], @@ -2735,7 +2798,7 @@ }, { "name": "user", - "description": "The user who awarded the emoji", + "description": "The user who awarded the emoji.", "args": [ ], @@ -2781,7 +2844,7 @@ }, { "name": "name", - "description": "The emoji name", + "description": "The emoji name.", "type": { "kind": "NON_NULL", "name": null, @@ -2876,6 +2939,118 @@ "possibleTypes": null }, { + "kind": "OBJECT", + "name": "AwardEmojiConnection", + "description": "The connection type for AwardEmoji.", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AwardEmojiEdge", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "nodes", + "description": "A list of nodes.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AwardEmoji", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "AwardEmojiEdge", + "description": "An edge in a connection.", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "node", + "description": "The item at the end of the edge.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "AwardEmoji", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { "kind": "INPUT_OBJECT", "name": "AwardEmojiRemoveInput", "description": "Autogenerated input type of AwardEmojiRemove", @@ -2897,7 +3072,7 @@ }, { "name": "name", - "description": "The emoji name", + "description": "The emoji name.", "type": { "kind": "NON_NULL", "name": null, @@ -3013,7 +3188,7 @@ }, { "name": "name", - "description": "The emoji name", + "description": "The emoji name.", "type": { "kind": "NON_NULL", "name": null, @@ -3128,7 +3303,7 @@ { "kind": "SCALAR", "name": "AwardableID", - "description": "Identifier of Awardable", + "description": "Identifier of Awardable.", "fields": null, "inputFields": null, "interfaces": null, @@ -3297,7 +3472,7 @@ }, { "name": "sha", - "description": "Last commit sha for the entry", + "description": "Last commit SHA for the entry", "args": [ ], @@ -3596,7 +3771,7 @@ }, { "name": "hideBacklogList", - "description": "Whether or not backlog list is hidden", + "description": "Whether or not backlog list is hidden.", "args": [ ], @@ -3610,7 +3785,7 @@ }, { "name": "hideClosedList", - "description": "Whether or not closed list is hidden", + "description": "Whether or not closed list is hidden.", "args": [ ], @@ -3624,7 +3799,7 @@ }, { "name": "id", - "description": "ID (global ID) of the board", + "description": "ID (global ID) of the board.", "args": [ ], @@ -3709,7 +3884,7 @@ }, { "name": "lists", - "description": "Lists of the board", + "description": "Lists of the board.", "args": [ { "name": "id", @@ -3796,7 +3971,7 @@ }, { "name": "name", - "description": "Name of the board", + "description": "Name of the board.", "args": [ ], @@ -3985,7 +4160,7 @@ "fields": [ { "name": "author", - "description": "Author of the epic", + "description": "Author of the epic.", "args": [ ], @@ -4002,8 +4177,61 @@ "deprecationReason": null }, { + "name": "awardEmoji", + "description": "A list of award emojis associated with the epic.", + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "AwardEmojiConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "children", - "description": "Children (sub-epics) of the epic", + "description": "Children (sub-epics) of the epic.", "args": [ { "name": "startDate", @@ -4212,7 +4440,7 @@ }, { "name": "closedAt", - "description": "Timestamp of when the epic was closed", + "description": "Timestamp of when the epic was closed.", "args": [ ], @@ -4226,7 +4454,7 @@ }, { "name": "confidential", - "description": "Indicates if the epic is confidential", + "description": "Indicates if the epic is confidential.", "args": [ ], @@ -4240,7 +4468,7 @@ }, { "name": "createdAt", - "description": "Timestamp of when the epic was created", + "description": "Timestamp of when the epic was created.", "args": [ ], @@ -4254,7 +4482,7 @@ }, { "name": "currentUserTodos", - "description": "Todos for the current user", + "description": "To-do items for the current user.", "args": [ { "name": "after", @@ -4298,7 +4526,7 @@ }, { "name": "state", - "description": "State of the todos", + "description": "State of the to-do items.", "type": { "kind": "ENUM", "name": "TodoStateEnum", @@ -4321,7 +4549,7 @@ }, { "name": "descendantCounts", - "description": "Number of open and closed descendant epics and issues", + "description": "Number of open and closed descendant epics and issues.", "args": [ ], @@ -4335,7 +4563,7 @@ }, { "name": "descendantWeightSum", - "description": "Total weight of open and closed issues in the epic and its descendants", + "description": "Total weight of open and closed issues in the epic and its descendants.", "args": [ ], @@ -4349,7 +4577,7 @@ }, { "name": "description", - "description": "Description of the epic", + "description": "Description of the epic.", "args": [ ], @@ -4420,7 +4648,7 @@ }, { "name": "downvotes", - "description": "Number of downvotes the epic has received", + "description": "Number of downvotes the epic has received.", "args": [ ], @@ -4438,7 +4666,7 @@ }, { "name": "dueDate", - "description": "Due date of the epic", + "description": "Due date of the epic.", "args": [ ], @@ -4452,7 +4680,7 @@ }, { "name": "dueDateFixed", - "description": "Fixed due date of the epic", + "description": "Fixed due date of the epic.", "args": [ ], @@ -4466,7 +4694,7 @@ }, { "name": "dueDateFromMilestones", - "description": "Inherited due date of the epic from milestones", + "description": "Inherited due date of the epic from milestones.", "args": [ ], @@ -4480,7 +4708,7 @@ }, { "name": "dueDateIsFixed", - "description": "Indicates if the due date has been manually set", + "description": "Indicates if the due date has been manually set.", "args": [ ], @@ -4494,7 +4722,7 @@ }, { "name": "group", - "description": "Group to which the epic belongs", + "description": "Group to which the epic belongs.", "args": [ ], @@ -4512,7 +4740,7 @@ }, { "name": "hasChildren", - "description": "Indicates if the epic has children", + "description": "Indicates if the epic has children.", "args": [ ], @@ -4530,7 +4758,7 @@ }, { "name": "hasIssues", - "description": "Indicates if the epic has direct issues", + "description": "Indicates if the epic has direct issues.", "args": [ ], @@ -4548,7 +4776,7 @@ }, { "name": "hasParent", - "description": "Indicates if the epic has a parent epic", + "description": "Indicates if the epic has a parent epic.", "args": [ ], @@ -4566,7 +4794,7 @@ }, { "name": "healthStatus", - "description": "Current health status of the epic", + "description": "Current health status of the epic.", "args": [ ], @@ -4580,7 +4808,7 @@ }, { "name": "id", - "description": "ID of the epic", + "description": "ID of the epic.", "args": [ ], @@ -4598,7 +4826,7 @@ }, { "name": "iid", - "description": "Internal ID of the epic", + "description": "Internal ID of the epic.", "args": [ ], @@ -4616,7 +4844,7 @@ }, { "name": "issues", - "description": "A list of issues associated with the epic", + "description": "A list of issues associated with the epic.", "args": [ { "name": "after", @@ -4669,7 +4897,7 @@ }, { "name": "labels", - "description": "Labels assigned to the epic", + "description": "Labels assigned to the epic.", "args": [ { "name": "after", @@ -4779,7 +5007,7 @@ }, { "name": "parent", - "description": "Parent epic of the epic", + "description": "Parent epic of the epic.", "args": [ ], @@ -4793,7 +5021,7 @@ }, { "name": "participants", - "description": "List of participants for the epic", + "description": "List of participants for the epic.", "args": [ { "name": "after", @@ -4846,11 +5074,11 @@ }, { "name": "reference", - "description": "Internal reference of the epic. Returned in shortened format by default", + "description": "Internal reference of the epic. Returned in shortened format by default.", "args": [ { "name": "full", - "description": "Indicates if the reference should be returned in full", + "description": "Indicates if the reference should be returned in full.", "type": { "kind": "SCALAR", "name": "Boolean", @@ -4873,7 +5101,7 @@ }, { "name": "relationPath", - "description": "URI path of the epic-issue relationship", + "description": "URI path of the epic-issue relationship.", "args": [ ], @@ -4887,7 +5115,7 @@ }, { "name": "relativePosition", - "description": "The relative position of the epic in the epic tree", + "description": "The relative position of the epic in the epic tree.", "args": [ ], @@ -4901,7 +5129,7 @@ }, { "name": "startDate", - "description": "Start date of the epic", + "description": "Start date of the epic.", "args": [ ], @@ -4915,7 +5143,7 @@ }, { "name": "startDateFixed", - "description": "Fixed start date of the epic", + "description": "Fixed start date of the epic.", "args": [ ], @@ -4929,7 +5157,7 @@ }, { "name": "startDateFromMilestones", - "description": "Inherited start date of the epic from milestones", + "description": "Inherited start date of the epic from milestones.", "args": [ ], @@ -4943,7 +5171,7 @@ }, { "name": "startDateIsFixed", - "description": "Indicates if the start date has been manually set", + "description": "Indicates if the start date has been manually set.", "args": [ ], @@ -4957,7 +5185,7 @@ }, { "name": "state", - "description": "State of the epic", + "description": "State of the epic.", "args": [ ], @@ -4975,7 +5203,7 @@ }, { "name": "subscribed", - "description": "Indicates the currently logged in user is subscribed to the epic", + "description": "Indicates the currently logged in user is subscribed to the epic.", "args": [ ], @@ -4993,7 +5221,7 @@ }, { "name": "title", - "description": "Title of the epic", + "description": "Title of the epic.", "args": [ ], @@ -5007,7 +5235,7 @@ }, { "name": "updatedAt", - "description": "Timestamp of when the epic was updated", + "description": "Timestamp of when the epic was updated.", "args": [ ], @@ -5021,7 +5249,7 @@ }, { "name": "upvotes", - "description": "Number of upvotes the epic has received", + "description": "Number of upvotes the epic has received.", "args": [ ], @@ -5039,7 +5267,7 @@ }, { "name": "userDiscussionsCount", - "description": "Number of user discussions in the epic", + "description": "Number of user discussions in the epic.", "args": [ ], @@ -5057,7 +5285,7 @@ }, { "name": "userNotesCount", - "description": "Number of user notes of the epic", + "description": "Number of user notes of the epic.", "args": [ ], @@ -5107,7 +5335,7 @@ }, { "name": "webPath", - "description": "Web path of the epic", + "description": "Web path of the epic.", "args": [ ], @@ -5125,7 +5353,7 @@ }, { "name": "webUrl", - "description": "Web URL of the epic", + "description": "Web URL of the epic.", "args": [ ], @@ -5304,7 +5532,7 @@ { "kind": "SCALAR", "name": "BoardID", - "description": "Identifier of Board", + "description": "Identifier of Board.", "fields": null, "inputFields": null, "interfaces": null, @@ -5319,7 +5547,7 @@ "inputFields": [ { "name": "labelName", - "description": "Filter by label name", + "description": "Filter by label name.", "type": { "kind": "LIST", "name": null, @@ -5333,7 +5561,7 @@ }, { "name": "milestoneTitle", - "description": "Filter by milestone title", + "description": "Filter by milestone title.", "type": { "kind": "SCALAR", "name": "String", @@ -5343,7 +5571,7 @@ }, { "name": "assigneeUsername", - "description": "Filter by assignee username", + "description": "Filter by assignee username.", "type": { "kind": "LIST", "name": null, @@ -5357,7 +5585,7 @@ }, { "name": "authorUsername", - "description": "Filter by author username", + "description": "Filter by author username.", "type": { "kind": "SCALAR", "name": "String", @@ -5367,7 +5595,7 @@ }, { "name": "releaseTag", - "description": "Filter by release tag", + "description": "Filter by release tag.", "type": { "kind": "SCALAR", "name": "String", @@ -5377,7 +5605,7 @@ }, { "name": "myReactionEmoji", - "description": "Filter by reaction emoji", + "description": "Filter by reaction emoji.", "type": { "kind": "SCALAR", "name": "String", @@ -5417,7 +5645,7 @@ }, { "name": "not", - "description": "List of negated params. Warning: this argument is experimental and a subject to change in future", + "description": "List of negated params. Warning: this argument is experimental and a subject to change in future.", "type": { "kind": "INPUT_OBJECT", "name": "NegatedBoardIssueInput", @@ -5427,7 +5655,7 @@ }, { "name": "search", - "description": "Search query for issue title or description", + "description": "Search query for issue title or description.", "type": { "kind": "SCALAR", "name": "String", @@ -5481,7 +5709,7 @@ }, { "name": "collapsed", - "description": "Indicates if list is collapsed for this user", + "description": "Indicates if list is collapsed for this user.", "args": [ ], @@ -5495,7 +5723,7 @@ }, { "name": "id", - "description": "ID (global ID) of the list", + "description": "ID (global ID) of the list.", "args": [ ], @@ -5513,7 +5741,7 @@ }, { "name": "issues", - "description": "Board issues", + "description": "Board issues.", "args": [ { "name": "filters", @@ -5576,7 +5804,7 @@ }, { "name": "issuesCount", - "description": "Count of issues in the list", + "description": "Count of issues in the list.", "args": [ ], @@ -5604,7 +5832,7 @@ }, { "name": "label", - "description": "Label of the list", + "description": "Label of the list.", "args": [ ], @@ -5632,7 +5860,7 @@ }, { "name": "listType", - "description": "Type of the list", + "description": "Type of the list.", "args": [ ], @@ -5692,7 +5920,7 @@ }, { "name": "position", - "description": "Position of list within the board", + "description": "Position of list within the board.", "args": [ ], @@ -5706,7 +5934,7 @@ }, { "name": "title", - "description": "Title of the list", + "description": "Title of the list.", "args": [ ], @@ -6143,7 +6371,7 @@ { "kind": "SCALAR", "name": "BoardsEpicBoardID", - "description": "Identifier of Boards::EpicBoard", + "description": "Identifier of Boards::EpicBoard.", "fields": null, "inputFields": null, "interfaces": null, @@ -6153,7 +6381,7 @@ { "kind": "SCALAR", "name": "BoardsEpicListID", - "description": "Identifier of Boards::EpicList", + "description": "Identifier of Boards::EpicList.", "fields": null, "inputFields": null, "interfaces": null, @@ -6177,7 +6405,7 @@ "fields": [ { "name": "commit", - "description": "Commit for the branch", + "description": "Commit for the branch.", "args": [ ], @@ -6191,7 +6419,7 @@ }, { "name": "name", - "description": "Name of the branch", + "description": "Name of the branch.", "args": [ ], @@ -6562,7 +6790,7 @@ "fields": [ { "name": "errors", - "description": "Linting errors", + "description": "Linting errors.", "args": [ ], @@ -6584,7 +6812,7 @@ }, { "name": "mergedYaml", - "description": "Merged CI config YAML", + "description": "Merged CI configuration YAML.", "args": [ ], @@ -6598,7 +6826,7 @@ }, { "name": "stages", - "description": "Stages of the pipeline", + "description": "Stages of the pipeline.", "args": [ { "name": "after", @@ -6651,7 +6879,7 @@ }, { "name": "status", - "description": "Status of linting, can be either valid or invalid", + "description": "Status of linting, can be either valid or invalid.", "args": [ ], @@ -6678,7 +6906,7 @@ "fields": [ { "name": "jobs", - "description": "Jobs in group", + "description": "Jobs in group.", "args": [ { "name": "after", @@ -6731,7 +6959,7 @@ }, { "name": "name", - "description": "Name of the job group", + "description": "Name of the job group.", "args": [ ], @@ -6745,7 +6973,7 @@ }, { "name": "size", - "description": "Size of the job group", + "description": "Size of the job group.", "args": [ ], @@ -7297,7 +7525,7 @@ "fields": [ { "name": "name", - "description": "Name of the need", + "description": "Name of the need.", "args": [ ], @@ -7436,7 +7664,7 @@ "fields": [ { "name": "groups", - "description": "Groups of jobs for the stage", + "description": "Groups of jobs for the stage.", "args": [ { "name": "after", @@ -7489,7 +7717,7 @@ }, { "name": "name", - "description": "Name of the stage", + "description": "Name of the stage.", "args": [ ], @@ -7651,7 +7879,7 @@ "fields": [ { "name": "detailedStatus", - "description": "Detailed status of the group", + "description": "Detailed status of the group.", "args": [ ], @@ -7665,7 +7893,7 @@ }, { "name": "jobs", - "description": "Jobs in group", + "description": "Jobs in group.", "args": [ { "name": "after", @@ -7718,7 +7946,7 @@ }, { "name": "name", - "description": "Name of the job group", + "description": "Name of the job group.", "args": [ ], @@ -7732,7 +7960,7 @@ }, { "name": "size", - "description": "Size of the group", + "description": "Size of the group.", "args": [ ], @@ -7871,7 +8099,7 @@ "fields": [ { "name": "artifacts", - "description": "Artifacts generated by the job", + "description": "Artifacts generated by the job.", "args": [ { "name": "after", @@ -7924,7 +8152,7 @@ }, { "name": "detailedStatus", - "description": "Detailed status of the job", + "description": "Detailed status of the job.", "args": [ ], @@ -7938,7 +8166,7 @@ }, { "name": "name", - "description": "Name of the job", + "description": "Name of the job.", "args": [ ], @@ -7952,7 +8180,7 @@ }, { "name": "needs", - "description": "References to builds that must complete before the jobs run", + "description": "References to builds that must complete before the jobs run.", "args": [ { "name": "after", @@ -8005,7 +8233,7 @@ }, { "name": "pipeline", - "description": "Pipeline the job belongs to", + "description": "Pipeline the job belongs to.", "args": [ ], @@ -8019,7 +8247,7 @@ }, { "name": "scheduledAt", - "description": "Schedule for the build", + "description": "Schedule for the build.", "args": [ ], @@ -8046,7 +8274,7 @@ "fields": [ { "name": "downloadPath", - "description": "URL for downloading the artifact's file", + "description": "URL for downloading the artifact's file.", "args": [ ], @@ -8060,7 +8288,7 @@ }, { "name": "fileType", - "description": "File type of the artifact", + "description": "File type of the artifact.", "args": [ ], @@ -8307,7 +8535,7 @@ { "kind": "SCALAR", "name": "CiPipelineID", - "description": "Identifier of Ci::Pipeline", + "description": "Identifier of Ci::Pipeline.", "fields": null, "inputFields": null, "interfaces": null, @@ -8321,7 +8549,7 @@ "fields": [ { "name": "detailedStatus", - "description": "Detailed status of the stage", + "description": "Detailed status of the stage.", "args": [ ], @@ -8335,7 +8563,7 @@ }, { "name": "groups", - "description": "Group of jobs for the stage", + "description": "Group of jobs for the stage.", "args": [ { "name": "after", @@ -8388,7 +8616,7 @@ }, { "name": "name", - "description": "Name of the stage", + "description": "Name of the stage.", "args": [ ], @@ -8667,7 +8895,7 @@ "fields": [ { "name": "count", - "description": "Total count of collection", + "description": "Total count of collection.", "args": [ ], @@ -8944,7 +9172,7 @@ "fields": [ { "name": "count", - "description": "Total count of collection", + "description": "Total count of collection.", "args": [ ], @@ -9274,7 +9502,7 @@ { "kind": "SCALAR", "name": "ClustersAgentID", - "description": "Identifier of Clusters::Agent", + "description": "Identifier of Clusters::Agent.", "fields": null, "inputFields": null, "interfaces": null, @@ -9284,7 +9512,7 @@ { "kind": "SCALAR", "name": "ClustersAgentTokenID", - "description": "Identifier of Clusters::AgentToken", + "description": "Identifier of Clusters::AgentToken.", "fields": null, "inputFields": null, "interfaces": null, @@ -9294,7 +9522,7 @@ { "kind": "SCALAR", "name": "ClustersClusterID", - "description": "Identifier of Clusters::Cluster", + "description": "Identifier of Clusters::Cluster.", "fields": null, "inputFields": null, "interfaces": null, @@ -9548,7 +9776,7 @@ "fields": [ { "name": "author", - "description": "Author of the commit", + "description": "Author of the commit.", "args": [ ], @@ -9562,7 +9790,7 @@ }, { "name": "authorGravatar", - "description": "Commit authors gravatar", + "description": "Commit authors gravatar.", "args": [ ], @@ -9576,7 +9804,7 @@ }, { "name": "authorName", - "description": "Commit authors name", + "description": "Commit authors name.", "args": [ ], @@ -9590,7 +9818,7 @@ }, { "name": "authoredDate", - "description": "Timestamp of when the commit was authored", + "description": "Timestamp of when the commit was authored.", "args": [ ], @@ -9604,7 +9832,7 @@ }, { "name": "description", - "description": "Description of the commit message", + "description": "Description of the commit message.", "args": [ ], @@ -9632,7 +9860,7 @@ }, { "name": "id", - "description": "ID (global ID) of the commit", + "description": "ID (global ID) of the commit.", "args": [ ], @@ -9650,7 +9878,7 @@ }, { "name": "message", - "description": "Raw commit message", + "description": "Raw commit message.", "args": [ ], @@ -9664,7 +9892,7 @@ }, { "name": "pipelines", - "description": "Pipelines of the commit ordered latest first", + "description": "Pipelines of the commit ordered latest first.", "args": [ { "name": "status", @@ -9747,7 +9975,7 @@ }, { "name": "sha", - "description": "SHA1 ID of the commit", + "description": "SHA1 ID of the commit.", "args": [ ], @@ -9765,7 +9993,7 @@ }, { "name": "shortId", - "description": "Short SHA1 ID of the commit", + "description": "Short SHA1 ID of the commit.", "args": [ ], @@ -9783,7 +10011,7 @@ }, { "name": "signatureHtml", - "description": "Rendered HTML of the commit signature", + "description": "Rendered HTML of the commit signature.", "args": [ ], @@ -9797,7 +10025,7 @@ }, { "name": "title", - "description": "Title of the commit message", + "description": "Title of the commit message.", "args": [ ], @@ -9825,7 +10053,7 @@ }, { "name": "webPath", - "description": "Web path of the commit", + "description": "Web path of the commit.", "args": [ ], @@ -9843,7 +10071,7 @@ }, { "name": "webUrl", - "description": "Web URL of the commit", + "description": "Web URL of the commit.", "args": [ ], @@ -9875,7 +10103,7 @@ "inputFields": [ { "name": "action", - "description": "The action to perform, create, delete, move, update, chmod", + "description": "The action to perform, create, delete, move, update, chmod.", "type": { "kind": "NON_NULL", "name": null, @@ -9889,7 +10117,7 @@ }, { "name": "filePath", - "description": "Full path to the file", + "description": "Full path to the file.", "type": { "kind": "NON_NULL", "name": null, @@ -9903,7 +10131,7 @@ }, { "name": "content", - "description": "Content of the file", + "description": "Content of the file.", "type": { "kind": "SCALAR", "name": "String", @@ -9913,7 +10141,7 @@ }, { "name": "previousPath", - "description": "Original full path to the file being moved", + "description": "Original full path to the file being moved.", "type": { "kind": "SCALAR", "name": "String", @@ -9923,7 +10151,7 @@ }, { "name": "lastCommitId", - "description": "Last known file commit ID", + "description": "Last known file commit ID.", "type": { "kind": "SCALAR", "name": "String", @@ -9933,7 +10161,7 @@ }, { "name": "executeFilemode", - "description": "Enables/disables the execute flag on the file", + "description": "Enables/disables the execute flag on the file.", "type": { "kind": "SCALAR", "name": "Boolean", @@ -9943,7 +10171,7 @@ }, { "name": "encoding", - "description": "Encoding of the file. Default is text", + "description": "Encoding of the file. Default is text.", "type": { "kind": "ENUM", "name": "CommitEncoding", @@ -10110,7 +10338,7 @@ }, { "name": "message", - "description": "Raw commit message", + "description": "Raw commit message.", "type": { "kind": "NON_NULL", "name": null, @@ -10370,6 +10598,20 @@ }, "isDeprecated": false, "deprecationReason": null + }, + { + "name": "pipelineConfigurationFullPath", + "description": "Full path of the compliance pipeline configuration stored in a project repository, such as `.gitlab/compliance/soc2/.gitlab-ci.yml`.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -10526,6 +10768,16 @@ "ofType": null }, "defaultValue": null + }, + { + "name": "pipelineConfigurationFullPath", + "description": "Full path of the compliance pipeline configuration stored in a project repository, such as `.gitlab/compliance/soc2/.gitlab-ci.yml`.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null } ], "interfaces": null, @@ -10535,7 +10787,7 @@ { "kind": "SCALAR", "name": "ComplianceManagementFrameworkID", - "description": "Identifier of ComplianceManagement::Framework", + "description": "Identifier of ComplianceManagement::Framework.", "fields": null, "inputFields": null, "interfaces": null, @@ -10543,6 +10795,55 @@ "possibleTypes": null }, { + "kind": "OBJECT", + "name": "ComposerMetadata", + "description": "Composer metadata", + "fields": [ + { + "name": "composerJson", + "description": "Data of the Composer JSON file.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PackageComposerJsonType", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "targetSha", + "description": "Target SHA of the package.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { "kind": "INPUT_OBJECT", "name": "ConfigureSastInput", "description": "Autogenerated input type of ConfigureSast", @@ -10683,7 +10984,7 @@ "fields": [ { "name": "cadence", - "description": "This container expiration policy schedule", + "description": "This container expiration policy schedule.", "args": [ ], @@ -10701,7 +11002,7 @@ }, { "name": "createdAt", - "description": "Timestamp of when the container expiration policy was created", + "description": "Timestamp of when the container expiration policy was created.", "args": [ ], @@ -10719,7 +11020,7 @@ }, { "name": "enabled", - "description": "Indicates whether this container expiration policy is enabled", + "description": "Indicates whether this container expiration policy is enabled.", "args": [ ], @@ -10737,7 +11038,7 @@ }, { "name": "keepN", - "description": "Number of tags to retain", + "description": "Number of tags to retain.", "args": [ ], @@ -10751,7 +11052,7 @@ }, { "name": "nameRegex", - "description": "Tags with names matching this regex pattern will expire", + "description": "Tags with names matching this regex pattern will expire.", "args": [ ], @@ -10765,7 +11066,7 @@ }, { "name": "nameRegexKeep", - "description": "Tags with names matching this regex pattern will be preserved", + "description": "Tags with names matching this regex pattern will be preserved.", "args": [ ], @@ -10779,7 +11080,7 @@ }, { "name": "nextRunAt", - "description": "Next time that this container expiration policy will get executed", + "description": "Next time that this container expiration policy will get executed.", "args": [ ], @@ -10793,7 +11094,7 @@ }, { "name": "olderThan", - "description": "Tags older that this will expire", + "description": "Tags older that this will expire.", "args": [ ], @@ -10807,7 +11108,7 @@ }, { "name": "updatedAt", - "description": "Timestamp of when the container expiration policy was updated", + "description": "Timestamp of when the container expiration policy was updated.", "args": [ ], @@ -11097,7 +11398,7 @@ }, { "name": "project", - "description": "Project of the container registry", + "description": "Project of the container registry.", "args": [ ], @@ -11416,7 +11717,7 @@ }, { "name": "project", - "description": "Project of the container registry", + "description": "Project of the container registry.", "args": [ ], @@ -11448,7 +11749,7 @@ }, { "name": "tags", - "description": "Tags of the container repository", + "description": "Tags of the container repository.", "args": [ { "name": "after", @@ -11591,7 +11892,7 @@ { "kind": "SCALAR", "name": "ContainerRepositoryID", - "description": "Identifier of ContainerRepository", + "description": "Identifier of ContainerRepository.", "fields": null, "inputFields": null, "interfaces": null, @@ -12012,7 +12313,7 @@ }, { "name": "todo", - "description": "The todo after mutation.", + "description": "The to-do item after mutation.", "args": [ ], @@ -12200,7 +12501,7 @@ "inputFields": [ { "name": "projectPath", - "description": "The project full path the resource is associated with.", + "description": "Full path of the project with which the resource is associated.", "type": { "kind": "SCALAR", "name": "ID", @@ -12210,7 +12511,7 @@ }, { "name": "groupPath", - "description": "The group full path the resource is associated with.", + "description": "Full path of the group with which the resource is associated.", "type": { "kind": "SCALAR", "name": "ID", @@ -12230,7 +12531,7 @@ }, { "name": "hideBacklogList", - "description": "Whether or not backlog list is hidden", + "description": "Whether or not backlog list is hidden.", "type": { "kind": "SCALAR", "name": "Boolean", @@ -12240,7 +12541,7 @@ }, { "name": "hideClosedList", - "description": "Whether or not closed list is hidden", + "description": "Whether or not closed list is hidden.", "type": { "kind": "SCALAR", "name": "Boolean", @@ -13803,8 +14104,8 @@ "fields": null, "inputFields": [ { - "name": "groupPath", - "description": "The target group for the iteration.", + "name": "projectPath", + "description": "Full path of the project with which the resource is associated.", "type": { "kind": "SCALAR", "name": "ID", @@ -13813,8 +14114,8 @@ "defaultValue": null }, { - "name": "projectPath", - "description": "The target project for the iteration.", + "name": "groupPath", + "description": "Full path of the group with which the resource is associated.", "type": { "kind": "SCALAR", "name": "ID", @@ -14209,6 +14510,26 @@ "fields": null, "inputFields": [ { + "name": "captchaResponse", + "description": "A valid CAPTCHA response value obtained by using the provided captchaSiteKey with a CAPTCHA API to present a challenge to be solved on the client. Required to resubmit if the previous operation returned \"NeedsCaptchaResponse: true\".", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "spamLogId", + "description": "The spam log ID which must be passed along with a valid CAPTCHA response for the operation to be completed. Required to resubmit if the previous operation returned \"NeedsCaptchaResponse: true\".", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { "name": "title", "description": "Title of the snippet.", "type": { @@ -14313,6 +14634,20 @@ "description": "Autogenerated return type of CreateSnippet", "fields": [ { + "name": "captchaSiteKey", + "description": "The CAPTCHA site key which must be used to render a challenge for the user to solve to obtain a valid captchaResponse value. Included only when an operation was not completed because \"NeedsCaptchaResponse\" is true.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "clientMutationId", "description": "A unique identifier for the client performing the mutation.", "args": [ @@ -14353,6 +14688,20 @@ "deprecationReason": null }, { + "name": "needsCaptchaResponse", + "description": "Indicates whether the operation was detected as possible spam and not completed. If CAPTCHA is enabled, the request must be resubmitted with a valid CAPTCHA response and spam_log_id included for the operation to be completed. Included only when an operation was not completed because \"NeedsCaptchaResponse\" is true.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "snippet", "description": "The snippet after mutation.", "args": [ @@ -14368,7 +14717,7 @@ }, { "name": "spam", - "description": "Indicates whether the operation returns a record detected as spam.", + "description": "Indicates whether the operation was detected as definite spam. There is no option to resubmit the request with a CAPTCHA response.", "args": [ ], @@ -14379,6 +14728,20 @@ }, "isDeprecated": false, "deprecationReason": null + }, + { + "name": "spamLogId", + "description": "The spam log ID which must be passed along with a valid CAPTCHA response for an operation to be completed. Included only when an operation was not completed because \"NeedsCaptchaResponse\" is true.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -14539,7 +14902,7 @@ "fields": [ { "name": "currentUserTodos", - "description": "Todos for the current user", + "description": "To-do items for the current user.", "args": [ { "name": "after", @@ -14583,7 +14946,7 @@ }, { "name": "state", - "description": "State of the todos", + "description": "State of the to-do items.", "type": { "kind": "ENUM", "name": "TodoStateEnum", @@ -14648,7 +15011,7 @@ "fields": [ { "name": "external", - "description": "Whether the emoji is an external link", + "description": "Whether the emoji is an external link.", "args": [ ], @@ -14666,7 +15029,7 @@ }, { "name": "id", - "description": "The ID of the emoji", + "description": "The ID of the emoji.", "args": [ ], @@ -14684,7 +15047,7 @@ }, { "name": "name", - "description": "The name of the emoji", + "description": "The name of the emoji.", "args": [ ], @@ -14702,7 +15065,7 @@ }, { "name": "url", - "description": "The link to file of the emoji", + "description": "The link to file of the emoji.", "args": [ ], @@ -14841,7 +15204,7 @@ { "kind": "SCALAR", "name": "CustomEmojiID", - "description": "Identifier of CustomEmoji", + "description": "Identifier of CustomEmoji.", "fields": null, "inputFields": null, "interfaces": null, @@ -14975,6 +15338,411 @@ "possibleTypes": null }, { + "kind": "OBJECT", + "name": "DastProfile", + "description": "Represents a DAST Profile", + "fields": [ + { + "name": "dastScannerProfile", + "description": "The associated scanner profile.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "DastScannerProfile", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "dastSiteProfile", + "description": "The associated site profile.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "DastSiteProfile", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": "The description of the scan.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "editPath", + "description": "Relative web path to the edit page of a profile.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": "ID of the profile.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DastProfileID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "The name of the profile.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "DastProfileConnection", + "description": "The connection type for DastProfile.", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "DastProfileEdge", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "nodes", + "description": "A list of nodes.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "DastProfile", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "DastProfileCreateInput", + "description": "Autogenerated input type of DastProfileCreate", + "fields": null, + "inputFields": [ + { + "name": "fullPath", + "description": "The project the profile belongs to.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "name", + "description": "The name of the profile.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "description", + "description": "The description of the profile. Defaults to an empty string.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": "\"\"" + }, + { + "name": "dastSiteProfileId", + "description": "ID of the site profile to be associated.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DastSiteProfileID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "dastScannerProfileId", + "description": "ID of the scanner profile to be associated.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DastScannerProfileID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "runAfterCreate", + "description": "Run scan using profile after creation. Defaults to false.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "DastProfileCreatePayload", + "description": "Autogenerated return type of DastProfileCreate", + "fields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "dastProfile", + "description": "The created profile.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "DastProfile", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "errors", + "description": "Errors encountered during execution of the mutation.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pipelineUrl", + "description": "The URL of the pipeline that was created. Requires `runAfterCreate` to be set to `true`.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "DastProfileEdge", + "description": "An edge in a connection.", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "node", + "description": "The item at the end of the edge.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "DastProfile", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "DastProfileID", + "description": "Identifier of Dast::Profile.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { "kind": "ENUM", "name": "DastScanTypeEnum", "description": null, @@ -15549,7 +16317,7 @@ { "kind": "SCALAR", "name": "DastScannerProfileID", - "description": "Identifier of DastScannerProfile", + "description": "Identifier of DastScannerProfile.", "fields": null, "inputFields": null, "interfaces": null, @@ -16206,7 +16974,7 @@ { "kind": "SCALAR", "name": "DastSiteProfileID", - "description": "Identifier of DastSiteProfile", + "description": "Identifier of DastSiteProfile.", "fields": null, "inputFields": null, "interfaces": null, @@ -16568,7 +17336,7 @@ { "kind": "SCALAR", "name": "DastSiteTokenID", - "description": "Identifier of DastSiteToken", + "description": "Identifier of DastSiteToken.", "fields": null, "inputFields": null, "interfaces": null, @@ -16907,7 +17675,7 @@ { "kind": "SCALAR", "name": "DastSiteValidationID", - "description": "Identifier of DastSiteValidation", + "description": "Identifier of DastSiteValidation.", "fields": null, "inputFields": null, "interfaces": null, @@ -16915,6 +17683,108 @@ "possibleTypes": null }, { + "kind": "INPUT_OBJECT", + "name": "DastSiteValidationRevokeInput", + "description": "Autogenerated input type of DastSiteValidationRevoke", + "fields": null, + "inputFields": [ + { + "name": "fullPath", + "description": "The project the site validation belongs to.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "normalizedTargetUrl", + "description": "Normalized URL of the target to be revoked.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "DastSiteValidationRevokePayload", + "description": "Autogenerated return type of DastSiteValidationRevoke", + "fields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "errors", + "description": "Errors encountered during execution of the mutation.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { "kind": "ENUM", "name": "DastSiteValidationStrategyEnum", "description": null, @@ -17248,7 +18118,7 @@ "fields": [ { "name": "completed", - "description": "Whether or not the entire queue was processed in time; if not, retrying the same request is safe", + "description": "Whether or not the entire queue was processed in time; if not, retrying the same request is safe.", "args": [ ], @@ -17262,7 +18132,7 @@ }, { "name": "deletedJobs", - "description": "The number of matching jobs deleted", + "description": "The number of matching jobs deleted.", "args": [ ], @@ -17276,7 +18146,7 @@ }, { "name": "queueSize", - "description": "The queue size after processing", + "description": "The queue size after processing.", "args": [ ], @@ -17303,7 +18173,7 @@ "fields": [ { "name": "currentUserTodos", - "description": "Todos for the current user", + "description": "To-do items for the current user.", "args": [ { "name": "after", @@ -17347,7 +18217,7 @@ }, { "name": "state", - "description": "State of the todos", + "description": "State of the to-do items.", "type": { "kind": "ENUM", "name": "TodoStateEnum", @@ -17370,7 +18240,7 @@ }, { "name": "diffRefs", - "description": "The diff refs for this design", + "description": "The diff refs for this design.", "args": [ ], @@ -17445,7 +18315,7 @@ }, { "name": "event", - "description": "How this design was changed in the current version", + "description": "How this design was changed in the current version.", "args": [ ], @@ -17463,7 +18333,7 @@ }, { "name": "filename", - "description": "The filename of the design", + "description": "The filename of the design.", "args": [ ], @@ -17481,7 +18351,7 @@ }, { "name": "fullPath", - "description": "The full path to the design file", + "description": "The full path to the design file.", "args": [ ], @@ -17499,7 +18369,7 @@ }, { "name": "id", - "description": "The ID of this design", + "description": "The ID of this design.", "args": [ ], @@ -17517,7 +18387,7 @@ }, { "name": "image", - "description": "The URL of the full-sized image", + "description": "The URL of the full-sized image.", "args": [ ], @@ -17549,7 +18419,7 @@ }, { "name": "issue", - "description": "The issue the design belongs to", + "description": "The issue the design belongs to.", "args": [ ], @@ -17624,7 +18494,7 @@ }, { "name": "notesCount", - "description": "The total count of user-created notes for this design", + "description": "The total count of user-created notes for this design.", "args": [ ], @@ -17642,7 +18512,7 @@ }, { "name": "project", - "description": "The project the design belongs to", + "description": "The project the design belongs to.", "args": [ ], @@ -17660,7 +18530,7 @@ }, { "name": "versions", - "description": "All versions related to this design ordered newest first", + "description": "All versions related to this design ordered newest first.", "args": [ { "name": "earlierOrEqualToSha", @@ -17764,7 +18634,7 @@ "fields": [ { "name": "design", - "description": "The underlying design", + "description": "The underlying design.", "args": [ ], @@ -17782,7 +18652,7 @@ }, { "name": "diffRefs", - "description": "The diff refs for this design", + "description": "The diff refs for this design.", "args": [ ], @@ -17800,7 +18670,7 @@ }, { "name": "event", - "description": "How this design was changed in the current version", + "description": "How this design was changed in the current version.", "args": [ ], @@ -17818,7 +18688,7 @@ }, { "name": "filename", - "description": "The filename of the design", + "description": "The filename of the design.", "args": [ ], @@ -17836,7 +18706,7 @@ }, { "name": "fullPath", - "description": "The full path to the design file", + "description": "The full path to the design file.", "args": [ ], @@ -17854,7 +18724,7 @@ }, { "name": "id", - "description": "The ID of this design", + "description": "The ID of this design.", "args": [ ], @@ -17872,7 +18742,7 @@ }, { "name": "image", - "description": "The URL of the full-sized image", + "description": "The URL of the full-sized image.", "args": [ ], @@ -17904,7 +18774,7 @@ }, { "name": "issue", - "description": "The issue the design belongs to", + "description": "The issue the design belongs to.", "args": [ ], @@ -17922,7 +18792,7 @@ }, { "name": "notesCount", - "description": "The total count of user-created notes for this design", + "description": "The total count of user-created notes for this design.", "args": [ ], @@ -17940,7 +18810,7 @@ }, { "name": "project", - "description": "The project the design belongs to", + "description": "The project the design belongs to.", "args": [ ], @@ -17958,7 +18828,7 @@ }, { "name": "version", - "description": "The version this design-at-versions is pinned to", + "description": "The version this design-at-versions is pinned to.", "args": [ ], @@ -18105,7 +18975,7 @@ "fields": [ { "name": "copyState", - "description": "Copy state of the design collection", + "description": "Copy state of the design collection.", "args": [ ], @@ -18119,7 +18989,7 @@ }, { "name": "design", - "description": "Find a specific design", + "description": "Find a specific design.", "args": [ { "name": "id", @@ -18152,7 +19022,7 @@ }, { "name": "designAtVersion", - "description": "Find a design as of a version", + "description": "Find a design as of a version.", "args": [ { "name": "id", @@ -18179,7 +19049,7 @@ }, { "name": "designs", - "description": "All designs for the design collection", + "description": "All designs for the design collection.", "args": [ { "name": "ids", @@ -18282,7 +19152,7 @@ }, { "name": "issue", - "description": "Issue associated with the design collection", + "description": "Issue associated with the design collection.", "args": [ ], @@ -18300,7 +19170,7 @@ }, { "name": "project", - "description": "Project associated with the design collection", + "description": "Project associated with the design collection.", "args": [ ], @@ -18318,7 +19188,7 @@ }, { "name": "version", - "description": "A specific version", + "description": "A specific version.", "args": [ { "name": "sha", @@ -18351,7 +19221,7 @@ }, { "name": "versions", - "description": "All versions related to all designs, ordered newest first", + "description": "All versions related to all designs, ordered newest first.", "args": [ { "name": "earlierOrEqualToSha", @@ -18582,7 +19452,7 @@ "fields": [ { "name": "diffRefs", - "description": "The diff refs for this design", + "description": "The diff refs for this design.", "args": [ ], @@ -18600,7 +19470,7 @@ }, { "name": "event", - "description": "How this design was changed in the current version", + "description": "How this design was changed in the current version.", "args": [ ], @@ -18618,7 +19488,7 @@ }, { "name": "filename", - "description": "The filename of the design", + "description": "The filename of the design.", "args": [ ], @@ -18636,7 +19506,7 @@ }, { "name": "fullPath", - "description": "The full path to the design file", + "description": "The full path to the design file.", "args": [ ], @@ -18654,7 +19524,7 @@ }, { "name": "id", - "description": "The ID of this design", + "description": "The ID of this design.", "args": [ ], @@ -18672,7 +19542,7 @@ }, { "name": "image", - "description": "The URL of the full-sized image", + "description": "The URL of the full-sized image.", "args": [ ], @@ -18704,7 +19574,7 @@ }, { "name": "issue", - "description": "The issue the design belongs to", + "description": "The issue the design belongs to.", "args": [ ], @@ -18722,7 +19592,7 @@ }, { "name": "notesCount", - "description": "The total count of user-created notes for this design", + "description": "The total count of user-created notes for this design.", "args": [ ], @@ -18740,7 +19610,7 @@ }, { "name": "project", - "description": "The project the design belongs to", + "description": "The project the design belongs to.", "args": [ ], @@ -18780,7 +19650,7 @@ "fields": [ { "name": "designAtVersion", - "description": "Find a design as of a version", + "description": "Find a design as of a version.", "args": [ { "name": "id", @@ -18807,7 +19677,7 @@ }, { "name": "version", - "description": "Find a version", + "description": "Find a version.", "args": [ { "name": "id", @@ -18981,7 +19851,7 @@ { "kind": "SCALAR", "name": "DesignManagementDesignAtVersionID", - "description": "Identifier of DesignManagement::DesignAtVersion", + "description": "Identifier of DesignManagement::DesignAtVersion.", "fields": null, "inputFields": null, "interfaces": null, @@ -18991,7 +19861,7 @@ { "kind": "SCALAR", "name": "DesignManagementDesignID", - "description": "Identifier of DesignManagement::Design", + "description": "Identifier of DesignManagement::Design.", "fields": null, "inputFields": null, "interfaces": null, @@ -19299,7 +20169,7 @@ { "kind": "SCALAR", "name": "DesignManagementVersionID", - "description": "Identifier of DesignManagement::Version", + "description": "Identifier of DesignManagement::Version.", "fields": null, "inputFields": null, "interfaces": null, @@ -19313,7 +20183,7 @@ "fields": [ { "name": "designAtVersion", - "description": "A particular design as of this version, provided it is visible at this version", + "description": "A particular design as of this version, provided it is visible at this version.", "args": [ { "name": "id", @@ -19360,7 +20230,7 @@ }, { "name": "designs", - "description": "All designs that were changed in the version", + "description": "All designs that were changed in the version.", "args": [ { "name": "after", @@ -19417,7 +20287,7 @@ }, { "name": "designsAtVersion", - "description": "All designs that are visible at this version, as of this version", + "description": "All designs that are visible at this version, as of this version.", "args": [ { "name": "ids", @@ -19510,7 +20380,7 @@ }, { "name": "id", - "description": "ID of the design version", + "description": "ID of the design version.", "args": [ ], @@ -19528,7 +20398,7 @@ }, { "name": "sha", - "description": "SHA of the design version", + "description": "SHA of the design version.", "args": [ ], @@ -20444,7 +21314,7 @@ "fields": [ { "name": "action", - "description": "Action information for the status. This includes method, button title, icon, path, and title", + "description": "Action information for the status. This includes method, button title, icon, path, and title.", "args": [ ], @@ -20458,7 +21328,7 @@ }, { "name": "detailsPath", - "description": "Path of the details for the status", + "description": "Path of the details for the status.", "args": [ ], @@ -20472,7 +21342,7 @@ }, { "name": "favicon", - "description": "Favicon of the status", + "description": "Favicon of the status.", "args": [ ], @@ -20486,7 +21356,7 @@ }, { "name": "group", - "description": "Group of the status", + "description": "Group of the status.", "args": [ ], @@ -20500,7 +21370,7 @@ }, { "name": "hasDetails", - "description": "Indicates if the status has further details", + "description": "Indicates if the status has further details.", "args": [ ], @@ -20514,7 +21384,7 @@ }, { "name": "icon", - "description": "Icon of the status", + "description": "Icon of the status.", "args": [ ], @@ -20528,7 +21398,7 @@ }, { "name": "label", - "description": "Label of the status", + "description": "Label of the status.", "args": [ ], @@ -20542,7 +21412,7 @@ }, { "name": "text", - "description": "Text of the status", + "description": "Text of the status.", "args": [ ], @@ -20556,7 +21426,7 @@ }, { "name": "tooltip", - "description": "Tooltip associated with the status", + "description": "Tooltip associated with the status.", "args": [ ], @@ -20974,7 +21844,7 @@ "inputFields": [ { "name": "headSha", - "description": "SHA of the HEAD at the time the comment was made", + "description": "SHA of the HEAD at the time the comment was made.", "type": { "kind": "NON_NULL", "name": null, @@ -20988,7 +21858,7 @@ }, { "name": "baseSha", - "description": "Merge base of the branch the comment was made on", + "description": "Merge base of the branch the comment was made on.", "type": { "kind": "SCALAR", "name": "String", @@ -20998,7 +21868,7 @@ }, { "name": "startSha", - "description": "SHA of the branch being compared against", + "description": "SHA of the branch being compared against.", "type": { "kind": "NON_NULL", "name": null, @@ -21088,7 +21958,7 @@ { "kind": "SCALAR", "name": "DiffNoteID", - "description": "Identifier of DiffNote", + "description": "Identifier of DiffNote.", "fields": null, "inputFields": null, "interfaces": null, @@ -21103,7 +21973,7 @@ "inputFields": [ { "name": "oldPath", - "description": "The path of the file on the start sha", + "description": "The path of the file on the start sha.", "type": { "kind": "SCALAR", "name": "String", @@ -21113,7 +21983,7 @@ }, { "name": "newPath", - "description": "The path of the file on the head sha", + "description": "The path of the file on the head sha.", "type": { "kind": "SCALAR", "name": "String", @@ -21313,7 +22183,7 @@ "inputFields": [ { "name": "headSha", - "description": "SHA of the HEAD at the time the comment was made", + "description": "SHA of the HEAD at the time the comment was made.", "type": { "kind": "NON_NULL", "name": null, @@ -21327,7 +22197,7 @@ }, { "name": "baseSha", - "description": "Merge base of the branch the comment was made on", + "description": "Merge base of the branch the comment was made on.", "type": { "kind": "SCALAR", "name": "String", @@ -21337,7 +22207,7 @@ }, { "name": "startSha", - "description": "SHA of the branch being compared against", + "description": "SHA of the branch being compared against.", "type": { "kind": "NON_NULL", "name": null, @@ -21422,7 +22292,7 @@ "fields": [ { "name": "baseSha", - "description": "Merge base of the branch the comment was made on", + "description": "Merge base of the branch the comment was made on.", "args": [ ], @@ -21436,7 +22306,7 @@ }, { "name": "headSha", - "description": "SHA of the HEAD at the time the comment was made", + "description": "SHA of the HEAD at the time the comment was made.", "args": [ ], @@ -21454,7 +22324,7 @@ }, { "name": "startSha", - "description": "SHA of the branch being compared against", + "description": "SHA of the branch being compared against.", "args": [ ], @@ -21485,7 +22355,7 @@ "fields": [ { "name": "additions", - "description": "Number of lines added to this file", + "description": "Number of lines added to this file.", "args": [ ], @@ -21503,7 +22373,7 @@ }, { "name": "deletions", - "description": "Number of lines deleted from this file", + "description": "Number of lines deleted from this file.", "args": [ ], @@ -21521,7 +22391,7 @@ }, { "name": "path", - "description": "File path, relative to repository root", + "description": "File path, relative to repository root.", "args": [ ], @@ -21552,7 +22422,7 @@ "fields": [ { "name": "additions", - "description": "Number of lines added", + "description": "Number of lines added.", "args": [ ], @@ -21570,7 +22440,7 @@ }, { "name": "changes", - "description": "Number of lines changed", + "description": "Number of lines changed.", "args": [ ], @@ -21588,7 +22458,7 @@ }, { "name": "deletions", - "description": "Number of lines deleted", + "description": "Number of lines deleted.", "args": [ ], @@ -21606,7 +22476,7 @@ }, { "name": "fileCount", - "description": "Number of files changed", + "description": "Number of files changed.", "args": [ ], @@ -21664,7 +22534,7 @@ "name": null, "ofType": { "kind": "SCALAR", - "name": "ID", + "name": "DiscussionID", "ofType": null } }, @@ -21739,7 +22609,7 @@ "name": null, "ofType": { "kind": "SCALAR", - "name": "ID", + "name": "DiscussionID", "ofType": null } }, @@ -21937,7 +22807,7 @@ { "kind": "SCALAR", "name": "DiscussionID", - "description": "Identifier of Discussion", + "description": "Identifier of Discussion.", "fields": null, "inputFields": null, "interfaces": null, @@ -22261,7 +23131,7 @@ }, { "name": "sha", - "description": "Last commit sha for the entry", + "description": "Last commit SHA for the entry", "args": [ ], @@ -22353,7 +23223,7 @@ "fields": [ { "name": "id", - "description": "ID of the environment", + "description": "ID of the environment.", "args": [ ], @@ -22371,7 +23241,7 @@ }, { "name": "latestOpenedMostSevereAlert", - "description": "The most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned", + "description": "The most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned.", "args": [ ], @@ -22385,7 +23255,7 @@ }, { "name": "metricsDashboard", - "description": "Metrics dashboard schema for the environment", + "description": "Metrics dashboard schema for the environment.", "args": [ { "name": "path", @@ -22412,7 +23282,7 @@ }, { "name": "name", - "description": "Human-readable name of the environment", + "description": "Human-readable name of the environment.", "args": [ ], @@ -22448,7 +23318,7 @@ }, { "name": "state", - "description": "State of the environment, for example: available/stopped", + "description": "State of the environment, for example: available/stopped.", "args": [ ], @@ -22587,7 +23457,7 @@ { "kind": "SCALAR", "name": "EnvironmentID", - "description": "Identifier of Environment", + "description": "Identifier of Environment.", "fields": null, "inputFields": null, "interfaces": null, @@ -22703,7 +23573,7 @@ "fields": [ { "name": "author", - "description": "Author of the epic", + "description": "Author of the epic.", "args": [ ], @@ -22720,8 +23590,61 @@ "deprecationReason": null }, { + "name": "awardEmoji", + "description": "A list of award emojis associated with the epic.", + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "AwardEmojiConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "children", - "description": "Children (sub-epics) of the epic", + "description": "Children (sub-epics) of the epic.", "args": [ { "name": "startDate", @@ -22930,7 +23853,7 @@ }, { "name": "closedAt", - "description": "Timestamp of when the epic was closed", + "description": "Timestamp of when the epic was closed.", "args": [ ], @@ -22944,7 +23867,7 @@ }, { "name": "confidential", - "description": "Indicates if the epic is confidential", + "description": "Indicates if the epic is confidential.", "args": [ ], @@ -22958,7 +23881,7 @@ }, { "name": "createdAt", - "description": "Timestamp of when the epic was created", + "description": "Timestamp of when the epic was created.", "args": [ ], @@ -22972,7 +23895,7 @@ }, { "name": "currentUserTodos", - "description": "Todos for the current user", + "description": "To-do items for the current user.", "args": [ { "name": "after", @@ -23016,7 +23939,7 @@ }, { "name": "state", - "description": "State of the todos", + "description": "State of the to-do items.", "type": { "kind": "ENUM", "name": "TodoStateEnum", @@ -23039,7 +23962,7 @@ }, { "name": "descendantCounts", - "description": "Number of open and closed descendant epics and issues", + "description": "Number of open and closed descendant epics and issues.", "args": [ ], @@ -23053,7 +23976,7 @@ }, { "name": "descendantWeightSum", - "description": "Total weight of open and closed issues in the epic and its descendants", + "description": "Total weight of open and closed issues in the epic and its descendants.", "args": [ ], @@ -23067,7 +23990,7 @@ }, { "name": "description", - "description": "Description of the epic", + "description": "Description of the epic.", "args": [ ], @@ -23138,7 +24061,7 @@ }, { "name": "downvotes", - "description": "Number of downvotes the epic has received", + "description": "Number of downvotes the epic has received.", "args": [ ], @@ -23156,7 +24079,7 @@ }, { "name": "dueDate", - "description": "Due date of the epic", + "description": "Due date of the epic.", "args": [ ], @@ -23170,7 +24093,7 @@ }, { "name": "dueDateFixed", - "description": "Fixed due date of the epic", + "description": "Fixed due date of the epic.", "args": [ ], @@ -23184,7 +24107,7 @@ }, { "name": "dueDateFromMilestones", - "description": "Inherited due date of the epic from milestones", + "description": "Inherited due date of the epic from milestones.", "args": [ ], @@ -23198,7 +24121,7 @@ }, { "name": "dueDateIsFixed", - "description": "Indicates if the due date has been manually set", + "description": "Indicates if the due date has been manually set.", "args": [ ], @@ -23212,7 +24135,7 @@ }, { "name": "group", - "description": "Group to which the epic belongs", + "description": "Group to which the epic belongs.", "args": [ ], @@ -23230,7 +24153,7 @@ }, { "name": "hasChildren", - "description": "Indicates if the epic has children", + "description": "Indicates if the epic has children.", "args": [ ], @@ -23248,7 +24171,7 @@ }, { "name": "hasIssues", - "description": "Indicates if the epic has direct issues", + "description": "Indicates if the epic has direct issues.", "args": [ ], @@ -23266,7 +24189,7 @@ }, { "name": "hasParent", - "description": "Indicates if the epic has a parent epic", + "description": "Indicates if the epic has a parent epic.", "args": [ ], @@ -23284,7 +24207,7 @@ }, { "name": "healthStatus", - "description": "Current health status of the epic", + "description": "Current health status of the epic.", "args": [ ], @@ -23298,7 +24221,7 @@ }, { "name": "id", - "description": "ID of the epic", + "description": "ID of the epic.", "args": [ ], @@ -23316,7 +24239,7 @@ }, { "name": "iid", - "description": "Internal ID of the epic", + "description": "Internal ID of the epic.", "args": [ ], @@ -23334,7 +24257,7 @@ }, { "name": "issues", - "description": "A list of issues associated with the epic", + "description": "A list of issues associated with the epic.", "args": [ { "name": "after", @@ -23387,7 +24310,7 @@ }, { "name": "labels", - "description": "Labels assigned to the epic", + "description": "Labels assigned to the epic.", "args": [ { "name": "after", @@ -23497,7 +24420,7 @@ }, { "name": "parent", - "description": "Parent epic of the epic", + "description": "Parent epic of the epic.", "args": [ ], @@ -23511,7 +24434,7 @@ }, { "name": "participants", - "description": "List of participants for the epic", + "description": "List of participants for the epic.", "args": [ { "name": "after", @@ -23564,11 +24487,11 @@ }, { "name": "reference", - "description": "Internal reference of the epic. Returned in shortened format by default", + "description": "Internal reference of the epic. Returned in shortened format by default.", "args": [ { "name": "full", - "description": "Indicates if the reference should be returned in full", + "description": "Indicates if the reference should be returned in full.", "type": { "kind": "SCALAR", "name": "Boolean", @@ -23591,7 +24514,7 @@ }, { "name": "relationPath", - "description": "URI path of the epic-issue relationship", + "description": "URI path of the epic-issue relationship.", "args": [ ], @@ -23605,7 +24528,7 @@ }, { "name": "relativePosition", - "description": "The relative position of the epic in the epic tree", + "description": "The relative position of the epic in the epic tree.", "args": [ ], @@ -23619,7 +24542,7 @@ }, { "name": "startDate", - "description": "Start date of the epic", + "description": "Start date of the epic.", "args": [ ], @@ -23633,7 +24556,7 @@ }, { "name": "startDateFixed", - "description": "Fixed start date of the epic", + "description": "Fixed start date of the epic.", "args": [ ], @@ -23647,7 +24570,7 @@ }, { "name": "startDateFromMilestones", - "description": "Inherited start date of the epic from milestones", + "description": "Inherited start date of the epic from milestones.", "args": [ ], @@ -23661,7 +24584,7 @@ }, { "name": "startDateIsFixed", - "description": "Indicates if the start date has been manually set", + "description": "Indicates if the start date has been manually set.", "args": [ ], @@ -23675,7 +24598,7 @@ }, { "name": "state", - "description": "State of the epic", + "description": "State of the epic.", "args": [ ], @@ -23693,7 +24616,7 @@ }, { "name": "subscribed", - "description": "Indicates the currently logged in user is subscribed to the epic", + "description": "Indicates the currently logged in user is subscribed to the epic.", "args": [ ], @@ -23711,7 +24634,7 @@ }, { "name": "title", - "description": "Title of the epic", + "description": "Title of the epic.", "args": [ ], @@ -23725,7 +24648,7 @@ }, { "name": "updatedAt", - "description": "Timestamp of when the epic was updated", + "description": "Timestamp of when the epic was updated.", "args": [ ], @@ -23739,7 +24662,7 @@ }, { "name": "upvotes", - "description": "Number of upvotes the epic has received", + "description": "Number of upvotes the epic has received.", "args": [ ], @@ -23757,7 +24680,7 @@ }, { "name": "userDiscussionsCount", - "description": "Number of user discussions in the epic", + "description": "Number of user discussions in the epic.", "args": [ ], @@ -23775,7 +24698,7 @@ }, { "name": "userNotesCount", - "description": "Number of user notes of the epic", + "description": "Number of user notes of the epic.", "args": [ ], @@ -23811,7 +24734,7 @@ }, { "name": "webPath", - "description": "Web path of the epic", + "description": "Web path of the epic.", "args": [ ], @@ -23829,7 +24752,7 @@ }, { "name": "webUrl", - "description": "Web URL of the epic", + "description": "Web URL of the epic.", "args": [ ], @@ -24196,6 +25119,134 @@ "possibleTypes": null }, { + "kind": "INPUT_OBJECT", + "name": "EpicBoardCreateInput", + "description": "Autogenerated input type of EpicBoardCreate", + "fields": null, + "inputFields": [ + { + "name": "name", + "description": "The board name.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "hideBacklogList", + "description": "Whether or not backlog list is hidden.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "hideClosedList", + "description": "Whether or not closed list is hidden.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "groupPath", + "description": "Full path of the group with which the resource is associated.", + "type": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "EpicBoardCreatePayload", + "description": "Autogenerated return type of EpicBoardCreate", + "fields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "epicBoard", + "description": "The created epic board.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "EpicBoard", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "errors", + "description": "Errors encountered during execution of the mutation.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { "kind": "OBJECT", "name": "EpicBoardEdge", "description": "An edge in a connection.", @@ -24520,7 +25571,7 @@ { "kind": "SCALAR", "name": "EpicID", - "description": "Identifier of Epic", + "description": "Identifier of Epic.", "fields": null, "inputFields": null, "interfaces": null, @@ -24715,7 +25766,7 @@ }, { "name": "currentUserTodos", - "description": "Todos for the current user", + "description": "To-do items for the current user.", "args": [ { "name": "after", @@ -24759,7 +25810,7 @@ }, { "name": "state", - "description": "State of the todos", + "description": "State of the to-do items.", "type": { "kind": "ENUM", "name": "TodoStateEnum", @@ -25705,7 +26756,7 @@ "fields": [ { "name": "count", - "description": "Total count of collection", + "description": "Total count of collection.", "args": [ ], @@ -26640,7 +27691,7 @@ { "kind": "SCALAR", "name": "EpicTreeSortingID", - "description": "Identifier of EpicTreeSorting", + "description": "Identifier of EpicTreeSorting.", "fields": null, "inputFields": null, "interfaces": null, @@ -26739,6 +27790,24 @@ "defaultValue": null }, { + "name": "selectedFields", + "description": "List of selected requirements fields to be exported.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null + }, + { "name": "clientMutationId", "description": "A unique identifier for the client performing the mutation.", "type": { @@ -27488,7 +28557,7 @@ { "kind": "SCALAR", "name": "GitlabErrorTrackingDetailedErrorID", - "description": "Identifier of Gitlab::ErrorTracking::DetailedError", + "description": "Identifier of Gitlab::ErrorTracking::DetailedError.", "fields": null, "inputFields": null, "interfaces": null, @@ -27496,13 +28565,101 @@ "possibleTypes": null }, { + "kind": "INPUT_OBJECT", + "name": "GitlabSubscriptionActivateInput", + "description": "Autogenerated input type of GitlabSubscriptionActivate", + "fields": null, + "inputFields": [ + { + "name": "activationCode", + "description": "Activation code received after purchasing a GitLab subscription.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "GitlabSubscriptionActivatePayload", + "description": "Autogenerated return type of GitlabSubscriptionActivate", + "fields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "errors", + "description": "Errors encountered during execution of the mutation.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { "kind": "OBJECT", "name": "GrafanaIntegration", "description": null, "fields": [ { "name": "createdAt", - "description": "Timestamp of the issue's creation", + "description": "Timestamp of the issue's creation.", "args": [ ], @@ -27520,7 +28677,7 @@ }, { "name": "enabled", - "description": "Indicates whether Grafana integration is enabled", + "description": "Indicates whether Grafana integration is enabled.", "args": [ ], @@ -27538,7 +28695,7 @@ }, { "name": "grafanaUrl", - "description": "URL for the Grafana host for the Grafana integration", + "description": "URL for the Grafana host for the Grafana integration.", "args": [ ], @@ -27556,7 +28713,7 @@ }, { "name": "id", - "description": "Internal ID of the Grafana integration", + "description": "Internal ID of the Grafana integration.", "args": [ ], @@ -27574,7 +28731,7 @@ }, { "name": "updatedAt", - "description": "Timestamp of the issue's last activity", + "description": "Timestamp of the issue's last activity.", "args": [ ], @@ -27633,7 +28790,7 @@ }, { "name": "autoDevopsEnabled", - "description": "Indicates whether Auto DevOps is enabled for all projects within this group", + "description": "Indicates whether Auto DevOps is enabled for all projects within this group.", "args": [ ], @@ -27647,7 +28804,7 @@ }, { "name": "avatarUrl", - "description": "Avatar URL of the group", + "description": "Avatar URL of the group.", "args": [ ], @@ -27661,7 +28818,7 @@ }, { "name": "board", - "description": "A single board of the group", + "description": "A single board of the group.", "args": [ { "name": "id", @@ -27688,7 +28845,7 @@ }, { "name": "boards", - "description": "Boards of the group", + "description": "Boards of the group.", "args": [ { "name": "id", @@ -27881,7 +29038,7 @@ }, { "name": "containerRepositories", - "description": "Container repositories of the group", + "description": "Container repositories of the group.", "args": [ { "name": "name", @@ -27944,7 +29101,7 @@ }, { "name": "containerRepositoriesCount", - "description": "Number of container repositories in the group", + "description": "Number of container repositories in the group.", "args": [ ], @@ -27980,7 +29137,7 @@ }, { "name": "customEmoji", - "description": "Custom emoji within this namespace Available only when feature flag `custom_emoji` is enabled.", + "description": "Custom emoji within this namespace. Available only when feature flag `custom_emoji` is enabled.", "args": [ { "name": "after", @@ -28061,7 +29218,7 @@ }, { "name": "emailsDisabled", - "description": "Indicates if a group has email notifications disabled", + "description": "Indicates if a group has email notifications disabled.", "args": [ ], @@ -28583,7 +29740,7 @@ }, { "name": "groupMembers", - "description": "A membership of a user within this group", + "description": "A membership of a user within this group.", "args": [ { "name": "search", @@ -28714,7 +29871,7 @@ }, { "name": "issues", - "description": "Issues for projects in this group", + "description": "Issues for projects in this group.", "args": [ { "name": "iid", @@ -29146,11 +30303,11 @@ }, { "name": "label", - "description": "A label available on this group", + "description": "A label available on this group.", "args": [ { "name": "title", - "description": "Title of the label", + "description": "Title of the label.", "type": { "kind": "NON_NULL", "name": null, @@ -29173,7 +30330,7 @@ }, { "name": "labels", - "description": "Labels available on this group", + "description": "Labels available on this group.", "args": [ { "name": "after", @@ -29217,7 +30374,7 @@ }, { "name": "searchTerm", - "description": "A search term to find labels with", + "description": "A search term to find labels with.", "type": { "kind": "SCALAR", "name": "String", @@ -29250,7 +30407,7 @@ }, { "name": "mentionsDisabled", - "description": "Indicates if a group is disabled from getting mentioned", + "description": "Indicates if a group is disabled from getting mentioned.", "args": [ ], @@ -29264,7 +30421,7 @@ }, { "name": "mergeRequests", - "description": "Merge requests for projects in this group", + "description": "Merge requests for projects in this group.", "args": [ { "name": "iids", @@ -29469,7 +30626,7 @@ }, { "name": "milestones", - "description": "Milestones of the group", + "description": "Milestones of the group.", "args": [ { "name": "startDate", @@ -29652,7 +30809,7 @@ }, { "name": "parent", - "description": "Parent group", + "description": "Parent group.", "args": [ ], @@ -29684,7 +30841,7 @@ }, { "name": "projectCreationLevel", - "description": "The permission level required to create projects in the group", + "description": "The permission level required to create projects in the group.", "args": [ ], @@ -29827,7 +30984,7 @@ }, { "name": "requireTwoFactorAuthentication", - "description": "Indicates if all users in this group are required to set up two-factor authentication", + "description": "Indicates if all users in this group are required to set up two-factor authentication.", "args": [ ], @@ -29855,7 +31012,7 @@ }, { "name": "shareWithGroupLock", - "description": "Indicates if sharing a project with another group within this group is prevented", + "description": "Indicates if sharing a project with another group within this group is prevented.", "args": [ ], @@ -29897,7 +31054,7 @@ }, { "name": "subgroupCreationLevel", - "description": "The permission level required to create subgroups within the group", + "description": "The permission level required to create subgroups within the group.", "args": [ ], @@ -30050,7 +31207,7 @@ }, { "name": "twoFactorGracePeriod", - "description": "Time before two-factor authentication is enforced", + "description": "Time before two-factor authentication is enforced.", "args": [ ], @@ -30466,7 +31623,7 @@ }, { "name": "vulnerabilityScanners", - "description": "Vulnerability scanners reported on the project vulnerabilties of the group and its subgroups", + "description": "Vulnerability scanners reported on the project vulnerabilities of the group and its subgroups", "args": [ { "name": "after", @@ -30622,7 +31779,7 @@ }, { "name": "webUrl", - "description": "Web URL of the group", + "description": "Web URL of the group.", "args": [ ], @@ -30649,7 +31806,7 @@ { "kind": "SCALAR", "name": "GroupID", - "description": "Identifier of Group", + "description": "Identifier of Group.", "fields": null, "inputFields": null, "interfaces": null, @@ -30719,7 +31876,7 @@ }, { "name": "group", - "description": "Group that a User is a member of", + "description": "Group that a User is a member of.", "args": [ ], @@ -31483,6 +32640,34 @@ "defaultValue": null }, { + "name": "payloadExample", + "description": "The example of an alert payload.", + "type": { + "kind": "SCALAR", + "name": "JsonString", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "payloadAttributeMappings", + "description": "The custom mapping of GitLab alert attributes to fields from the payload_example.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "AlertManagementPayloadAlertFieldInput", + "ofType": null + } + } + }, + "defaultValue": null + }, + { "name": "clientMutationId", "description": "A unique identifier for the client performing the mutation.", "type": { @@ -31587,7 +32772,7 @@ { "kind": "SCALAR", "name": "IncidentManagementOncallParticipantID", - "description": "Identifier of IncidentManagement::OncallParticipant", + "description": "Identifier of IncidentManagement::OncallParticipant.", "fields": null, "inputFields": null, "interfaces": null, @@ -31717,6 +32902,87 @@ "deprecationReason": null }, { + "name": "shifts", + "description": "Blocks of time for which a participant is on-call within a given time frame. Time frame cannot exceed one month.", + "args": [ + { + "name": "startTime", + "description": "Start of timeframe to include shifts for.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Time", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "endTime", + "description": "End of timeframe to include shifts for. Cannot exceed one month after start.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Time", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "IncidentManagementOncallShiftConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "startsAt", "description": "Start date of the on-call rotation.", "args": [ @@ -31853,7 +33119,7 @@ { "kind": "SCALAR", "name": "IncidentManagementOncallRotationID", - "description": "Identifier of IncidentManagement::OncallRotation", + "description": "Identifier of IncidentManagement::OncallRotation.", "fields": null, "inputFields": null, "interfaces": null, @@ -32112,6 +33378,173 @@ }, { "kind": "OBJECT", + "name": "IncidentManagementOncallShift", + "description": "A block of time for which a participant is on-call.", + "fields": [ + { + "name": "endsAt", + "description": "End time of the on-call shift.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Time", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "participant", + "description": "Participant assigned to the on-call shift.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "OncallParticipantType", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "startsAt", + "description": "Start time of the on-call shift.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Time", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "IncidentManagementOncallShiftConnection", + "description": "The connection type for IncidentManagementOncallShift.", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "IncidentManagementOncallShiftEdge", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "nodes", + "description": "A list of nodes.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "IncidentManagementOncallShift", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "IncidentManagementOncallShiftEdge", + "description": "An edge in a connection.", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "node", + "description": "The item at the end of the edge.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "IncidentManagementOncallShift", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", "name": "InstanceSecurityDashboard", "description": null, "fields": [ @@ -32200,7 +33633,7 @@ }, { "name": "vulnerabilityScanners", - "description": "Vulnerability scanners reported on the vulnerabilties from projects selected in Instance Security Dashboard", + "description": "Vulnerability scanners reported on the vulnerabilities from projects selected in Instance Security Dashboard", "args": [ { "name": "after", @@ -32369,7 +33802,7 @@ "fields": [ { "name": "count", - "description": "Object count", + "description": "Object count.", "args": [ ], @@ -32387,7 +33820,7 @@ }, { "name": "identifier", - "description": "The type of objects being measured", + "description": "The type of objects being measured.", "args": [ ], @@ -32405,7 +33838,7 @@ }, { "name": "recordedAt", - "description": "The time the measurement was recorded", + "description": "The time the measurement was recorded.", "args": [ ], @@ -32811,7 +34244,7 @@ }, { "name": "currentUserTodos", - "description": "Todos for the current user", + "description": "To-do items for the current user.", "args": [ { "name": "after", @@ -32855,7 +34288,7 @@ }, { "name": "state", - "description": "State of the todos", + "description": "State of the to-do items.", "type": { "kind": "ENUM", "name": "TodoStateEnum", @@ -33773,7 +35206,7 @@ "fields": [ { "name": "count", - "description": "Total count of collection", + "description": "Total count of collection.", "args": [ ], @@ -33917,7 +35350,7 @@ { "kind": "SCALAR", "name": "IssueID", - "description": "Identifier of Issue", + "description": "Identifier of Issue.", "fields": null, "inputFields": null, "interfaces": null, @@ -36248,7 +37681,7 @@ { "kind": "SCALAR", "name": "IterationID", - "description": "Identifier of Iteration", + "description": "Identifier of Iteration.", "fields": null, "inputFields": null, "interfaces": null, @@ -37564,7 +38997,7 @@ "fields": [ { "name": "count", - "description": "Total count of collection", + "description": "Total count of collection.", "args": [ ], @@ -37650,7 +39083,7 @@ "inputFields": [ { "name": "projectPath", - "description": "The project full path the resource is associated with.", + "description": "Full path of the project with which the resource is associated.", "type": { "kind": "SCALAR", "name": "ID", @@ -37660,7 +39093,7 @@ }, { "name": "groupPath", - "description": "The group full path the resource is associated with.", + "description": "Full path of the group with which the resource is associated.", "type": { "kind": "SCALAR", "name": "ID", @@ -37832,7 +39265,7 @@ { "kind": "SCALAR", "name": "LabelID", - "description": "Identifier of Label", + "description": "Identifier of Label.", "fields": null, "inputFields": null, "interfaces": null, @@ -37842,7 +39275,7 @@ { "kind": "SCALAR", "name": "ListID", - "description": "Identifier of List", + "description": "Identifier of List.", "fields": null, "inputFields": null, "interfaces": null, @@ -38635,7 +40068,7 @@ }, { "name": "currentUserTodos", - "description": "Todos for the current user", + "description": "To-do items for the current user.", "args": [ { "name": "after", @@ -38679,7 +40112,7 @@ }, { "name": "state", - "description": "State of the todos", + "description": "State of the to-do items.", "type": { "kind": "ENUM", "name": "TodoStateEnum", @@ -40084,7 +41517,7 @@ "fields": [ { "name": "count", - "description": "Total count of collection", + "description": "Total count of collection.", "args": [ ], @@ -40641,7 +42074,7 @@ { "kind": "SCALAR", "name": "MergeRequestID", - "description": "Identifier of MergeRequest", + "description": "Identifier of MergeRequest.", "fields": null, "inputFields": null, "interfaces": null, @@ -40825,6 +42258,136 @@ }, { "kind": "INPUT_OBJECT", + "name": "MergeRequestReviewerRereviewInput", + "description": "Autogenerated input type of MergeRequestReviewerRereview", + "fields": null, + "inputFields": [ + { + "name": "projectPath", + "description": "The project the merge request to mutate is in.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "iid", + "description": "The IID of the merge request to mutate.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "userId", + "description": "The user ID for the user that has been requested for a new review.\n", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "UserID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "MergeRequestReviewerRereviewPayload", + "description": "Autogenerated return type of MergeRequestReviewerRereview", + "fields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "errors", + "description": "Errors encountered during execution of the mutation.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "mergeRequest", + "description": "The merge request after mutation.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "MergeRequest", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", "name": "MergeRequestSetAssigneesInput", "description": "Autogenerated input type of MergeRequestSetAssignees", "fields": null, @@ -41776,7 +43339,7 @@ }, { "name": "merged", - "description": null, + "description": "Merge Request has been merged", "isDeprecated": false, "deprecationReason": null } @@ -42401,7 +43964,7 @@ { "kind": "SCALAR", "name": "MetricsDashboardAnnotationID", - "description": "Identifier of Metrics::Dashboard::Annotation", + "description": "Identifier of Metrics::Dashboard::Annotation.", "fields": null, "inputFields": null, "interfaces": null, @@ -42772,7 +44335,7 @@ { "kind": "SCALAR", "name": "MilestoneID", - "description": "Identifier of Milestone", + "description": "Identifier of Milestone.", "fields": null, "inputFields": null, "interfaces": null, @@ -42782,20 +44345,20 @@ { "kind": "ENUM", "name": "MilestoneStateEnum", - "description": null, + "description": "Current state of milestone", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { "name": "active", - "description": null, + "description": "Milestone is currently active", "isDeprecated": false, "deprecationReason": null }, { "name": "closed", - "description": null, + "description": "Milestone is closed", "isDeprecated": false, "deprecationReason": null } @@ -43790,6 +45353,33 @@ "deprecationReason": null }, { + "name": "dastProfileCreate", + "description": null, + "args": [ + { + "name": "input", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "DastProfileCreateInput", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "DastProfileCreatePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "dastScannerProfileCreate", "description": null, "args": [ @@ -44006,6 +45596,33 @@ "deprecationReason": null }, { + "name": "dastSiteValidationRevoke", + "description": null, + "args": [ + { + "name": "input", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "DastSiteValidationRevokeInput", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "DastSiteValidationRevokePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "deleteAnnotation", "description": null, "args": [ @@ -44438,6 +46055,33 @@ "deprecationReason": null }, { + "name": "epicBoardCreate", + "description": null, + "args": [ + { + "name": "input", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "EpicBoardCreateInput", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "EpicBoardCreatePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "epicSetSubscription", "description": null, "args": [ @@ -44519,6 +46163,33 @@ "deprecationReason": null }, { + "name": "gitlabSubscriptionActivate", + "description": null, + "args": [ + { + "name": "input", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "GitlabSubscriptionActivateInput", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "GitlabSubscriptionActivatePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "httpIntegrationCreate", "description": null, "args": [ @@ -45059,6 +46730,33 @@ "deprecationReason": null }, { + "name": "mergeRequestReviewerRereview", + "description": null, + "args": [ + { + "name": "input", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "MergeRequestReviewerRereviewInput", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "MergeRequestReviewerRereviewPayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "mergeRequestSetAssignees", "description": null, "args": [ @@ -45302,6 +47000,33 @@ "deprecationReason": null }, { + "name": "oncallRotationDestroy", + "description": null, + "args": [ + { + "name": "input", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "OncallRotationDestroyInput", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "OncallRotationDestroyPayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "oncallScheduleCreate", "description": null, "args": [ @@ -47248,7 +48973,7 @@ { "kind": "SCALAR", "name": "NamespaceID", - "description": "Identifier of Namespace", + "description": "Identifier of Namespace.", "fields": null, "inputFields": null, "interfaces": null, @@ -47388,7 +49113,7 @@ "inputFields": [ { "name": "labelName", - "description": "Filter by label name", + "description": "Filter by label name.", "type": { "kind": "LIST", "name": null, @@ -47402,7 +49127,7 @@ }, { "name": "milestoneTitle", - "description": "Filter by milestone title", + "description": "Filter by milestone title.", "type": { "kind": "SCALAR", "name": "String", @@ -47412,7 +49137,7 @@ }, { "name": "assigneeUsername", - "description": "Filter by assignee username", + "description": "Filter by assignee username.", "type": { "kind": "LIST", "name": null, @@ -47426,7 +49151,7 @@ }, { "name": "authorUsername", - "description": "Filter by author username", + "description": "Filter by author username.", "type": { "kind": "SCALAR", "name": "String", @@ -47436,7 +49161,7 @@ }, { "name": "releaseTag", - "description": "Filter by release tag", + "description": "Filter by release tag.", "type": { "kind": "SCALAR", "name": "String", @@ -47446,7 +49171,7 @@ }, { "name": "myReactionEmoji", - "description": "Filter by reaction emoji", + "description": "Filter by reaction emoji.", "type": { "kind": "SCALAR", "name": "String", @@ -47601,7 +49326,7 @@ "name": null, "ofType": { "kind": "SCALAR", - "name": "ID", + "name": "NoteID", "ofType": null } }, @@ -47909,7 +49634,7 @@ { "kind": "SCALAR", "name": "NoteID", - "description": "Identifier of Note", + "description": "Identifier of Note.", "fields": null, "inputFields": null, "interfaces": null, @@ -48211,7 +49936,7 @@ { "kind": "SCALAR", "name": "NoteableID", - "description": "Identifier of Noteable", + "description": "Identifier of Noteable.", "fields": null, "inputFields": null, "interfaces": null, @@ -48628,6 +50353,136 @@ }, { "kind": "INPUT_OBJECT", + "name": "OncallRotationDestroyInput", + "description": "Autogenerated input type of OncallRotationDestroy", + "fields": null, + "inputFields": [ + { + "name": "projectPath", + "description": "The project to remove the on-call schedule from.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "scheduleIid", + "description": "The IID of the on-call schedule to the on-call rotation belongs to.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "id", + "description": "The ID of the on-call rotation to remove.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "IncidentManagementOncallRotationID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OncallRotationDestroyPayload", + "description": "Autogenerated return type of OncallRotationDestroy", + "fields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "errors", + "description": "Errors encountered during execution of the mutation.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "oncallRotation", + "description": "The on-call rotation.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "IncidentManagementOncallRotation", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", "name": "OncallRotationLengthInputType", "description": "The rotation length of the on-call rotation", "fields": null, @@ -49148,7 +51003,7 @@ "fields": [ { "name": "createdAt", - "description": "The created date.", + "description": "Date of creation.", "args": [ ], @@ -49166,25 +51021,7 @@ }, { "name": "id", - "description": "The ID of the package.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The name of the package.", + "description": "ID of the package.", "args": [ ], @@ -49193,25 +51030,7 @@ "name": null, "ofType": { "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "packageType", - "description": "The type of the package.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "PackageTypeEnum", + "name": "PackagesPackageID", "ofType": null } }, @@ -49219,284 +51038,22 @@ "deprecationReason": null }, { - "name": "pipelines", - "description": "Pipelines that built the package.", - "args": [ - { - "name": "after", - "description": "Returns the elements in the list that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements in the list that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "first", - "description": "Returns the first _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns the last _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "PipelineConnection", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "project", - "description": "Project where the package is stored.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Project", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "tags", - "description": "The package tags.", - "args": [ - { - "name": "after", - "description": "Returns the elements in the list that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements in the list that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "first", - "description": "Returns the first _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns the last _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "PackageTagConnection", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The updated date.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Time", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "version", - "description": "The version of the package.", + "name": "metadata", + "description": "Package metadata.", "args": [ ], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "versions", - "description": "The other versions of the package.", - "args": [ - { - "name": "after", - "description": "Returns the elements in the list that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements in the list that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "first", - "description": "Returns the first _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns the last _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "PackageConnection", + "kind": "UNION", + "name": "PackageMetadata", "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PackageComposerDetails", - "description": "Details of a Composer package", - "fields": [ - { - "name": "composerMetadatum", - "description": "The Composer metadatum.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PackageComposerMetadatumType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "createdAt", - "description": "The created date.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Time", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The ID of the package.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null }, { "name": "name", - "description": "The name of the package.", + "description": "Name of the package.", "args": [ ], @@ -49514,7 +51071,7 @@ }, { "name": "packageType", - "description": "The type of the package.", + "description": "Package type.", "args": [ ], @@ -49603,7 +51160,7 @@ }, { "name": "tags", - "description": "The package tags.", + "description": "Package tags.", "args": [ { "name": "after", @@ -49656,7 +51213,7 @@ }, { "name": "updatedAt", - "description": "The updated date.", + "description": "Date of most recent update.", "args": [ ], @@ -49674,7 +51231,7 @@ }, { "name": "version", - "description": "The version of the package.", + "description": "Version string.", "args": [ ], @@ -49733,7 +51290,7 @@ ], "type": { "kind": "OBJECT", - "name": "PackageConnection", + "name": "PackageWithoutVersionsConnection", "ofType": null }, "isDeprecated": false, @@ -49818,55 +51375,6 @@ }, { "kind": "OBJECT", - "name": "PackageComposerMetadatumType", - "description": "Composer metadatum", - "fields": [ - { - "name": "composerJson", - "description": "Data of the Composer JSON file.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PackageComposerJsonType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetSha", - "description": "Target SHA of the package.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", "name": "PackageConnection", "description": "The connection type for Package.", "fields": [ @@ -50223,6 +51731,22 @@ "possibleTypes": null }, { + "kind": "UNION", + "name": "PackageMetadata", + "description": "Represents metadata associated with a Package", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "ComposerMetadata", + "ofType": null + } + ] + }, + { "kind": "OBJECT", "name": "PackageSettings", "description": "Namespace-level Package Registry settings", @@ -50530,9 +52054,376 @@ "possibleTypes": null }, { + "kind": "OBJECT", + "name": "PackageWithoutVersions", + "description": "Represents a version of a package in the Package Registry", + "fields": [ + { + "name": "createdAt", + "description": "Date of creation.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Time", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": "ID of the package.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "PackagesPackageID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "metadata", + "description": "Package metadata.", + "args": [ + + ], + "type": { + "kind": "UNION", + "name": "PackageMetadata", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the package.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "packageType", + "description": "Package type.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "PackageTypeEnum", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pipelines", + "description": "Pipelines that built the package.", + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "PipelineConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "project", + "description": "Project where the package is stored.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Project", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "tags", + "description": "Package tags.", + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "PackageTagConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "updatedAt", + "description": "Date of most recent update.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Time", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": "Version string.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "PackageWithoutVersionsConnection", + "description": "The connection type for PackageWithoutVersions.", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PackageWithoutVersionsEdge", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "nodes", + "description": "A list of nodes.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PackageWithoutVersions", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "PackageWithoutVersionsEdge", + "description": "An edge in a connection.", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "node", + "description": "The item at the end of the edge.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "PackageWithoutVersions", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { "kind": "SCALAR", "name": "PackagesPackageID", - "description": "Identifier of Packages::Package", + "description": "Identifier of Packages::Package.", "fields": null, "inputFields": null, "interfaces": null, @@ -50623,7 +52514,7 @@ "fields": [ { "name": "active", - "description": "Indicates if the pipeline is active", + "description": "Indicates if the pipeline is active.", "args": [ ], @@ -50641,7 +52532,7 @@ }, { "name": "beforeSha", - "description": "Base SHA of the source branch", + "description": "Base SHA of the source branch.", "args": [ ], @@ -50655,7 +52546,7 @@ }, { "name": "cancelable", - "description": "Specifies if a pipeline can be canceled", + "description": "Specifies if a pipeline can be canceled.", "args": [ ], @@ -50673,7 +52564,7 @@ }, { "name": "committedAt", - "description": "Timestamp of the pipeline's commit", + "description": "Timestamp of the pipeline's commit.", "args": [ ], @@ -50687,7 +52578,7 @@ }, { "name": "configSource", - "description": "Config source of the pipeline (UNKNOWN_SOURCE, REPOSITORY_SOURCE, AUTO_DEVOPS_SOURCE, WEBIDE_SOURCE, REMOTE_SOURCE, EXTERNAL_PROJECT_SOURCE, BRIDGE_SOURCE, PARAMETER_SOURCE)", + "description": "Configuration source of the pipeline (UNKNOWN_SOURCE, REPOSITORY_SOURCE, AUTO_DEVOPS_SOURCE, WEBIDE_SOURCE, REMOTE_SOURCE, EXTERNAL_PROJECT_SOURCE, BRIDGE_SOURCE, PARAMETER_SOURCE)", "args": [ ], @@ -50701,7 +52592,7 @@ }, { "name": "coverage", - "description": "Coverage percentage", + "description": "Coverage percentage.", "args": [ ], @@ -50715,7 +52606,7 @@ }, { "name": "createdAt", - "description": "Timestamp of the pipeline's creation", + "description": "Timestamp of the pipeline's creation.", "args": [ ], @@ -50733,7 +52624,7 @@ }, { "name": "detailedStatus", - "description": "Detailed status of the pipeline", + "description": "Detailed status of the pipeline.", "args": [ ], @@ -50751,7 +52642,7 @@ }, { "name": "downstream", - "description": "Pipelines this pipeline will trigger", + "description": "Pipelines this pipeline will trigger.", "args": [ { "name": "after", @@ -50804,7 +52695,7 @@ }, { "name": "duration", - "description": "Duration of the pipeline in seconds", + "description": "Duration of the pipeline in seconds.", "args": [ ], @@ -50818,7 +52709,7 @@ }, { "name": "finishedAt", - "description": "Timestamp of the pipeline's completion", + "description": "Timestamp of the pipeline's completion.", "args": [ ], @@ -50832,7 +52723,7 @@ }, { "name": "id", - "description": "ID of the pipeline", + "description": "ID of the pipeline.", "args": [ ], @@ -50850,7 +52741,7 @@ }, { "name": "iid", - "description": "Internal ID of the pipeline", + "description": "Internal ID of the pipeline.", "args": [ ], @@ -50868,7 +52759,7 @@ }, { "name": "jobs", - "description": "Jobs belonging to the pipeline", + "description": "Jobs belonging to the pipeline.", "args": [ { "name": "securityReportTypes", @@ -50939,7 +52830,7 @@ }, { "name": "path", - "description": "Relative path to the pipeline's page", + "description": "Relative path to the pipeline's page.", "args": [ ], @@ -50953,7 +52844,7 @@ }, { "name": "project", - "description": "Project the pipeline belongs to", + "description": "Project the pipeline belongs to.", "args": [ ], @@ -50967,7 +52858,7 @@ }, { "name": "retryable", - "description": "Specifies if a pipeline can be retried", + "description": "Specifies if a pipeline can be retried.", "args": [ ], @@ -50999,7 +52890,7 @@ }, { "name": "sha", - "description": "SHA of the pipeline's commit", + "description": "SHA of the pipeline's commit.", "args": [ ], @@ -51017,7 +52908,7 @@ }, { "name": "sourceJob", - "description": "Job where pipeline was triggered from", + "description": "Job where pipeline was triggered from.", "args": [ ], @@ -51031,7 +52922,7 @@ }, { "name": "stages", - "description": "Stages of the pipeline", + "description": "Stages of the pipeline.", "args": [ { "name": "after", @@ -51084,7 +52975,7 @@ }, { "name": "startedAt", - "description": "Timestamp when the pipeline was started", + "description": "Timestamp when the pipeline was started.", "args": [ ], @@ -51116,7 +53007,7 @@ }, { "name": "updatedAt", - "description": "Timestamp of the pipeline's last activity", + "description": "Timestamp of the pipeline's last activity.", "args": [ ], @@ -51134,7 +53025,7 @@ }, { "name": "upstream", - "description": "Pipeline that triggered the pipeline", + "description": "Pipeline that triggered the pipeline.", "args": [ ], @@ -51148,7 +53039,7 @@ }, { "name": "user", - "description": "Pipeline user", + "description": "Pipeline user.", "args": [ ], @@ -51193,7 +53084,7 @@ "fields": [ { "name": "monthPipelinesLabels", - "description": "Labels for the monthly pipeline count", + "description": "Labels for the monthly pipeline count.", "args": [ ], @@ -51215,7 +53106,7 @@ }, { "name": "monthPipelinesSuccessful", - "description": "Total monthly successful pipeline count", + "description": "Total monthly successful pipeline count.", "args": [ ], @@ -51237,7 +53128,7 @@ }, { "name": "monthPipelinesTotals", - "description": "Total monthly pipeline count", + "description": "Total monthly pipeline count.", "args": [ ], @@ -51259,7 +53150,7 @@ }, { "name": "pipelineTimesLabels", - "description": "Pipeline times labels", + "description": "Pipeline times labels.", "args": [ ], @@ -51281,7 +53172,7 @@ }, { "name": "pipelineTimesValues", - "description": "Pipeline times", + "description": "Pipeline times.", "args": [ ], @@ -51303,7 +53194,7 @@ }, { "name": "weekPipelinesLabels", - "description": "Labels for the weekly pipeline count", + "description": "Labels for the weekly pipeline count.", "args": [ ], @@ -51325,7 +53216,7 @@ }, { "name": "weekPipelinesSuccessful", - "description": "Total weekly successful pipeline count", + "description": "Total weekly successful pipeline count.", "args": [ ], @@ -51347,7 +53238,7 @@ }, { "name": "weekPipelinesTotals", - "description": "Total weekly pipeline count", + "description": "Total weekly pipeline count.", "args": [ ], @@ -51369,7 +53260,7 @@ }, { "name": "yearPipelinesLabels", - "description": "Labels for the yearly pipeline count", + "description": "Labels for the yearly pipeline count.", "args": [ ], @@ -51391,7 +53282,7 @@ }, { "name": "yearPipelinesSuccessful", - "description": "Total yearly successful pipeline count", + "description": "Total yearly successful pipeline count.", "args": [ ], @@ -51413,7 +53304,7 @@ }, { "name": "yearPipelinesTotals", - "description": "Total yearly pipeline count", + "description": "Total yearly pipeline count.", "args": [ ], @@ -51595,7 +53486,7 @@ "fields": [ { "name": "count", - "description": "Total count of collection", + "description": "Total count of collection.", "args": [ ], @@ -52368,6 +54259,41 @@ "deprecationReason": null }, { + "name": "alertManagementPayloadFields", + "description": "Extract alert fields from payload for custom mapping", + "args": [ + { + "name": "payloadExample", + "description": "Sample payload for extracting alert fields for custom mappings.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AlertManagementPayloadAlertField", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "allowMergeOnSkippedPipeline", "description": "If `only_allow_merge_if_pipeline_succeeds` is true, indicates if merge requests of the project can also be merged with skipped jobs", "args": [ @@ -52798,8 +54724,61 @@ "deprecationReason": null }, { + "name": "dastProfiles", + "description": "DAST Profiles associated with the project. Always returns no nodes if `dast_saved_scans` is disabled.", + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "DastProfileConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "dastScannerProfiles", - "description": "The DAST scanner profiles associated with the project", + "description": "The DAST scanner profiles associated with the project.", "args": [ { "name": "after", @@ -52852,7 +54831,7 @@ }, { "name": "dastSiteProfile", - "description": "DAST Site Profile associated with the project", + "description": "DAST Site Profile associated with the project.", "args": [ { "name": "id", @@ -52879,7 +54858,7 @@ }, { "name": "dastSiteProfiles", - "description": "DAST Site Profiles associated with the project", + "description": "DAST Site Profiles associated with the project.", "args": [ { "name": "after", @@ -52932,7 +54911,7 @@ }, { "name": "dastSiteValidations", - "description": "DAST Site Validations associated with the project. Will always return no nodes if `security_on_demand_scans_site_validation` is disabled", + "description": "DAST Site Validations associated with the project. Always returns no nodes if `security_on_demand_scans_site_validation` is disabled.", "args": [ { "name": "normalizedTargetUrls", @@ -55903,7 +57882,7 @@ }, { "name": "squashReadOnly", - "description": "Indicates if squash readonly is enabled", + "description": "Indicates if `squashReadOnly` is enabled", "args": [ ], @@ -55994,8 +57973,35 @@ "deprecationReason": null }, { + "name": "terraformState", + "description": "Find a single Terraform state by name.", + "args": [ + { + "name": "name", + "description": "Name of the Terraform state.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "TerraformState", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "terraformStates", - "description": "Terraform states associated with the project", + "description": "Terraform states associated with the project.", "args": [ { "name": "after", @@ -56334,7 +58340,7 @@ }, { "name": "vulnerabilityScanners", - "description": "Vulnerability scanners reported on the project vulnerabilties", + "description": "Vulnerability scanners reported on the project vulnerabilities", "args": [ { "name": "after", @@ -56708,7 +58714,7 @@ { "kind": "SCALAR", "name": "ProjectID", - "description": "Identifier of Project", + "description": "Identifier of Project.", "fields": null, "inputFields": null, "interfaces": null, @@ -58355,7 +60361,7 @@ { "kind": "SCALAR", "name": "PrometheusServiceID", - "description": "Identifier of PrometheusService", + "description": "Identifier of PrometheusService.", "fields": null, "inputFields": null, "interfaces": null, @@ -58975,8 +60981,8 @@ "deprecationReason": null }, { - "name": "packageComposerDetails", - "description": "Find a composer package", + "name": "package", + "description": "Find a package", "args": [ { "name": "id", @@ -58995,7 +61001,7 @@ ], "type": { "kind": "OBJECT", - "name": "PackageComposerDetails", + "name": "Package", "ofType": null }, "isDeprecated": false, @@ -60694,7 +62700,7 @@ "fields": [ { "name": "count", - "description": "Total count of collection", + "description": "Total count of collection.", "args": [ ], @@ -61124,7 +63130,7 @@ "fields": [ { "name": "collectedAt", - "description": "Timestamp when the evidence was collected", + "description": "Timestamp when the evidence was collected.", "args": [ ], @@ -61138,7 +63144,7 @@ }, { "name": "filepath", - "description": "URL from where the evidence can be downloaded", + "description": "URL from where the evidence can be downloaded.", "args": [ ], @@ -61152,7 +63158,7 @@ }, { "name": "id", - "description": "ID of the evidence", + "description": "ID of the evidence.", "args": [ ], @@ -61170,7 +63176,7 @@ }, { "name": "sha", - "description": "SHA1 ID of the evidence hash", + "description": "SHA1 ID of the evidence hash.", "args": [ ], @@ -61787,7 +63793,7 @@ }, { "name": "name", - "description": "The emoji name", + "description": "The emoji name.", "type": { "kind": "NON_NULL", "name": null, @@ -63288,7 +65294,7 @@ "fields": [ { "name": "downloadLocation", - "description": "Download location for the runner for the platform architecture", + "description": "Download location for the runner for the platform architecture.", "args": [ ], @@ -63306,7 +65312,7 @@ }, { "name": "name", - "description": "Name of the runner platform architecture", + "description": "Name of the runner platform architecture.", "args": [ ], @@ -63449,7 +65455,7 @@ "fields": [ { "name": "architectures", - "description": "Runner architectures supported for the platform", + "description": "Runner architectures supported for the platform.", "args": [ { "name": "after", @@ -63502,7 +65508,7 @@ }, { "name": "humanReadableName", - "description": "Human readable name of the runner platform", + "description": "Human readable name of the runner platform.", "args": [ ], @@ -63520,7 +65526,7 @@ }, { "name": "name", - "description": "Name slug of the runner platform", + "description": "Name slug of the runner platform.", "args": [ ], @@ -63663,7 +65669,7 @@ "fields": [ { "name": "installInstructions", - "description": "Instructions for installing the runner on the specified architecture", + "description": "Instructions for installing the runner on the specified architecture.", "args": [ ], @@ -63681,7 +65687,7 @@ }, { "name": "registerInstructions", - "description": "Instructions for registering the runner", + "description": "Instructions for registering the runner.", "args": [ ], @@ -63880,7 +65886,7 @@ "fields": [ { "name": "description", - "description": "Analyzer description that is displayed on the form", + "description": "Analyzer description that is displayed on the form.", "args": [ ], @@ -63894,7 +65900,7 @@ }, { "name": "enabled", - "description": "Indicates whether an analyzer is enabled", + "description": "Indicates whether an analyzer is enabled.", "args": [ ], @@ -63908,7 +65914,7 @@ }, { "name": "label", - "description": "Analyzer label used in the config UI", + "description": "Analyzer label used in the config UI.", "args": [ ], @@ -63922,7 +65928,7 @@ }, { "name": "name", - "description": "Name of the analyzer", + "description": "Name of the analyzer.", "args": [ ], @@ -63936,7 +65942,7 @@ }, { "name": "variables", - "description": "List of supported variables", + "description": "List of supported variables.", "args": [ { "name": "after", @@ -64115,7 +66121,7 @@ "inputFields": [ { "name": "name", - "description": "Name of analyzer", + "description": "Name of analyzer.", "type": { "kind": "NON_NULL", "name": null, @@ -64129,7 +66135,7 @@ }, { "name": "enabled", - "description": "State of the analyzer", + "description": "State of the analyzer.", "type": { "kind": "NON_NULL", "name": null, @@ -64143,7 +66149,7 @@ }, { "name": "variables", - "description": "List of variables for the analyzer", + "description": "List of variables for the analyzer.", "type": { "kind": "LIST", "name": null, @@ -64448,7 +66454,7 @@ "inputFields": [ { "name": "field", - "description": "CI keyword of entity", + "description": "CI keyword of entity.", "type": { "kind": "NON_NULL", "name": null, @@ -64462,7 +66468,7 @@ }, { "name": "defaultValue", - "description": "Default value that is used if value is empty", + "description": "Default value that is used if value is empty.", "type": { "kind": "NON_NULL", "name": null, @@ -64476,7 +66482,7 @@ }, { "name": "value", - "description": "Current value of the entity", + "description": "Current value of the entity.", "type": { "kind": "NON_NULL", "name": null, @@ -64501,7 +66507,7 @@ "inputFields": [ { "name": "global", - "description": "List of global entities related to SAST configuration", + "description": "List of global entities related to SAST configuration.", "type": { "kind": "LIST", "name": null, @@ -64519,7 +66525,7 @@ }, { "name": "pipeline", - "description": "List of pipeline entities related to SAST configuration", + "description": "List of pipeline entities related to SAST configuration.", "type": { "kind": "LIST", "name": null, @@ -64537,7 +66543,7 @@ }, { "name": "analyzers", - "description": "List of analyzers and related variables for the SAST configuration", + "description": "List of analyzers and related variables for the SAST configuration.", "type": { "kind": "LIST", "name": null, @@ -64900,7 +66906,7 @@ "fields": [ { "name": "apiFuzzing", - "description": "Aggregated counts for the api_fuzzing scan", + "description": "Aggregated counts for the `api_fuzzing` scan", "args": [ ], @@ -64914,7 +66920,7 @@ }, { "name": "containerScanning", - "description": "Aggregated counts for the container_scanning scan", + "description": "Aggregated counts for the `container_scanning` scan", "args": [ ], @@ -64928,7 +66934,7 @@ }, { "name": "coverageFuzzing", - "description": "Aggregated counts for the coverage_fuzzing scan", + "description": "Aggregated counts for the `coverage_fuzzing` scan", "args": [ ], @@ -64942,7 +66948,7 @@ }, { "name": "dast", - "description": "Aggregated counts for the dast scan", + "description": "Aggregated counts for the `dast` scan", "args": [ ], @@ -64956,7 +66962,7 @@ }, { "name": "dependencyScanning", - "description": "Aggregated counts for the dependency_scanning scan", + "description": "Aggregated counts for the `dependency_scanning` scan", "args": [ ], @@ -64970,7 +66976,7 @@ }, { "name": "sast", - "description": "Aggregated counts for the sast scan", + "description": "Aggregated counts for the `sast` scan", "args": [ ], @@ -64984,7 +66990,7 @@ }, { "name": "secretDetection", - "description": "Aggregated counts for the secret_detection scan", + "description": "Aggregated counts for the `secret_detection` scan", "args": [ ], @@ -65304,7 +67310,7 @@ "fields": [ { "name": "count", - "description": "Count of occurrences", + "description": "Count of occurrences.", "args": [ ], @@ -65322,7 +67328,7 @@ }, { "name": "culprit", - "description": "Culprit of the error", + "description": "Culprit of the error.", "args": [ ], @@ -65340,7 +67346,7 @@ }, { "name": "externalBaseUrl", - "description": "External Base URL of the Sentry Instance", + "description": "External Base URL of the Sentry Instance.", "args": [ ], @@ -65358,7 +67364,7 @@ }, { "name": "externalUrl", - "description": "External URL of the error", + "description": "External URL of the error.", "args": [ ], @@ -65376,7 +67382,7 @@ }, { "name": "firstReleaseLastCommit", - "description": "Commit the error was first seen", + "description": "Commit the error was first seen.", "args": [ ], @@ -65390,7 +67396,7 @@ }, { "name": "firstReleaseShortVersion", - "description": "Release short version the error was first seen", + "description": "Release short version the error was first seen.", "args": [ ], @@ -65404,7 +67410,7 @@ }, { "name": "firstReleaseVersion", - "description": "Release version the error was first seen", + "description": "Release version the error was first seen.", "args": [ ], @@ -65418,7 +67424,7 @@ }, { "name": "firstSeen", - "description": "Timestamp when the error was first seen", + "description": "Timestamp when the error was first seen.", "args": [ ], @@ -65436,7 +67442,7 @@ }, { "name": "frequency", - "description": "Last 24hr stats of the error", + "description": "Last 24hr stats of the error.", "args": [ ], @@ -65462,7 +67468,7 @@ }, { "name": "gitlabCommit", - "description": "GitLab commit SHA attributed to the Error based on the release version", + "description": "GitLab commit SHA attributed to the Error based on the release version.", "args": [ ], @@ -65476,7 +67482,7 @@ }, { "name": "gitlabCommitPath", - "description": "Path to the GitLab page for the GitLab commit attributed to the error", + "description": "Path to the GitLab page for the GitLab commit attributed to the error.", "args": [ ], @@ -65490,7 +67496,7 @@ }, { "name": "gitlabIssuePath", - "description": "URL of GitLab Issue", + "description": "URL of GitLab Issue.", "args": [ ], @@ -65504,7 +67510,7 @@ }, { "name": "id", - "description": "ID (global ID) of the error", + "description": "ID (global ID) of the error.", "args": [ ], @@ -65522,7 +67528,7 @@ }, { "name": "lastReleaseLastCommit", - "description": "Commit the error was last seen", + "description": "Commit the error was last seen.", "args": [ ], @@ -65536,7 +67542,7 @@ }, { "name": "lastReleaseShortVersion", - "description": "Release short version the error was last seen", + "description": "Release short version the error was last seen.", "args": [ ], @@ -65550,7 +67556,7 @@ }, { "name": "lastReleaseVersion", - "description": "Release version the error was last seen", + "description": "Release version the error was last seen.", "args": [ ], @@ -65564,7 +67570,7 @@ }, { "name": "lastSeen", - "description": "Timestamp when the error was last seen", + "description": "Timestamp when the error was last seen.", "args": [ ], @@ -65582,7 +67588,7 @@ }, { "name": "message", - "description": "Sentry metadata message of the error", + "description": "Sentry metadata message of the error.", "args": [ ], @@ -65596,7 +67602,7 @@ }, { "name": "sentryId", - "description": "ID (Sentry ID) of the error", + "description": "ID (Sentry ID) of the error.", "args": [ ], @@ -65614,7 +67620,7 @@ }, { "name": "sentryProjectId", - "description": "ID of the project (Sentry project)", + "description": "ID of the project (Sentry project).", "args": [ ], @@ -65632,7 +67638,7 @@ }, { "name": "sentryProjectName", - "description": "Name of the project affected by the error", + "description": "Name of the project affected by the error.", "args": [ ], @@ -65650,7 +67656,7 @@ }, { "name": "sentryProjectSlug", - "description": "Slug of the project affected by the error", + "description": "Slug of the project affected by the error.", "args": [ ], @@ -65668,7 +67674,7 @@ }, { "name": "shortId", - "description": "Short ID (Sentry ID) of the error", + "description": "Short ID (Sentry ID) of the error.", "args": [ ], @@ -65686,7 +67692,7 @@ }, { "name": "status", - "description": "Status of the error", + "description": "Status of the error.", "args": [ ], @@ -65704,7 +67710,7 @@ }, { "name": "tags", - "description": "Tags associated with the Sentry Error", + "description": "Tags associated with the Sentry Error.", "args": [ ], @@ -65722,7 +67728,7 @@ }, { "name": "title", - "description": "Title of the error", + "description": "Title of the error.", "args": [ ], @@ -65740,7 +67746,7 @@ }, { "name": "type", - "description": "Type of the error", + "description": "Type of the error.", "args": [ ], @@ -65758,7 +67764,7 @@ }, { "name": "userCount", - "description": "Count of users affected by the error", + "description": "Count of users affected by the error.", "args": [ ], @@ -65789,7 +67795,7 @@ "fields": [ { "name": "count", - "description": "Count of occurrences", + "description": "Count of occurrences.", "args": [ ], @@ -65807,7 +67813,7 @@ }, { "name": "culprit", - "description": "Culprit of the error", + "description": "Culprit of the error.", "args": [ ], @@ -65825,7 +67831,7 @@ }, { "name": "externalUrl", - "description": "External URL of the error", + "description": "External URL of the error.", "args": [ ], @@ -65843,7 +67849,7 @@ }, { "name": "firstSeen", - "description": "Timestamp when the error was first seen", + "description": "Timestamp when the error was first seen.", "args": [ ], @@ -65861,7 +67867,7 @@ }, { "name": "frequency", - "description": "Last 24hr stats of the error", + "description": "Last 24hr stats of the error.", "args": [ ], @@ -65887,7 +67893,7 @@ }, { "name": "id", - "description": "ID (global ID) of the error", + "description": "ID (global ID) of the error.", "args": [ ], @@ -65905,7 +67911,7 @@ }, { "name": "lastSeen", - "description": "Timestamp when the error was last seen", + "description": "Timestamp when the error was last seen.", "args": [ ], @@ -65923,7 +67929,7 @@ }, { "name": "message", - "description": "Sentry metadata message of the error", + "description": "Sentry metadata message of the error.", "args": [ ], @@ -65937,7 +67943,7 @@ }, { "name": "sentryId", - "description": "ID (Sentry ID) of the error", + "description": "ID (Sentry ID) of the error.", "args": [ ], @@ -65955,7 +67961,7 @@ }, { "name": "sentryProjectId", - "description": "ID of the project (Sentry project)", + "description": "ID of the project (Sentry project).", "args": [ ], @@ -65973,7 +67979,7 @@ }, { "name": "sentryProjectName", - "description": "Name of the project affected by the error", + "description": "Name of the project affected by the error.", "args": [ ], @@ -65991,7 +67997,7 @@ }, { "name": "sentryProjectSlug", - "description": "Slug of the project affected by the error", + "description": "Slug of the project affected by the error.", "args": [ ], @@ -66009,7 +68015,7 @@ }, { "name": "shortId", - "description": "Short ID (Sentry ID) of the error", + "description": "Short ID (Sentry ID) of the error.", "args": [ ], @@ -66027,7 +68033,7 @@ }, { "name": "status", - "description": "Status of the error", + "description": "Status of the error.", "args": [ ], @@ -66045,7 +68051,7 @@ }, { "name": "title", - "description": "Title of the error", + "description": "Title of the error.", "args": [ ], @@ -66063,7 +68069,7 @@ }, { "name": "type", - "description": "Type of the error", + "description": "Type of the error.", "args": [ ], @@ -66081,7 +68087,7 @@ }, { "name": "userCount", - "description": "Count of users affected by the error", + "description": "Count of users affected by the error.", "args": [ ], @@ -66112,7 +68118,7 @@ "fields": [ { "name": "detailedError", - "description": "Detailed version of a Sentry error on the project", + "description": "Detailed version of a Sentry error on the project.", "args": [ { "name": "id", @@ -66139,7 +68145,7 @@ }, { "name": "errorStackTrace", - "description": "Stack Trace of Sentry Error", + "description": "Stack Trace of Sentry Error.", "args": [ { "name": "id", @@ -66166,7 +68172,7 @@ }, { "name": "errors", - "description": "Collection of Sentry Errors", + "description": "Collection of Sentry Errors.", "args": [ { "name": "searchTerm", @@ -66239,7 +68245,7 @@ }, { "name": "externalUrl", - "description": "External URL for Sentry", + "description": "External URL for Sentry.", "args": [ ], @@ -66378,7 +68384,7 @@ "fields": [ { "name": "count", - "description": "Count of errors received since the previously recorded time", + "description": "Count of errors received since the previously recorded time.", "args": [ ], @@ -66396,7 +68402,7 @@ }, { "name": "time", - "description": "Time the error frequency stats were recorded", + "description": "Time the error frequency stats were recorded.", "args": [ ], @@ -66427,7 +68433,7 @@ "fields": [ { "name": "dateReceived", - "description": "Time the stack trace was received by Sentry", + "description": "Time the stack trace was received by Sentry.", "args": [ ], @@ -66445,7 +68451,7 @@ }, { "name": "issueId", - "description": "ID of the Sentry error", + "description": "ID of the Sentry error.", "args": [ ], @@ -66463,7 +68469,7 @@ }, { "name": "stackTraceEntries", - "description": "Stack trace entries for the Sentry error", + "description": "Stack trace entries for the Sentry error.", "args": [ ], @@ -66502,7 +68508,7 @@ "fields": [ { "name": "code", - "description": "Code number of the context", + "description": "Code number of the context.", "args": [ ], @@ -66520,7 +68526,7 @@ }, { "name": "line", - "description": "Line number of the context", + "description": "Line number of the context.", "args": [ ], @@ -66551,7 +68557,7 @@ "fields": [ { "name": "col", - "description": "Function in which the Sentry error occurred", + "description": "Function in which the Sentry error occurred.", "args": [ ], @@ -66565,7 +68571,7 @@ }, { "name": "fileName", - "description": "File in which the Sentry error occurred", + "description": "File in which the Sentry error occurred.", "args": [ ], @@ -66579,7 +68585,7 @@ }, { "name": "function", - "description": "Function in which the Sentry error occurred", + "description": "Function in which the Sentry error occurred.", "args": [ ], @@ -66593,7 +68599,7 @@ }, { "name": "line", - "description": "Function in which the Sentry error occurred", + "description": "Function in which the Sentry error occurred.", "args": [ ], @@ -66607,7 +68613,7 @@ }, { "name": "traceContext", - "description": "Context of the Sentry error", + "description": "Context of the Sentry error.", "args": [ ], @@ -66677,7 +68683,7 @@ "fields": [ { "name": "level", - "description": "Severity level of the Sentry Error", + "description": "Severity level of the Sentry Error.", "args": [ ], @@ -66691,7 +68697,7 @@ }, { "name": "logger", - "description": "Logger of the Sentry Error", + "description": "Logger of the Sentry Error.", "args": [ ], @@ -68012,7 +70018,7 @@ }, { "name": "loadAsync", - "description": "Shows whether the blob content is loaded async", + "description": "Shows whether the blob content is loaded asynchronously", "args": [ ], @@ -68219,7 +70225,7 @@ { "kind": "SCALAR", "name": "SnippetID", - "description": "Identifier of Snippet", + "description": "Identifier of Snippet.", "fields": null, "inputFields": null, "interfaces": null, @@ -68658,7 +70664,7 @@ "fields": [ { "name": "buttonTitle", - "description": "Title for the button, for example: Retry this job", + "description": "Title for the button, for example: Retry this job.", "args": [ ], @@ -68672,7 +70678,7 @@ }, { "name": "icon", - "description": "Icon used in the action button", + "description": "Icon used in the action button.", "args": [ ], @@ -68686,7 +70692,7 @@ }, { "name": "method", - "description": "Method for the action, for example: :post", + "description": "Method for the action, for example: :post.", "args": [ ], @@ -68700,7 +70706,7 @@ }, { "name": "path", - "description": "Path for the action", + "description": "Path for the action.", "args": [ ], @@ -68714,7 +70720,7 @@ }, { "name": "title", - "description": "Title for the action, for example: Retry", + "description": "Title for the action, for example: Retry.", "args": [ ], @@ -68823,7 +70829,7 @@ }, { "name": "sha", - "description": "Last commit sha for the entry", + "description": "Last commit SHA for the entry", "args": [ ], @@ -69192,7 +71198,7 @@ "fields": [ { "name": "count", - "description": "Total count of collection", + "description": "Total count of collection.", "args": [ ], @@ -69406,7 +71412,7 @@ { "kind": "SCALAR", "name": "TerraformStateID", - "description": "Identifier of Terraform::State", + "description": "Identifier of Terraform::State.", "fields": null, "inputFields": null, "interfaces": null, @@ -70617,11 +72623,11 @@ { "kind": "OBJECT", "name": "Todo", - "description": "Representing a todo entry", + "description": "Representing a to-do entry", "fields": [ { "name": "action", - "description": "Action of the todo", + "description": "Action of the to-do item", "args": [ ], @@ -70639,7 +72645,7 @@ }, { "name": "author", - "description": "The author of this todo", + "description": "The author of this to-do item", "args": [ ], @@ -70657,7 +72663,7 @@ }, { "name": "body", - "description": "Body of the todo", + "description": "Body of the to-do item", "args": [ ], @@ -70675,7 +72681,7 @@ }, { "name": "createdAt", - "description": "Timestamp this todo was created", + "description": "Timestamp this to-do item was created", "args": [ ], @@ -70693,7 +72699,7 @@ }, { "name": "group", - "description": "Group this todo is associated with", + "description": "Group this to-do item is associated with", "args": [ ], @@ -70707,7 +72713,7 @@ }, { "name": "id", - "description": "ID of the todo", + "description": "ID of the to-do item", "args": [ ], @@ -70725,7 +72731,7 @@ }, { "name": "project", - "description": "The project this todo is associated with", + "description": "The project this to-do item is associated with", "args": [ ], @@ -70739,7 +72745,7 @@ }, { "name": "state", - "description": "State of the todo", + "description": "State of the to-do item", "args": [ ], @@ -70757,7 +72763,7 @@ }, { "name": "targetType", - "description": "Target type of the todo", + "description": "Target type of the to-do item", "args": [ ], @@ -70983,7 +72989,7 @@ }, { "name": "todo", - "description": "The to-do created.", + "description": "The to-do item created.", "args": [ ], @@ -71051,7 +73057,7 @@ { "kind": "SCALAR", "name": "TodoID", - "description": "Identifier of Todo", + "description": "Identifier of Todo.", "fields": null, "inputFields": null, "interfaces": null, @@ -71066,7 +73072,7 @@ "inputFields": [ { "name": "id", - "description": "The global ID of the todo to mark as done.", + "description": "The global ID of the to-do item to mark as done.", "type": { "kind": "NON_NULL", "name": null, @@ -71140,7 +73146,7 @@ }, { "name": "todo", - "description": "The requested todo.", + "description": "The requested to-do item.", "args": [ ], @@ -71172,7 +73178,7 @@ "inputFields": [ { "name": "id", - "description": "The global ID of the todo to restore.", + "description": "The global ID of the to-do item to restore.", "type": { "kind": "NON_NULL", "name": null, @@ -71207,7 +73213,7 @@ "inputFields": [ { "name": "ids", - "description": "The global IDs of the todos to restore (a maximum of 50 is supported at once).", + "description": "The global IDs of the to-do items to restore (a maximum of 50 is supported at once).", "type": { "kind": "NON_NULL", "name": null, @@ -71289,7 +73295,7 @@ }, { "name": "todos", - "description": "Updated todos.", + "description": "Updated to-do items.", "args": [ ], @@ -71315,7 +73321,7 @@ }, { "name": "updatedIds", - "description": "The IDs of the updated todo items. Deprecated in 13.2: Use todos.", + "description": "The IDs of the updated to-do items. Deprecated in 13.2: Use to-do items.", "args": [ ], @@ -71337,7 +73343,7 @@ } }, "isDeprecated": true, - "deprecationReason": "Use todos. Deprecated in 13.2." + "deprecationReason": "Use to-do items. Deprecated in 13.2." } ], "inputFields": null, @@ -71394,7 +73400,7 @@ }, { "name": "todo", - "description": "The requested todo.", + "description": "The requested to-do item.", "args": [ ], @@ -71491,7 +73497,7 @@ { "kind": "SCALAR", "name": "TodoableID", - "description": "Identifier of Todoable", + "description": "Identifier of Todoable.", "fields": null, "inputFields": null, "interfaces": null, @@ -71566,7 +73572,7 @@ }, { "name": "todos", - "description": "Updated todos.", + "description": "Updated to-do items.", "args": [ ], @@ -71592,7 +73598,7 @@ }, { "name": "updatedIds", - "description": "Ids of the updated todos. Deprecated in 13.2: Use todos.", + "description": "IDs of the updated to-do items. Deprecated in 13.2: Use to-do items.", "args": [ ], @@ -71614,7 +73620,7 @@ } }, "isDeprecated": true, - "deprecationReason": "Use todos. Deprecated in 13.2." + "deprecationReason": "Use to-do items. Deprecated in 13.2." } ], "inputFields": null, @@ -71646,7 +73652,7 @@ }, { "name": "name", - "description": "The emoji name", + "description": "The emoji name.", "type": { "kind": "NON_NULL", "name": null, @@ -72035,7 +74041,7 @@ }, { "name": "sha", - "description": "Last commit sha for the entry", + "description": "Last commit SHA for the entry", "args": [ ], @@ -72392,7 +74398,7 @@ }, { "name": "todo", - "description": "The todo after mutation.", + "description": "The to-do item after mutation.", "args": [ ], @@ -72560,7 +74566,7 @@ }, { "name": "hideBacklogList", - "description": "Whether or not backlog list is hidden", + "description": "Whether or not backlog list is hidden.", "type": { "kind": "SCALAR", "name": "Boolean", @@ -72570,7 +74576,7 @@ }, { "name": "hideClosedList", - "description": "Whether or not closed list is hidden", + "description": "Whether or not closed list is hidden.", "type": { "kind": "SCALAR", "name": "Boolean", @@ -73010,7 +75016,7 @@ }, { "name": "enabled", - "description": "Indicates whether this container expiration policy is enabled", + "description": "Indicates whether this container expiration policy is enabled.", "type": { "kind": "SCALAR", "name": "Boolean", @@ -73020,7 +75026,7 @@ }, { "name": "cadence", - "description": "This container expiration policy schedule", + "description": "This container expiration policy schedule.", "type": { "kind": "ENUM", "name": "ContainerExpirationPolicyCadenceEnum", @@ -73030,7 +75036,7 @@ }, { "name": "olderThan", - "description": "Tags older that this will expire", + "description": "Tags older that this will expire.", "type": { "kind": "ENUM", "name": "ContainerExpirationPolicyOlderThanEnum", @@ -73040,7 +75046,7 @@ }, { "name": "keepN", - "description": "Number of tags to retain", + "description": "Number of tags to retain.", "type": { "kind": "ENUM", "name": "ContainerExpirationPolicyKeepEnum", @@ -73050,7 +75056,7 @@ }, { "name": "nameRegex", - "description": "Tags with names matching this regex pattern will expire", + "description": "Tags with names matching this regex pattern will expire.", "type": { "kind": "SCALAR", "name": "UntrustedRegexp", @@ -73060,7 +75066,7 @@ }, { "name": "nameRegexKeep", - "description": "Tags with names matching this regex pattern will be preserved", + "description": "Tags with names matching this regex pattern will be preserved.", "type": { "kind": "SCALAR", "name": "UntrustedRegexp", @@ -74504,6 +76510,26 @@ "fields": null, "inputFields": [ { + "name": "captchaResponse", + "description": "A valid CAPTCHA response value obtained by using the provided captchaSiteKey with a CAPTCHA API to present a challenge to be solved on the client. Required to resubmit if the previous operation returned \"NeedsCaptchaResponse: true\".", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "spamLogId", + "description": "The spam log ID which must be passed along with a valid CAPTCHA response for the operation to be completed. Required to resubmit if the previous operation returned \"NeedsCaptchaResponse: true\".", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { "name": "id", "description": "The global ID of the snippet to update.", "type": { @@ -74586,6 +76612,20 @@ "description": "Autogenerated return type of UpdateSnippet", "fields": [ { + "name": "captchaSiteKey", + "description": "The CAPTCHA site key which must be used to render a challenge for the user to solve to obtain a valid captchaResponse value. Included only when an operation was not completed because \"NeedsCaptchaResponse\" is true.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "clientMutationId", "description": "A unique identifier for the client performing the mutation.", "args": [ @@ -74626,6 +76666,20 @@ "deprecationReason": null }, { + "name": "needsCaptchaResponse", + "description": "Indicates whether the operation was detected as possible spam and not completed. If CAPTCHA is enabled, the request must be resubmitted with a valid CAPTCHA response and spam_log_id included for the operation to be completed. Included only when an operation was not completed because \"NeedsCaptchaResponse\" is true.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "snippet", "description": "The snippet after mutation.", "args": [ @@ -74641,7 +76695,7 @@ }, { "name": "spam", - "description": "Indicates whether the operation returns a record detected as spam.", + "description": "Indicates whether the operation was detected as definite spam. There is no option to resubmit the request with a CAPTCHA response.", "args": [ ], @@ -74652,6 +76706,20 @@ }, "isDeprecated": false, "deprecationReason": null + }, + { + "name": "spamLogId", + "description": "The spam log ID which must be passed along with a valid CAPTCHA response for an operation to be completed. Included only when an operation was not completed because \"NeedsCaptchaResponse\" is true.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -75721,7 +77789,7 @@ }, { "name": "todos", - "description": "Todos of the user", + "description": "To-do items of the user", "args": [ { "name": "action", @@ -76079,7 +78147,7 @@ { "kind": "SCALAR", "name": "UserID", - "description": "Identifier of User", + "description": "Identifier of User.", "fields": null, "inputFields": null, "interfaces": null, @@ -76716,7 +78784,7 @@ { "kind": "SCALAR", "name": "VulnerabilitiesExternalIssueLinkID", - "description": "Identifier of Vulnerabilities::ExternalIssueLink", + "description": "Identifier of Vulnerabilities::ExternalIssueLink.", "fields": null, "inputFields": null, "interfaces": null, @@ -76771,6 +78839,32 @@ "deprecationReason": null }, { + "name": "details", + "description": "Details of the vulnerability", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "VulnerabilityDetail", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "detectedAt", "description": "Timestamp of when the vulnerability was first detected", "args": [ @@ -77516,6 +79610,1259 @@ "possibleTypes": null }, { + "kind": "UNION", + "name": "VulnerabilityDetail", + "description": "Represents a vulnerability detail field. The fields with data will depend on the vulnerability detail type", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "VulnerabilityDetailBase", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailBoolean", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailCode", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailCommit", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailDiff", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailFileLocation", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailInt", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailList", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailMarkdown", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailModuleLocation", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailTable", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailText", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailUrl", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailBase", + "description": "Represents the vulnerability details base", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailBoolean", + "description": "Represents the vulnerability details boolean value", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": "Value of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailCode", + "description": "Represents the vulnerability details code field", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lang", + "description": "Language of the code.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": "Source code.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailCommit", + "description": "Represents the vulnerability details commit field", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": "The commit SHA value.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailDiff", + "description": "Represents the vulnerability details diff field", + "fields": [ + { + "name": "after", + "description": "Value of the field after the change.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "before", + "description": "Value of the field before the change.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailFileLocation", + "description": "Represents the vulnerability details location within a file in the project", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fileName", + "description": "File name.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lineEnd", + "description": "End line number of the file location.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lineStart", + "description": "Start line number of the file location.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailInt", + "description": "Represents the vulnerability details integer value", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": "Value of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailList", + "description": "Represents the vulnerability details list value", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "items", + "description": "List of details.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "VulnerabilityDetail", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailMarkdown", + "description": "Represents the vulnerability details Markdown field", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": "Value of the Markdown field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailModuleLocation", + "description": "Represents the vulnerability details location within a file in the project", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "moduleName", + "description": "Module name.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": "Offset of the module location.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailTable", + "description": "Represents the vulnerability details table value", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "headers", + "description": "Table headers.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "VulnerabilityDetail", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "rows", + "description": "Table rows.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "VulnerabilityDetail", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailText", + "description": "Represents the vulnerability details text field", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": "Value of the text field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "VulnerabilityDetailUrl", + "description": "Represents the vulnerability details URL field", + "fields": [ + { + "name": "description", + "description": "Description of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fieldName", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "href", + "description": "Href of the URL.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Name of the field.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "text", + "description": "Text of the URL.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { "kind": "INPUT_OBJECT", "name": "VulnerabilityDismissInput", "description": "Autogenerated input type of VulnerabilityDismiss", @@ -78194,7 +81541,7 @@ { "kind": "SCALAR", "name": "VulnerabilityID", - "description": "Identifier of Vulnerability", + "description": "Identifier of Vulnerability.", "fields": null, "inputFields": null, "interfaces": null, @@ -78574,6 +81921,20 @@ "description": "Represents the location of a vulnerability found by a Coverage Fuzzing scan", "fields": [ { + "name": "blobPath", + "description": "Blob path to the vulnerable file", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "endLine", "description": "Number of the last relevant line in the vulnerable file", "args": [ @@ -78726,6 +82087,20 @@ "description": "Represents the location of a vulnerability found by a dependency security scan", "fields": [ { + "name": "blobPath", + "description": "Blob path to the vulnerable file", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "dependency", "description": "Dependency containing the vulnerability", "args": [ @@ -78767,6 +82142,20 @@ "description": "Represents the location of a vulnerability found by a SAST scan", "fields": [ { + "name": "blobPath", + "description": "Blob path to the vulnerable file", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "endLine", "description": "Number of the last relevant line in the vulnerable file", "args": [ @@ -78850,6 +82239,20 @@ "description": "Represents the location of a vulnerability found by a secret detection scan", "fields": [ { + "name": "blobPath", + "description": "Blob path to the vulnerable file", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { "name": "endLine", "description": "Number of the last relevant line in the vulnerable file", "args": [ diff --git a/doc/api/graphql/reference/index.md b/doc/api/graphql/reference/index.md index c098de16ef6..1cf8371f35c 100644 --- a/doc/api/graphql/reference/index.md +++ b/doc/api/graphql/reference/index.md @@ -41,8 +41,8 @@ Represents the access level of a relationship between a User and object that it | Field | Type | Description | | ----- | ---- | ----------- | -| `integerValue` | Int | Integer representation of access level | -| `stringValue` | AccessLevelEnum | String representation of access level | +| `integerValue` | Int | Integer representation of access level. | +| `stringValue` | AccessLevelEnum | String representation of access level. | ### AddAwardEmojiPayload @@ -80,30 +80,30 @@ Describes an alert from the project's Alert Management. | Field | Type | Description | | ----- | ---- | ----------- | -| `assignees` | UserConnection | Assignees of the alert | -| `createdAt` | Time | Timestamp the alert was created | -| `description` | String | Description of the alert | -| `details` | JSON | Alert details | -| `detailsUrl` | String! | The URL of the alert detail page | +| `assignees` | UserConnection | Assignees of the alert. | +| `createdAt` | Time | Timestamp the alert was created. | +| `description` | String | Description of the alert. | +| `details` | JSON | Alert details. | +| `detailsUrl` | String! | The URL of the alert detail page. | | `discussions` | DiscussionConnection! | All discussions on this noteable | -| `endedAt` | Time | Timestamp the alert ended | -| `environment` | Environment | Environment for the alert | -| `eventCount` | Int | Number of events of this alert | -| `hosts` | String! => Array | List of hosts the alert came from | -| `iid` | ID! | Internal ID of the alert | -| `issueIid` | ID | Internal ID of the GitLab issue attached to the alert | -| `metricsDashboardUrl` | String | URL for metrics embed for the alert | -| `monitoringTool` | String | Monitoring tool the alert came from | +| `endedAt` | Time | Timestamp the alert ended. | +| `environment` | Environment | Environment for the alert. | +| `eventCount` | Int | Number of events of this alert. | +| `hosts` | String! => Array | List of hosts the alert came from. | +| `iid` | ID! | Internal ID of the alert. | +| `issueIid` | ID | Internal ID of the GitLab issue attached to the alert. | +| `metricsDashboardUrl` | String | URL for metrics embed for the alert. | +| `monitoringTool` | String | Monitoring tool the alert came from. | | `notes` | NoteConnection! | All notes on this noteable | -| `prometheusAlert` | PrometheusAlert | The alert condition for Prometheus | -| `runbook` | String | Runbook for the alert as defined in alert details | -| `service` | String | Service the alert came from | -| `severity` | AlertManagementSeverity | Severity of the alert | -| `startedAt` | Time | Timestamp the alert was raised | -| `status` | AlertManagementStatus | Status of the alert | -| `title` | String | Title of the alert | -| `todos` | TodoConnection | Todos of the current user for the alert | -| `updatedAt` | Time | Timestamp the alert was last updated | +| `prometheusAlert` | PrometheusAlert | The alert condition for Prometheus. | +| `runbook` | String | Runbook for the alert as defined in alert details. | +| `service` | String | Service the alert came from. | +| `severity` | AlertManagementSeverity | Severity of the alert. | +| `startedAt` | Time | Timestamp the alert was raised. | +| `status` | AlertManagementStatus | Status of the alert. | +| `title` | String | Title of the alert. | +| `todos` | TodoConnection | To-do items of the current user for the alert. | +| `updatedAt` | Time | Timestamp the alert was last updated. | ### AlertManagementAlertStatusCountsType @@ -112,9 +112,9 @@ Represents total number of alerts for the represented categories. | Field | Type | Description | | ----- | ---- | ----------- | | `acknowledged` | Int | Number of alerts with status ACKNOWLEDGED for the project | -| `all` | Int | Total number of alerts for the project | +| `all` | Int | Total number of alerts for the project. | | `ignored` | Int | Number of alerts with status IGNORED for the project | -| `open` | Int | Number of alerts with status TRIGGERED or ACKNOWLEDGED for the project | +| `open` | Int | Number of alerts with status TRIGGERED or ACKNOWLEDGED for the project. | | `resolved` | Int | Number of alerts with status RESOLVED for the project | | `triggered` | Int | Number of alerts with status TRIGGERED for the project | @@ -124,13 +124,23 @@ An endpoint and credentials used to accept alerts for a project. | Field | Type | Description | | ----- | ---- | ----------- | -| `active` | Boolean | Whether the endpoint is currently accepting alerts | -| `apiUrl` | String | URL at which Prometheus metrics can be queried to populate the metrics dashboard | -| `id` | ID! | ID of the integration | -| `name` | String | Name of the integration | -| `token` | String | Token used to authenticate alert notification requests | -| `type` | AlertManagementIntegrationType! | Type of integration | -| `url` | String | Endpoint which accepts alert notifications | +| `active` | Boolean | Whether the endpoint is currently accepting alerts. | +| `apiUrl` | String | URL at which Prometheus metrics can be queried to populate the metrics dashboard. | +| `id` | ID! | ID of the integration. | +| `name` | String | Name of the integration. | +| `token` | String | Token used to authenticate alert notification requests. | +| `type` | AlertManagementIntegrationType! | Type of integration. | +| `url` | String | Endpoint which accepts alert notifications. | + +### AlertManagementPayloadAlertField + +Parsed field from an alert used for custom mappings. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `label` | String | Human-readable label of the payload path. | +| `path` | String! => Array | Path to value inside payload JSON. | +| `type` | AlertManagementPayloadAlertFieldType | Type of the parsed value. | ### AlertManagementPrometheusIntegration @@ -138,13 +148,13 @@ An endpoint and credentials used to accept Prometheus alerts for a project. | Field | Type | Description | | ----- | ---- | ----------- | -| `active` | Boolean | Whether the endpoint is currently accepting alerts | -| `apiUrl` | String | URL at which Prometheus metrics can be queried to populate the metrics dashboard | -| `id` | ID! | ID of the integration | -| `name` | String | Name of the integration | -| `token` | String | Token used to authenticate alert notification requests | -| `type` | AlertManagementIntegrationType! | Type of integration | -| `url` | String | Endpoint which accepts alert notifications | +| `active` | Boolean | Whether the endpoint is currently accepting alerts. | +| `apiUrl` | String | URL at which Prometheus metrics can be queried to populate the metrics dashboard. | +| `id` | ID! | ID of the integration. | +| `name` | String | Name of the integration. | +| `token` | String | Token used to authenticate alert notification requests. | +| `type` | AlertManagementIntegrationType! | Type of integration. | +| `url` | String | Endpoint which accepts alert notifications. | ### AlertSetAssigneesPayload @@ -156,7 +166,7 @@ Autogenerated return type of AlertSetAssignees. | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `issue` | Issue | The issue created after mutation. | -| `todo` | Todo | The todo after mutation. | +| `todo` | Todo | The to-do item after mutation. | ### AlertTodoCreatePayload @@ -168,7 +178,7 @@ Autogenerated return type of AlertTodoCreate. | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `issue` | Issue | The issue created after mutation. | -| `todo` | Todo | The todo after mutation. | +| `todo` | Todo | The to-do item after mutation. | ### AwardEmoji @@ -176,12 +186,12 @@ An emoji awarded by a user. | Field | Type | Description | | ----- | ---- | ----------- | -| `description` | String! | The emoji description | -| `emoji` | String! | The emoji as an icon | -| `name` | String! | The emoji name | -| `unicode` | String! | The emoji in unicode | -| `unicodeVersion` | String! | The unicode version for this emoji | -| `user` | User! | The user who awarded the emoji | +| `description` | String! | The emoji description. | +| `emoji` | String! | The emoji as an icon. | +| `name` | String! | The emoji name. | +| `unicode` | String! | The emoji in Unicode. | +| `unicodeVersion` | String! | The Unicode version for this emoji. | +| `user` | User! | The user who awarded the emoji. | ### AwardEmojiAddPayload @@ -231,7 +241,7 @@ Autogenerated return type of AwardEmojiToggle. | `mode` | String | Blob mode in numeric format | | `name` | String! | Name of the entry | | `path` | String! | Path of the entry | -| `sha` | String! | Last commit sha for the entry | +| `sha` | String! | Last commit SHA for the entry | | `type` | EntryType! | Type of tree entry | | `webPath` | String | Web path of the blob | | `webUrl` | String | Web URL of the blob | @@ -244,14 +254,14 @@ Represents a project or group board. | ----- | ---- | ----------- | | `assignee` | User | The board assignee | | `epics` | BoardEpicConnection | Epics associated with board issues | -| `hideBacklogList` | Boolean | Whether or not backlog list is hidden | -| `hideClosedList` | Boolean | Whether or not closed list is hidden | -| `id` | ID! | ID (global ID) of the board | +| `hideBacklogList` | Boolean | Whether or not backlog list is hidden. | +| `hideClosedList` | Boolean | Whether or not closed list is hidden. | +| `id` | ID! | ID (global ID) of the board. | | `iteration` | Iteration | The board iteration. | | `labels` | LabelConnection | Labels of the board | -| `lists` | BoardListConnection | Lists of the board | +| `lists` | BoardListConnection | Lists of the board. | | `milestone` | Milestone | The board milestone | -| `name` | String | Name of the board | +| `name` | String | Name of the board. | | `webPath` | String! | Web path of the board. | | `webUrl` | String! | Web URL of the board. | | `weight` | Int | Weight of the board | @@ -262,51 +272,52 @@ Represents an epic on an issue board. | Field | Type | Description | | ----- | ---- | ----------- | -| `author` | User! | Author of the epic | -| `children` | EpicConnection | Children (sub-epics) of the epic | -| `closedAt` | Time | Timestamp of when the epic was closed | -| `confidential` | Boolean | Indicates if the epic is confidential | -| `createdAt` | Time | Timestamp of when the epic was created | -| `currentUserTodos` | TodoConnection! | Todos for the current user | -| `descendantCounts` | EpicDescendantCount | Number of open and closed descendant epics and issues | -| `descendantWeightSum` | EpicDescendantWeights | Total weight of open and closed issues in the epic and its descendants | -| `description` | String | Description of the epic | +| `author` | User! | Author of the epic. | +| `awardEmoji` | AwardEmojiConnection | A list of award emojis associated with the epic. | +| `children` | EpicConnection | Children (sub-epics) of the epic. | +| `closedAt` | Time | Timestamp of when the epic was closed. | +| `confidential` | Boolean | Indicates if the epic is confidential. | +| `createdAt` | Time | Timestamp of when the epic was created. | +| `currentUserTodos` | TodoConnection! | To-do items for the current user. | +| `descendantCounts` | EpicDescendantCount | Number of open and closed descendant epics and issues. | +| `descendantWeightSum` | EpicDescendantWeights | Total weight of open and closed issues in the epic and its descendants. | +| `description` | String | Description of the epic. | | `discussions` | DiscussionConnection! | All discussions on this noteable | -| `downvotes` | Int! | Number of downvotes the epic has received | -| `dueDate` | Time | Due date of the epic | -| `dueDateFixed` | Time | Fixed due date of the epic | -| `dueDateFromMilestones` | Time | Inherited due date of the epic from milestones | -| `dueDateIsFixed` | Boolean | Indicates if the due date has been manually set | -| `group` | Group! | Group to which the epic belongs | -| `hasChildren` | Boolean! | Indicates if the epic has children | -| `hasIssues` | Boolean! | Indicates if the epic has direct issues | -| `hasParent` | Boolean! | Indicates if the epic has a parent epic | -| `healthStatus` | EpicHealthStatus | Current health status of the epic | -| `id` | ID! | ID of the epic | -| `iid` | ID! | Internal ID of the epic | -| `issues` | EpicIssueConnection | A list of issues associated with the epic | -| `labels` | LabelConnection | Labels assigned to the epic | +| `downvotes` | Int! | Number of downvotes the epic has received. | +| `dueDate` | Time | Due date of the epic. | +| `dueDateFixed` | Time | Fixed due date of the epic. | +| `dueDateFromMilestones` | Time | Inherited due date of the epic from milestones. | +| `dueDateIsFixed` | Boolean | Indicates if the due date has been manually set. | +| `group` | Group! | Group to which the epic belongs. | +| `hasChildren` | Boolean! | Indicates if the epic has children. | +| `hasIssues` | Boolean! | Indicates if the epic has direct issues. | +| `hasParent` | Boolean! | Indicates if the epic has a parent epic. | +| `healthStatus` | EpicHealthStatus | Current health status of the epic. | +| `id` | ID! | ID of the epic. | +| `iid` | ID! | Internal ID of the epic. | +| `issues` | EpicIssueConnection | A list of issues associated with the epic. | +| `labels` | LabelConnection | Labels assigned to the epic. | | `notes` | NoteConnection! | All notes on this noteable | -| `parent` | Epic | Parent epic of the epic | -| `participants` | UserConnection | List of participants for the epic | -| `reference` | String! | Internal reference of the epic. Returned in shortened format by default | -| `relationPath` | String | URI path of the epic-issue relationship | -| `relativePosition` | Int | The relative position of the epic in the epic tree | -| `startDate` | Time | Start date of the epic | -| `startDateFixed` | Time | Fixed start date of the epic | -| `startDateFromMilestones` | Time | Inherited start date of the epic from milestones | -| `startDateIsFixed` | Boolean | Indicates if the start date has been manually set | -| `state` | EpicState! | State of the epic | -| `subscribed` | Boolean! | Indicates the currently logged in user is subscribed to the epic | -| `title` | String | Title of the epic | -| `updatedAt` | Time | Timestamp of when the epic was updated | -| `upvotes` | Int! | Number of upvotes the epic has received | -| `userDiscussionsCount` | Int! | Number of user discussions in the epic | -| `userNotesCount` | Int! | Number of user notes of the epic | +| `parent` | Epic | Parent epic of the epic. | +| `participants` | UserConnection | List of participants for the epic. | +| `reference` | String! | Internal reference of the epic. Returned in shortened format by default. | +| `relationPath` | String | URI path of the epic-issue relationship. | +| `relativePosition` | Int | The relative position of the epic in the epic tree. | +| `startDate` | Time | Start date of the epic. | +| `startDateFixed` | Time | Fixed start date of the epic. | +| `startDateFromMilestones` | Time | Inherited start date of the epic from milestones. | +| `startDateIsFixed` | Boolean | Indicates if the start date has been manually set. | +| `state` | EpicState! | State of the epic. | +| `subscribed` | Boolean! | Indicates the currently logged in user is subscribed to the epic. | +| `title` | String | Title of the epic. | +| `updatedAt` | Time | Timestamp of when the epic was updated. | +| `upvotes` | Int! | Number of upvotes the epic has received. | +| `userDiscussionsCount` | Int! | Number of user discussions in the epic. | +| `userNotesCount` | Int! | Number of user notes of the epic. | | `userPermissions` | EpicPermissions! | Permissions for the current user on the resource | | `userPreferences` | BoardEpicUserPreferences | User preferences for the epic on the issue board | -| `webPath` | String! | Web path of the epic | -| `webUrl` | String! | Web URL of the epic | +| `webPath` | String! | Web path of the epic. | +| `webUrl` | String! | Web URL of the epic. | ### BoardEpicUserPreferences @@ -323,19 +334,19 @@ Represents a list for an issue board. | Field | Type | Description | | ----- | ---- | ----------- | | `assignee` | User | Assignee in the list | -| `collapsed` | Boolean | Indicates if list is collapsed for this user | -| `id` | ID! | ID (global ID) of the list | -| `issues` | IssueConnection | Board issues | -| `issuesCount` | Int | Count of issues in the list | +| `collapsed` | Boolean | Indicates if list is collapsed for this user. | +| `id` | ID! | ID (global ID) of the list. | +| `issues` | IssueConnection | Board issues. | +| `issuesCount` | Int | Count of issues in the list. | | `iteration` | Iteration | Iteration of the list | -| `label` | Label | Label of the list | +| `label` | Label | Label of the list. | | `limitMetric` | ListLimitMetric | The current limit metric for the list | -| `listType` | String! | Type of the list | +| `listType` | String! | Type of the list. | | `maxIssueCount` | Int | Maximum number of issues in the list | | `maxIssueWeight` | Int | Maximum weight of issues in the list | | `milestone` | Milestone | Milestone of the list | -| `position` | Int | Position of list within the board | -| `title` | String! | Title of the list | +| `position` | Int | Position of list within the board. | +| `title` | String! | Title of the list. | | `totalWeight` | Int | Total weight of all issues in the list | ### BoardListCreatePayload @@ -362,8 +373,8 @@ Autogenerated return type of BoardListUpdateLimitMetrics. | Field | Type | Description | | ----- | ---- | ----------- | -| `commit` | Commit | Commit for the branch | -| `name` | String! | Name of the branch | +| `commit` | Commit | Commit for the branch. | +| `name` | String! | Name of the branch. | ### BurnupChartDailyTotals @@ -396,18 +407,18 @@ Autogenerated return type of CiCdSettingsUpdate. | Field | Type | Description | | ----- | ---- | ----------- | -| `errors` | String! => Array | Linting errors | -| `mergedYaml` | String | Merged CI config YAML | -| `stages` | CiConfigStageConnection | Stages of the pipeline | -| `status` | CiConfigStatus | Status of linting, can be either valid or invalid | +| `errors` | String! => Array | Linting errors. | +| `mergedYaml` | String | Merged CI configuration YAML. | +| `stages` | CiConfigStageConnection | Stages of the pipeline. | +| `status` | CiConfigStatus | Status of linting, can be either valid or invalid. | ### CiConfigGroup | Field | Type | Description | | ----- | ---- | ----------- | -| `jobs` | CiConfigJobConnection | Jobs in group | -| `name` | String | Name of the job group | -| `size` | Int | Size of the job group | +| `jobs` | CiConfigJobConnection | Jobs in group. | +| `name` | String | Name of the job group. | +| `size` | Int | Size of the job group. | ### CiConfigJob @@ -437,49 +448,49 @@ Autogenerated return type of CiCdSettingsUpdate. | Field | Type | Description | | ----- | ---- | ----------- | -| `name` | String | Name of the need | +| `name` | String | Name of the need. | ### CiConfigStage | Field | Type | Description | | ----- | ---- | ----------- | -| `groups` | CiConfigGroupConnection | Groups of jobs for the stage | -| `name` | String | Name of the stage | +| `groups` | CiConfigGroupConnection | Groups of jobs for the stage. | +| `name` | String | Name of the stage. | ### CiGroup | Field | Type | Description | | ----- | ---- | ----------- | -| `detailedStatus` | DetailedStatus | Detailed status of the group | -| `jobs` | CiJobConnection | Jobs in group | -| `name` | String | Name of the job group | -| `size` | Int | Size of the group | +| `detailedStatus` | DetailedStatus | Detailed status of the group. | +| `jobs` | CiJobConnection | Jobs in group. | +| `name` | String | Name of the job group. | +| `size` | Int | Size of the group. | ### CiJob | Field | Type | Description | | ----- | ---- | ----------- | -| `artifacts` | CiJobArtifactConnection | Artifacts generated by the job | -| `detailedStatus` | DetailedStatus | Detailed status of the job | -| `name` | String | Name of the job | -| `needs` | CiBuildNeedConnection | References to builds that must complete before the jobs run | -| `pipeline` | Pipeline | Pipeline the job belongs to | -| `scheduledAt` | Time | Schedule for the build | +| `artifacts` | CiJobArtifactConnection | Artifacts generated by the job. | +| `detailedStatus` | DetailedStatus | Detailed status of the job. | +| `name` | String | Name of the job. | +| `needs` | CiBuildNeedConnection | References to builds that must complete before the jobs run. | +| `pipeline` | Pipeline | Pipeline the job belongs to. | +| `scheduledAt` | Time | Schedule for the build. | ### CiJobArtifact | Field | Type | Description | | ----- | ---- | ----------- | -| `downloadPath` | String | URL for downloading the artifact's file | -| `fileType` | JobArtifactFileType | File type of the artifact | +| `downloadPath` | String | URL for downloading the artifact's file. | +| `fileType` | JobArtifactFileType | File type of the artifact. | ### CiStage | Field | Type | Description | | ----- | ---- | ----------- | -| `detailedStatus` | DetailedStatus | Detailed status of the stage | -| `groups` | CiGroupConnection | Group of jobs for the stage | -| `name` | String | Name of the stage | +| `detailedStatus` | DetailedStatus | Detailed status of the stage. | +| `groups` | CiGroupConnection | Group of jobs for the stage. | +| `name` | String | Name of the stage. | ### ClusterAgent @@ -554,22 +565,22 @@ Represents the code coverage summary for a project. | Field | Type | Description | | ----- | ---- | ----------- | -| `author` | User | Author of the commit | -| `authorGravatar` | String | Commit authors gravatar | -| `authorName` | String | Commit authors name | -| `authoredDate` | Time | Timestamp of when the commit was authored | -| `description` | String | Description of the commit message | +| `author` | User | Author of the commit. | +| `authorGravatar` | String | Commit authors gravatar. | +| `authorName` | String | Commit authors name. | +| `authoredDate` | Time | Timestamp of when the commit was authored. | +| `description` | String | Description of the commit message. | | `descriptionHtml` | String | The GitLab Flavored Markdown rendering of `description` | -| `id` | ID! | ID (global ID) of the commit | -| `message` | String | Raw commit message | -| `pipelines` | PipelineConnection | Pipelines of the commit ordered latest first | -| `sha` | String! | SHA1 ID of the commit | -| `shortId` | String! | Short SHA1 ID of the commit | -| `signatureHtml` | String | Rendered HTML of the commit signature | -| `title` | String | Title of the commit message | +| `id` | ID! | ID (global ID) of the commit. | +| `message` | String | Raw commit message. | +| `pipelines` | PipelineConnection | Pipelines of the commit ordered latest first. | +| `sha` | String! | SHA1 ID of the commit. | +| `shortId` | String! | Short SHA1 ID of the commit. | +| `signatureHtml` | String | Rendered HTML of the commit signature. | +| `title` | String | Title of the commit message. | | `titleHtml` | String | The GitLab Flavored Markdown rendering of `title` | -| `webPath` | String! | Web path of the commit | -| `webUrl` | String! | Web URL of the commit | +| `webPath` | String! | Web path of the commit. | +| `webUrl` | String! | Web URL of the commit. | ### CommitCreatePayload @@ -591,6 +602,16 @@ Represents a ComplianceFramework associated with a Project. | `description` | String! | Description of the compliance framework | | `id` | ID! | Compliance framework ID | | `name` | String! | Name of the compliance framework | +| `pipelineConfigurationFullPath` | String | Full path of the compliance pipeline configuration stored in a project repository, such as `.gitlab/compliance/soc2/.gitlab-ci.yml`. | + +### ComposerMetadata + +Composer metadata. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `composerJson` | PackageComposerJsonType! | Data of the Composer JSON file. | +| `targetSha` | String! | Target SHA of the package. | ### ConfigureSastPayload @@ -609,15 +630,15 @@ A tag expiration policy designed to keep only the images that matter most. | Field | Type | Description | | ----- | ---- | ----------- | -| `cadence` | ContainerExpirationPolicyCadenceEnum! | This container expiration policy schedule | -| `createdAt` | Time! | Timestamp of when the container expiration policy was created | -| `enabled` | Boolean! | Indicates whether this container expiration policy is enabled | -| `keepN` | ContainerExpirationPolicyKeepEnum | Number of tags to retain | -| `nameRegex` | UntrustedRegexp | Tags with names matching this regex pattern will expire | -| `nameRegexKeep` | UntrustedRegexp | Tags with names matching this regex pattern will be preserved | -| `nextRunAt` | Time | Next time that this container expiration policy will get executed | -| `olderThan` | ContainerExpirationPolicyOlderThanEnum | Tags older that this will expire | -| `updatedAt` | Time! | Timestamp of when the container expiration policy was updated | +| `cadence` | ContainerExpirationPolicyCadenceEnum! | This container expiration policy schedule. | +| `createdAt` | Time! | Timestamp of when the container expiration policy was created. | +| `enabled` | Boolean! | Indicates whether this container expiration policy is enabled. | +| `keepN` | ContainerExpirationPolicyKeepEnum | Number of tags to retain. | +| `nameRegex` | UntrustedRegexp | Tags with names matching this regex pattern will expire. | +| `nameRegexKeep` | UntrustedRegexp | Tags with names matching this regex pattern will be preserved. | +| `nextRunAt` | Time | Next time that this container expiration policy will get executed. | +| `olderThan` | ContainerExpirationPolicyOlderThanEnum | Tags older that this will expire. | +| `updatedAt` | Time! | Timestamp of when the container expiration policy was updated. | ### ContainerRepository @@ -633,7 +654,7 @@ A container repository. | `location` | String! | URL of the container repository. | | `name` | String! | Name of the container repository. | | `path` | String! | Path of the container repository. | -| `project` | Project! | Project of the container registry | +| `project` | Project! | Project of the container registry. | | `status` | ContainerRepositoryStatus | Status of the container repository. | | `tagsCount` | Int! | Number of tags associated with this image. | | `updatedAt` | Time! | Timestamp when the container repository was updated. | @@ -652,9 +673,9 @@ Details of a container repository. | `location` | String! | URL of the container repository. | | `name` | String! | Name of the container repository. | | `path` | String! | Path of the container repository. | -| `project` | Project! | Project of the container registry | +| `project` | Project! | Project of the container registry. | | `status` | ContainerRepositoryStatus | Status of the container repository. | -| `tags` | ContainerRepositoryTagConnection | Tags of the container repository | +| `tags` | ContainerRepositoryTagConnection | Tags of the container repository. | | `tagsCount` | Int! | Number of tags associated with this image. | | `updatedAt` | Time! | Timestamp when the container repository was updated. | @@ -684,7 +705,7 @@ Autogenerated return type of CreateAlertIssue. | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `issue` | Issue | The issue created after mutation. | -| `todo` | Todo | The todo after mutation. | +| `todo` | Todo | The to-do item after mutation. | ### CreateAnnotationPayload @@ -832,10 +853,13 @@ Autogenerated return type of CreateSnippet. | Field | Type | Description | | ----- | ---- | ----------- | +| `captchaSiteKey` | String | The CAPTCHA site key which must be used to render a challenge for the user to solve to obtain a valid captchaResponse value. Included only when an operation was not completed because "NeedsCaptchaResponse" is true. | | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | +| `needsCaptchaResponse` | Boolean | Indicates whether the operation was detected as possible spam and not completed. If CAPTCHA is enabled, the request must be resubmitted with a valid CAPTCHA response and spam_log_id included for the operation to be completed. Included only when an operation was not completed because "NeedsCaptchaResponse" is true. | | `snippet` | Snippet | The snippet after mutation. | -| `spam` | Boolean | Indicates whether the operation returns a record detected as spam. | +| `spam` | Boolean | Indicates whether the operation was detected as definite spam. There is no option to resubmit the request with a CAPTCHA response. | +| `spamLogId` | Int | The spam log ID which must be passed along with a valid CAPTCHA response for an operation to be completed. Included only when an operation was not completed because "NeedsCaptchaResponse" is true. | ### CreateTestCasePayload @@ -853,10 +877,10 @@ A custom emoji uploaded by user. | Field | Type | Description | | ----- | ---- | ----------- | -| `external` | Boolean! | Whether the emoji is an external link | -| `id` | CustomEmojiID! | The ID of the emoji | -| `name` | String! | The name of the emoji | -| `url` | String! | The link to file of the emoji | +| `external` | Boolean! | Whether the emoji is an external link. | +| `id` | CustomEmojiID! | The ID of the emoji. | +| `name` | String! | The name of the emoji. | +| `url` | String! | The link to file of the emoji. | ### DastOnDemandScanCreatePayload @@ -868,6 +892,30 @@ Autogenerated return type of DastOnDemandScanCreate. | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `pipelineUrl` | String | URL of the pipeline that was created. | +### DastProfile + +Represents a DAST Profile. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `dastScannerProfile` | DastScannerProfile | The associated scanner profile. | +| `dastSiteProfile` | DastSiteProfile | The associated site profile. | +| `description` | String | The description of the scan. | +| `editPath` | String | Relative web path to the edit page of a profile. | +| `id` | DastProfileID! | ID of the profile. | +| `name` | String | The name of the profile. | + +### DastProfileCreatePayload + +Autogenerated return type of DastProfileCreate. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `dastProfile` | DastProfile | The created profile. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | +| `pipelineUrl` | String! | The URL of the pipeline that was created. Requires `runAfterCreate` to be set to `true`. | + ### DastScannerProfile Represents a DAST scanner profile. @@ -998,6 +1046,15 @@ Autogenerated return type of DastSiteValidationCreate. | `id` | DastSiteValidationID | ID of the site validation. | | `status` | DastSiteProfileValidationStatusEnum | The current validation status. | +### DastSiteValidationRevokePayload + +Autogenerated return type of DastSiteValidationRevoke. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | + ### DeleteAnnotationPayload Autogenerated return type of DeleteAnnotation. @@ -1022,9 +1079,9 @@ The response from the AdminSidekiqQueuesDeleteJobs mutation. | Field | Type | Description | | ----- | ---- | ----------- | -| `completed` | Boolean | Whether or not the entire queue was processed in time; if not, retrying the same request is safe | -| `deletedJobs` | Int | The number of matching jobs deleted | -| `queueSize` | Int | The queue size after processing | +| `completed` | Boolean | Whether or not the entire queue was processed in time; if not, retrying the same request is safe. | +| `deletedJobs` | Int | The number of matching jobs deleted. | +| `queueSize` | Int | The queue size after processing. | ### Design @@ -1032,20 +1089,20 @@ A single design. | Field | Type | Description | | ----- | ---- | ----------- | -| `currentUserTodos` | TodoConnection! | Todos for the current user | -| `diffRefs` | DiffRefs! | The diff refs for this design | +| `currentUserTodos` | TodoConnection! | To-do items for the current user. | +| `diffRefs` | DiffRefs! | The diff refs for this design. | | `discussions` | DiscussionConnection! | All discussions on this noteable | -| `event` | DesignVersionEvent! | How this design was changed in the current version | -| `filename` | String! | The filename of the design | -| `fullPath` | String! | The full path to the design file | -| `id` | ID! | The ID of this design | -| `image` | String! | The URL of the full-sized image | +| `event` | DesignVersionEvent! | How this design was changed in the current version. | +| `filename` | String! | The filename of the design. | +| `fullPath` | String! | The full path to the design file. | +| `id` | ID! | The ID of this design. | +| `image` | String! | The URL of the full-sized image. | | `imageV432x230` | String | The URL of the design resized to fit within the bounds of 432x230. This will be `null` if the image has not been generated | -| `issue` | Issue! | The issue the design belongs to | +| `issue` | Issue! | The issue the design belongs to. | | `notes` | NoteConnection! | All notes on this noteable | -| `notesCount` | Int! | The total count of user-created notes for this design | -| `project` | Project! | The project the design belongs to | -| `versions` | DesignVersionConnection! | All versions related to this design ordered newest first | +| `notesCount` | Int! | The total count of user-created notes for this design. | +| `project` | Project! | The project the design belongs to. | +| `versions` | DesignVersionConnection! | All versions related to this design ordered newest first. | ### DesignAtVersion @@ -1053,18 +1110,18 @@ A design pinned to a specific version. The image field reflects the design as of | Field | Type | Description | | ----- | ---- | ----------- | -| `design` | Design! | The underlying design | -| `diffRefs` | DiffRefs! | The diff refs for this design | -| `event` | DesignVersionEvent! | How this design was changed in the current version | -| `filename` | String! | The filename of the design | -| `fullPath` | String! | The full path to the design file | -| `id` | ID! | The ID of this design | -| `image` | String! | The URL of the full-sized image | +| `design` | Design! | The underlying design. | +| `diffRefs` | DiffRefs! | The diff refs for this design. | +| `event` | DesignVersionEvent! | How this design was changed in the current version. | +| `filename` | String! | The filename of the design. | +| `fullPath` | String! | The full path to the design file. | +| `id` | ID! | The ID of this design. | +| `image` | String! | The URL of the full-sized image. | | `imageV432x230` | String | The URL of the design resized to fit within the bounds of 432x230. This will be `null` if the image has not been generated | -| `issue` | Issue! | The issue the design belongs to | -| `notesCount` | Int! | The total count of user-created notes for this design | -| `project` | Project! | The project the design belongs to | -| `version` | DesignVersion! | The version this design-at-versions is pinned to | +| `issue` | Issue! | The issue the design belongs to. | +| `notesCount` | Int! | The total count of user-created notes for this design. | +| `project` | Project! | The project the design belongs to. | +| `version` | DesignVersion! | The version this design-at-versions is pinned to. | ### DesignCollection @@ -1072,21 +1129,21 @@ A collection of designs. | Field | Type | Description | | ----- | ---- | ----------- | -| `copyState` | DesignCollectionCopyState | Copy state of the design collection | -| `design` | Design | Find a specific design | -| `designAtVersion` | DesignAtVersion | Find a design as of a version | -| `designs` | DesignConnection! | All designs for the design collection | -| `issue` | Issue! | Issue associated with the design collection | -| `project` | Project! | Project associated with the design collection | -| `version` | DesignVersion | A specific version | -| `versions` | DesignVersionConnection! | All versions related to all designs, ordered newest first | +| `copyState` | DesignCollectionCopyState | Copy state of the design collection. | +| `design` | Design | Find a specific design. | +| `designAtVersion` | DesignAtVersion | Find a design as of a version. | +| `designs` | DesignConnection! | All designs for the design collection. | +| `issue` | Issue! | Issue associated with the design collection. | +| `project` | Project! | Project associated with the design collection. | +| `version` | DesignVersion | A specific version. | +| `versions` | DesignVersionConnection! | All versions related to all designs, ordered newest first. | ### DesignManagement | Field | Type | Description | | ----- | ---- | ----------- | -| `designAtVersion` | DesignAtVersion | Find a design as of a version | -| `version` | DesignVersion | Find a version | +| `designAtVersion` | DesignAtVersion | Find a design as of a version. | +| `version` | DesignVersion | Find a version. | ### DesignManagementDeletePayload @@ -1125,11 +1182,11 @@ A specific version in which designs were added, modified or deleted. | Field | Type | Description | | ----- | ---- | ----------- | -| `designAtVersion` | DesignAtVersion! | A particular design as of this version, provided it is visible at this version | -| `designs` | DesignConnection! | All designs that were changed in the version | -| `designsAtVersion` | DesignAtVersionConnection! | All designs that are visible at this version, as of this version | -| `id` | ID! | ID of the design version | -| `sha` | ID! | SHA of the design version | +| `designAtVersion` | DesignAtVersion! | A particular design as of this version, provided it is visible at this version. | +| `designs` | DesignConnection! | All designs that were changed in the version. | +| `designsAtVersion` | DesignAtVersionConnection! | All designs that are visible at this version, as of this version. | +| `id` | ID! | ID of the design version. | +| `sha` | ID! | SHA of the design version. | ### DestroyBoardListPayload @@ -1204,15 +1261,15 @@ Autogenerated return type of DestroySnippet. | Field | Type | Description | | ----- | ---- | ----------- | -| `action` | StatusAction | Action information for the status. This includes method, button title, icon, path, and title | -| `detailsPath` | String | Path of the details for the status | -| `favicon` | String | Favicon of the status | -| `group` | String | Group of the status | -| `hasDetails` | Boolean | Indicates if the status has further details | -| `icon` | String | Icon of the status | -| `label` | String | Label of the status | -| `text` | String | Text of the status | -| `tooltip` | String | Tooltip associated with the status | +| `action` | StatusAction | Action information for the status. This includes method, button title, icon, path, and title. | +| `detailsPath` | String | Path of the details for the status. | +| `favicon` | String | Favicon of the status. | +| `group` | String | Group of the status. | +| `hasDetails` | Boolean | Indicates if the status has further details. | +| `icon` | String | Icon of the status. | +| `label` | String | Label of the status. | +| `text` | String | Text of the status. | +| `tooltip` | String | Tooltip associated with the status. | ### DevopsAdoptionSegment @@ -1262,9 +1319,9 @@ Snapshot. | Field | Type | Description | | ----- | ---- | ----------- | -| `baseSha` | String | Merge base of the branch the comment was made on | -| `headSha` | String! | SHA of the HEAD at the time the comment was made | -| `startSha` | String! | SHA of the branch being compared against | +| `baseSha` | String | Merge base of the branch the comment was made on. | +| `headSha` | String! | SHA of the HEAD at the time the comment was made. | +| `startSha` | String! | SHA of the branch being compared against. | ### DiffStats @@ -1272,9 +1329,9 @@ Changes to a single file. | Field | Type | Description | | ----- | ---- | ----------- | -| `additions` | Int! | Number of lines added to this file | -| `deletions` | Int! | Number of lines deleted from this file | -| `path` | String! | File path, relative to repository root | +| `additions` | Int! | Number of lines added to this file. | +| `deletions` | Int! | Number of lines deleted from this file. | +| `path` | String! | File path, relative to repository root. | ### DiffStatsSummary @@ -1282,19 +1339,19 @@ Aggregated summary of changes. | Field | Type | Description | | ----- | ---- | ----------- | -| `additions` | Int! | Number of lines added | -| `changes` | Int! | Number of lines changed | -| `deletions` | Int! | Number of lines deleted | -| `fileCount` | Int! | Number of files changed | +| `additions` | Int! | Number of lines added. | +| `changes` | Int! | Number of lines changed. | +| `deletions` | Int! | Number of lines deleted. | +| `fileCount` | Int! | Number of files changed. | ### Discussion | Field | Type | Description | | ----- | ---- | ----------- | | `createdAt` | Time! | Timestamp of the discussion's creation | -| `id` | ID! | ID of this discussion | +| `id` | DiscussionID! | ID of this discussion | | `notes` | NoteConnection! | All notes in the discussion | -| `replyId` | ID! | ID used to reply to this discussion | +| `replyId` | DiscussionID! | ID used to reply to this discussion | | `resolvable` | Boolean! | Indicates if the object can be resolved | | `resolved` | Boolean! | Indicates if the object is resolved | | `resolvedAt` | Time | Timestamp of when the object was resolved | @@ -1326,12 +1383,12 @@ Describes where code is deployed for a project. | Field | Type | Description | | ----- | ---- | ----------- | -| `id` | ID! | ID of the environment | -| `latestOpenedMostSevereAlert` | AlertManagementAlert | The most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned | -| `metricsDashboard` | MetricsDashboard | Metrics dashboard schema for the environment | -| `name` | String! | Human-readable name of the environment | +| `id` | ID! | ID of the environment. | +| `latestOpenedMostSevereAlert` | AlertManagementAlert | The most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned. | +| `metricsDashboard` | MetricsDashboard | Metrics dashboard schema for the environment. | +| `name` | String! | Human-readable name of the environment. | | `path` | String! | The path to the environment. | -| `state` | String! | State of the environment, for example: available/stopped | +| `state` | String! | State of the environment, for example: available/stopped. | ### EnvironmentsCanaryIngressUpdatePayload @@ -1348,50 +1405,51 @@ Represents an epic. | Field | Type | Description | | ----- | ---- | ----------- | -| `author` | User! | Author of the epic | -| `children` | EpicConnection | Children (sub-epics) of the epic | -| `closedAt` | Time | Timestamp of when the epic was closed | -| `confidential` | Boolean | Indicates if the epic is confidential | -| `createdAt` | Time | Timestamp of when the epic was created | -| `currentUserTodos` | TodoConnection! | Todos for the current user | -| `descendantCounts` | EpicDescendantCount | Number of open and closed descendant epics and issues | -| `descendantWeightSum` | EpicDescendantWeights | Total weight of open and closed issues in the epic and its descendants | -| `description` | String | Description of the epic | +| `author` | User! | Author of the epic. | +| `awardEmoji` | AwardEmojiConnection | A list of award emojis associated with the epic. | +| `children` | EpicConnection | Children (sub-epics) of the epic. | +| `closedAt` | Time | Timestamp of when the epic was closed. | +| `confidential` | Boolean | Indicates if the epic is confidential. | +| `createdAt` | Time | Timestamp of when the epic was created. | +| `currentUserTodos` | TodoConnection! | To-do items for the current user. | +| `descendantCounts` | EpicDescendantCount | Number of open and closed descendant epics and issues. | +| `descendantWeightSum` | EpicDescendantWeights | Total weight of open and closed issues in the epic and its descendants. | +| `description` | String | Description of the epic. | | `discussions` | DiscussionConnection! | All discussions on this noteable | -| `downvotes` | Int! | Number of downvotes the epic has received | -| `dueDate` | Time | Due date of the epic | -| `dueDateFixed` | Time | Fixed due date of the epic | -| `dueDateFromMilestones` | Time | Inherited due date of the epic from milestones | -| `dueDateIsFixed` | Boolean | Indicates if the due date has been manually set | -| `group` | Group! | Group to which the epic belongs | -| `hasChildren` | Boolean! | Indicates if the epic has children | -| `hasIssues` | Boolean! | Indicates if the epic has direct issues | -| `hasParent` | Boolean! | Indicates if the epic has a parent epic | -| `healthStatus` | EpicHealthStatus | Current health status of the epic | -| `id` | ID! | ID of the epic | -| `iid` | ID! | Internal ID of the epic | -| `issues` | EpicIssueConnection | A list of issues associated with the epic | -| `labels` | LabelConnection | Labels assigned to the epic | +| `downvotes` | Int! | Number of downvotes the epic has received. | +| `dueDate` | Time | Due date of the epic. | +| `dueDateFixed` | Time | Fixed due date of the epic. | +| `dueDateFromMilestones` | Time | Inherited due date of the epic from milestones. | +| `dueDateIsFixed` | Boolean | Indicates if the due date has been manually set. | +| `group` | Group! | Group to which the epic belongs. | +| `hasChildren` | Boolean! | Indicates if the epic has children. | +| `hasIssues` | Boolean! | Indicates if the epic has direct issues. | +| `hasParent` | Boolean! | Indicates if the epic has a parent epic. | +| `healthStatus` | EpicHealthStatus | Current health status of the epic. | +| `id` | ID! | ID of the epic. | +| `iid` | ID! | Internal ID of the epic. | +| `issues` | EpicIssueConnection | A list of issues associated with the epic. | +| `labels` | LabelConnection | Labels assigned to the epic. | | `notes` | NoteConnection! | All notes on this noteable | -| `parent` | Epic | Parent epic of the epic | -| `participants` | UserConnection | List of participants for the epic | -| `reference` | String! | Internal reference of the epic. Returned in shortened format by default | -| `relationPath` | String | URI path of the epic-issue relationship | -| `relativePosition` | Int | The relative position of the epic in the epic tree | -| `startDate` | Time | Start date of the epic | -| `startDateFixed` | Time | Fixed start date of the epic | -| `startDateFromMilestones` | Time | Inherited start date of the epic from milestones | -| `startDateIsFixed` | Boolean | Indicates if the start date has been manually set | -| `state` | EpicState! | State of the epic | -| `subscribed` | Boolean! | Indicates the currently logged in user is subscribed to the epic | -| `title` | String | Title of the epic | -| `updatedAt` | Time | Timestamp of when the epic was updated | -| `upvotes` | Int! | Number of upvotes the epic has received | -| `userDiscussionsCount` | Int! | Number of user discussions in the epic | -| `userNotesCount` | Int! | Number of user notes of the epic | +| `parent` | Epic | Parent epic of the epic. | +| `participants` | UserConnection | List of participants for the epic. | +| `reference` | String! | Internal reference of the epic. Returned in shortened format by default. | +| `relationPath` | String | URI path of the epic-issue relationship. | +| `relativePosition` | Int | The relative position of the epic in the epic tree. | +| `startDate` | Time | Start date of the epic. | +| `startDateFixed` | Time | Fixed start date of the epic. | +| `startDateFromMilestones` | Time | Inherited start date of the epic from milestones. | +| `startDateIsFixed` | Boolean | Indicates if the start date has been manually set. | +| `state` | EpicState! | State of the epic. | +| `subscribed` | Boolean! | Indicates the currently logged in user is subscribed to the epic. | +| `title` | String | Title of the epic. | +| `updatedAt` | Time | Timestamp of when the epic was updated. | +| `upvotes` | Int! | Number of upvotes the epic has received. | +| `userDiscussionsCount` | Int! | Number of user discussions in the epic. | +| `userNotesCount` | Int! | Number of user notes of the epic. | | `userPermissions` | EpicPermissions! | Permissions for the current user on the resource | -| `webPath` | String! | Web path of the epic | -| `webUrl` | String! | Web URL of the epic | +| `webPath` | String! | Web path of the epic. | +| `webUrl` | String! | Web URL of the epic. | ### EpicAddIssuePayload @@ -1414,6 +1472,16 @@ Represents an epic board. | `lists` | EpicListConnection | Epic board lists. | | `name` | String | Name of the board. | +### EpicBoardCreatePayload + +Autogenerated return type of EpicBoardCreate. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `epicBoard` | EpicBoard | The created epic board. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | + ### EpicDescendantCount Counts of descendent epics. @@ -1459,7 +1527,7 @@ Relationship between an epic and an issue. | `confidential` | Boolean! | Indicates the issue is confidential | | `createNoteEmail` | String | User specific email address for the issue | | `createdAt` | Time! | Timestamp of when the issue was created | -| `currentUserTodos` | TodoConnection! | Todos for the current user | +| `currentUserTodos` | TodoConnection! | To-do items for the current user. | | `description` | String | Description of the issue | | `descriptionHtml` | String | The GitLab Flavored Markdown rendering of `description` | | `designCollection` | DesignCollection | Collection of design images associated with this issue | @@ -1601,15 +1669,24 @@ Represents an external issue. | `url` | String | The user-facing URL for this Geo node | | `verificationMaxCapacity` | Int | The maximum concurrency of repository verification for this secondary node | +### GitlabSubscriptionActivatePayload + +Autogenerated return type of GitlabSubscriptionActivate. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | + ### GrafanaIntegration | Field | Type | Description | | ----- | ---- | ----------- | -| `createdAt` | Time! | Timestamp of the issue's creation | -| `enabled` | Boolean! | Indicates whether Grafana integration is enabled | -| `grafanaUrl` | String! | URL for the Grafana host for the Grafana integration | -| `id` | ID! | Internal ID of the Grafana integration | -| `updatedAt` | Time! | Timestamp of the issue's last activity | +| `createdAt` | Time! | Timestamp of the issue's creation. | +| `enabled` | Boolean! | Indicates whether Grafana integration is enabled. | +| `grafanaUrl` | String! | URL for the Grafana host for the Grafana integration. | +| `id` | ID! | Internal ID of the Grafana integration. | +| `updatedAt` | Time! | Timestamp of the issue's last activity. | ### Group @@ -1617,19 +1694,19 @@ Represents an external issue. | ----- | ---- | ----------- | | `actualRepositorySizeLimit` | Float | Size limit for repositories in the namespace in bytes | | `additionalPurchasedStorageSize` | Float | Additional storage purchased for the root namespace in bytes | -| `autoDevopsEnabled` | Boolean | Indicates whether Auto DevOps is enabled for all projects within this group | -| `avatarUrl` | String | Avatar URL of the group | -| `board` | Board | A single board of the group | -| `boards` | BoardConnection | Boards of the group | +| `autoDevopsEnabled` | Boolean | Indicates whether Auto DevOps is enabled for all projects within this group. | +| `avatarUrl` | String | Avatar URL of the group. | +| `board` | Board | A single board of the group. | +| `boards` | BoardConnection | Boards of the group. | | `codeCoverageActivities` | CodeCoverageActivityConnection | Represents the code coverage activity for this group | | `complianceFrameworks` | ComplianceFrameworkConnection | Compliance frameworks available to projects in this namespace. Available only when feature flag `ff_custom_compliance_frameworks` is enabled. | -| `containerRepositories` | ContainerRepositoryConnection | Container repositories of the group | -| `containerRepositoriesCount` | Int! | Number of container repositories in the group | +| `containerRepositories` | ContainerRepositoryConnection | Container repositories of the group. | +| `containerRepositoriesCount` | Int! | Number of container repositories in the group. | | `containsLockedProjects` | Boolean! | Includes at least one project where the repository size exceeds the limit | -| `customEmoji` | CustomEmojiConnection | Custom emoji within this namespace Available only when feature flag `custom_emoji` is enabled. | +| `customEmoji` | CustomEmojiConnection | Custom emoji within this namespace. Available only when feature flag `custom_emoji` is enabled. | | `description` | String | Description of the namespace | | `descriptionHtml` | String | The GitLab Flavored Markdown rendering of `description` | -| `emailsDisabled` | Boolean | Indicates if a group has email notifications disabled | +| `emailsDisabled` | Boolean | Indicates if a group has email notifications disabled. | | `epic` | Epic | Find a single epic | | `epicBoard` | EpicBoard | Find a single epic board | | `epicBoards` | EpicBoardConnection | Find epic boards | @@ -1637,46 +1714,46 @@ Represents an external issue. | `epicsEnabled` | Boolean | Indicates if Epics are enabled for namespace | | `fullName` | String! | Full name of the namespace | | `fullPath` | ID! | Full path of the namespace | -| `groupMembers` | GroupMemberConnection | A membership of a user within this group | +| `groupMembers` | GroupMemberConnection | A membership of a user within this group. | | `groupTimelogsEnabled` | Boolean | Indicates if Group timelogs are enabled for namespace | | `id` | ID! | ID of the namespace | | `isTemporaryStorageIncreaseEnabled` | Boolean! | Status of the temporary storage increase | -| `issues` | IssueConnection | Issues for projects in this group | +| `issues` | IssueConnection | Issues for projects in this group. | | `iterations` | IterationConnection | Find iterations | -| `label` | Label | A label available on this group | -| `labels` | LabelConnection | Labels available on this group | +| `label` | Label | A label available on this group. | +| `labels` | LabelConnection | Labels available on this group. | | `lfsEnabled` | Boolean | Indicates if Large File Storage (LFS) is enabled for namespace | -| `mentionsDisabled` | Boolean | Indicates if a group is disabled from getting mentioned | -| `mergeRequests` | MergeRequestConnection | Merge requests for projects in this group | -| `milestones` | MilestoneConnection | Milestones of the group | +| `mentionsDisabled` | Boolean | Indicates if a group is disabled from getting mentioned. | +| `mergeRequests` | MergeRequestConnection | Merge requests for projects in this group. | +| `milestones` | MilestoneConnection | Milestones of the group. | | `name` | String! | Name of the namespace | | `packageSettings` | PackageSettings | The package settings for the namespace | -| `parent` | Group | Parent group | +| `parent` | Group | Parent group. | | `path` | String! | Path of the namespace | -| `projectCreationLevel` | String | The permission level required to create projects in the group | +| `projectCreationLevel` | String | The permission level required to create projects in the group. | | `projects` | ProjectConnection! | Projects within this namespace | | `repositorySizeExcessProjectCount` | Int! | Number of projects in the root namespace where the repository size exceeds the limit | | `requestAccessEnabled` | Boolean | Indicates if users can request access to namespace | -| `requireTwoFactorAuthentication` | Boolean | Indicates if all users in this group are required to set up two-factor authentication | +| `requireTwoFactorAuthentication` | Boolean | Indicates if all users in this group are required to set up two-factor authentication. | | `rootStorageStatistics` | RootStorageStatistics | Aggregated storage statistics of the namespace. Only available for root namespaces | -| `shareWithGroupLock` | Boolean | Indicates if sharing a project with another group within this group is prevented | +| `shareWithGroupLock` | Boolean | Indicates if sharing a project with another group within this group is prevented. | | `stats` | GroupStats | Group statistics | | `storageSizeLimit` | Float | Total storage limit of the root namespace in bytes | -| `subgroupCreationLevel` | String | The permission level required to create subgroups within the group | +| `subgroupCreationLevel` | String | The permission level required to create subgroups within the group. | | `temporaryStorageIncreaseEndsOn` | Time | Date until the temporary storage increase is active | | `timelogs` | TimelogConnection! | Time logged in issues by group members | | `totalRepositorySize` | Float | Total repository size of all projects in the root namespace in bytes | | `totalRepositorySizeExcess` | Float | Total excess repository size of all projects in the root namespace in bytes | -| `twoFactorGracePeriod` | Int | Time before two-factor authentication is enforced | +| `twoFactorGracePeriod` | Int | Time before two-factor authentication is enforced. | | `userPermissions` | GroupPermissions! | Permissions for the current user on the resource | | `visibility` | String | Visibility of the namespace | | `vulnerabilities` | VulnerabilityConnection | Vulnerabilities reported on the projects in the group and its subgroups | | `vulnerabilitiesCountByDay` | VulnerabilitiesCountByDayConnection | Number of vulnerabilities per day for the projects in the group and its subgroups | | `vulnerabilitiesCountByDayAndSeverity` **{warning-solid}** | VulnerabilitiesCountByDayAndSeverityConnection | **Deprecated:** Use `vulnerabilitiesCountByDay`. Deprecated in 13.3. | | `vulnerabilityGrades` | VulnerableProjectsByGrade! => Array | Represents vulnerable project counts for each grade | -| `vulnerabilityScanners` | VulnerabilityScannerConnection | Vulnerability scanners reported on the project vulnerabilties of the group and its subgroups | +| `vulnerabilityScanners` | VulnerabilityScannerConnection | Vulnerability scanners reported on the project vulnerabilities of the group and its subgroups | | `vulnerabilitySeveritiesCount` | VulnerabilitySeveritiesCount | Counts for each vulnerability severity in the group and its subgroups | -| `webUrl` | String! | Web URL of the group | +| `webUrl` | String! | Web URL of the group. | ### GroupMember @@ -1688,7 +1765,7 @@ Represents a Group Membership. | `createdAt` | Time | Date and time the membership was created | | `createdBy` | User | User that authorized membership | | `expiresAt` | Time | Date and time the membership expires | -| `group` | Group | Group that a User is a member of | +| `group` | Group | Group that a User is a member of. | | `id` | ID! | ID of the member | | `updatedAt` | Time | Date and time the membership was last updated | | `user` | User! | User that is associated with the member object | @@ -1768,6 +1845,7 @@ Describes an incident management on-call rotation. | `lengthUnit` | OncallRotationUnitEnum | Unit of the on-call rotation length. | | `name` | String! | Name of the on-call rotation. | | `participants` | OncallParticipantTypeConnection | Participants of the on-call rotation. | +| `shifts` | IncidentManagementOncallShiftConnection | Blocks of time for which a participant is on-call within a given time frame. Time frame cannot exceed one month. | | `startsAt` | Time | Start date of the on-call rotation. | ### IncidentManagementOncallSchedule @@ -1782,13 +1860,23 @@ Describes an incident management on-call schedule. | `rotations` | IncidentManagementOncallRotationConnection! | On-call rotations for the on-call schedule | | `timezone` | String! | Time zone of the on-call schedule | +### IncidentManagementOncallShift + +A block of time for which a participant is on-call.. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `endsAt` | Time | End time of the on-call shift. | +| `participant` | OncallParticipantType | Participant assigned to the on-call shift. | +| `startsAt` | Time | Start time of the on-call shift. | + ### InstanceSecurityDashboard | Field | Type | Description | | ----- | ---- | ----------- | | `projects` | ProjectConnection! | Projects selected in Instance Security Dashboard | | `vulnerabilityGrades` | VulnerableProjectsByGrade! => Array | Represents vulnerable project counts for each grade | -| `vulnerabilityScanners` | VulnerabilityScannerConnection | Vulnerability scanners reported on the vulnerabilties from projects selected in Instance Security Dashboard | +| `vulnerabilityScanners` | VulnerabilityScannerConnection | Vulnerability scanners reported on the vulnerabilities from projects selected in Instance Security Dashboard | | `vulnerabilitySeveritiesCount` | VulnerabilitySeveritiesCount | Counts for each vulnerability severity from projects selected in Instance Security Dashboard | ### InstanceStatisticsMeasurement @@ -1797,9 +1885,9 @@ Represents a recorded measurement (object count) for the Admins. | Field | Type | Description | | ----- | ---- | ----------- | -| `count` | Int! | Object count | -| `identifier` | MeasurementIdentifier! | The type of objects being measured | -| `recordedAt` | Time | The time the measurement was recorded | +| `count` | Int! | Object count. | +| `identifier` | MeasurementIdentifier! | The type of objects being measured. | +| `recordedAt` | Time | The time the measurement was recorded. | ### Issue @@ -1814,7 +1902,7 @@ Represents a recorded measurement (object count) for the Admins. | `confidential` | Boolean! | Indicates the issue is confidential | | `createNoteEmail` | String | User specific email address for the issue | | `createdAt` | Time! | Timestamp of when the issue was created | -| `currentUserTodos` | TodoConnection! | Todos for the current user | +| `currentUserTodos` | TodoConnection! | To-do items for the current user. | | `description` | String | Description of the issue | | `descriptionHtml` | String | The GitLab Flavored Markdown rendering of `description` | | `designCollection` | DesignCollection | Collection of design images associated with this issue | @@ -2125,7 +2213,7 @@ Autogenerated return type of MarkAsSpamSnippet. | `commitsWithoutMergeCommits` | CommitConnection | Merge request commits excluding merge commits | | `conflicts` | Boolean! | Indicates if the merge request has conflicts | | `createdAt` | Time! | Timestamp of when the merge request was created | -| `currentUserTodos` | TodoConnection! | Todos for the current user | +| `currentUserTodos` | TodoConnection! | To-do items for the current user. | | `defaultMergeCommitMessage` | String | Default merge commit message of the merge request | | `defaultMergeCommitMessageWithDescription` | String | Default merge commit message of the merge request with description | | `defaultSquashCommitMessage` | String | Default squash commit message of the merge request | @@ -2235,6 +2323,16 @@ Check permissions for the current user on a merge request. | `revertOnCurrentMergeRequest` | Boolean! | Indicates the user can perform `revert_on_current_merge_request` on this resource | | `updateMergeRequest` | Boolean! | Indicates the user can perform `update_merge_request` on this resource | +### MergeRequestReviewerRereviewPayload + +Autogenerated return type of MergeRequestReviewerRereview. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | +| `mergeRequest` | MergeRequest | The merge request after mutation. | + ### MergeRequestSetAssigneesPayload Autogenerated return type of MergeRequestSetAssignees. @@ -2420,7 +2518,7 @@ Autogenerated return type of NamespaceIncreaseStorageTemporarily. | `confidential` | Boolean | Indicates if this note is confidential | | `createdAt` | Time! | Timestamp of the note creation | | `discussion` | Discussion | The discussion this note is a part of | -| `id` | ID! | ID of the note | +| `id` | NoteID! | ID of the note | | `position` | DiffPosition | The position of this note on a diff | | `project` | Project | Project associated with the note | | `resolvable` | Boolean! | Indicates if the object can be resolved | @@ -2465,6 +2563,16 @@ Autogenerated return type of OncallRotationCreate. | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `oncallRotation` | IncidentManagementOncallRotation | The on-call rotation. | +### OncallRotationDestroyPayload + +Autogenerated return type of OncallRotationDestroy. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | +| `oncallRotation` | IncidentManagementOncallRotation | The on-call rotation. | + ### OncallScheduleCreatePayload Autogenerated return type of OncallScheduleCreate. @@ -2501,34 +2609,17 @@ Represents a package in the Package Registry. | Field | Type | Description | | ----- | ---- | ----------- | -| `createdAt` | Time! | The created date. | -| `id` | ID! | The ID of the package. | -| `name` | String! | The name of the package. | -| `packageType` | PackageTypeEnum! | The type of the package. | -| `pipelines` | PipelineConnection | Pipelines that built the package. | -| `project` | Project! | Project where the package is stored. | -| `tags` | PackageTagConnection | The package tags. | -| `updatedAt` | Time! | The updated date. | -| `version` | String | The version of the package. | -| `versions` | PackageConnection | The other versions of the package. | - -### PackageComposerDetails - -Details of a Composer package. - -| Field | Type | Description | -| ----- | ---- | ----------- | -| `composerMetadatum` | PackageComposerMetadatumType! | The Composer metadatum. | -| `createdAt` | Time! | The created date. | -| `id` | ID! | The ID of the package. | -| `name` | String! | The name of the package. | -| `packageType` | PackageTypeEnum! | The type of the package. | +| `createdAt` | Time! | Date of creation. | +| `id` | PackagesPackageID! | ID of the package. | +| `metadata` | PackageMetadata | Package metadata. | +| `name` | String! | Name of the package. | +| `packageType` | PackageTypeEnum! | Package type. | | `pipelines` | PipelineConnection | Pipelines that built the package. | | `project` | Project! | Project where the package is stored. | -| `tags` | PackageTagConnection | The package tags. | -| `updatedAt` | Time! | The updated date. | -| `version` | String | The version of the package. | -| `versions` | PackageConnection | The other versions of the package. | +| `tags` | PackageTagConnection | Package tags. | +| `updatedAt` | Time! | Date of most recent update. | +| `version` | String | Version string. | +| `versions` | PackageWithoutVersionsConnection | The other versions of the package. | ### PackageComposerJsonType @@ -2541,15 +2632,6 @@ Represents a composer JSON file. | `type` | String | The type set in the Composer JSON file. | | `version` | String | The version set in the Composer JSON file. | -### PackageComposerMetadatumType - -Composer metadatum. - -| Field | Type | Description | -| ----- | ---- | ----------- | -| `composerJson` | PackageComposerJsonType! | Data of the Composer JSON file. | -| `targetSha` | String! | Target SHA of the package. | - ### PackageFileRegistry Represents the Geo sync and verification state of a package file. @@ -2585,6 +2667,23 @@ Represents a package tag. | `name` | String! | The name of the tag. | | `updatedAt` | Time! | The updated date. | +### PackageWithoutVersions + +Represents a version of a package in the Package Registry. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `createdAt` | Time! | Date of creation. | +| `id` | PackagesPackageID! | ID of the package. | +| `metadata` | PackageMetadata | Package metadata. | +| `name` | String! | Name of the package. | +| `packageType` | PackageTypeEnum! | Package type. | +| `pipelines` | PipelineConnection | Pipelines that built the package. | +| `project` | Project! | Project where the package is stored. | +| `tags` | PackageTagConnection | Package tags. | +| `updatedAt` | Time! | Date of most recent update. | +| `version` | String | Version string. | + ### PageInfo Information about pagination in a connection.. @@ -2600,49 +2699,49 @@ Information about pagination in a connection.. | Field | Type | Description | | ----- | ---- | ----------- | -| `active` | Boolean! | Indicates if the pipeline is active | -| `beforeSha` | String | Base SHA of the source branch | -| `cancelable` | Boolean! | Specifies if a pipeline can be canceled | -| `committedAt` | Time | Timestamp of the pipeline's commit | -| `configSource` | PipelineConfigSourceEnum | Config source of the pipeline (UNKNOWN_SOURCE, REPOSITORY_SOURCE, AUTO_DEVOPS_SOURCE, WEBIDE_SOURCE, REMOTE_SOURCE, EXTERNAL_PROJECT_SOURCE, BRIDGE_SOURCE, PARAMETER_SOURCE) | -| `coverage` | Float | Coverage percentage | -| `createdAt` | Time! | Timestamp of the pipeline's creation | -| `detailedStatus` | DetailedStatus! | Detailed status of the pipeline | -| `downstream` | PipelineConnection | Pipelines this pipeline will trigger | -| `duration` | Int | Duration of the pipeline in seconds | -| `finishedAt` | Time | Timestamp of the pipeline's completion | -| `id` | ID! | ID of the pipeline | -| `iid` | String! | Internal ID of the pipeline | -| `jobs` | CiJobConnection | Jobs belonging to the pipeline | -| `path` | String | Relative path to the pipeline's page | -| `project` | Project | Project the pipeline belongs to | -| `retryable` | Boolean! | Specifies if a pipeline can be retried | +| `active` | Boolean! | Indicates if the pipeline is active. | +| `beforeSha` | String | Base SHA of the source branch. | +| `cancelable` | Boolean! | Specifies if a pipeline can be canceled. | +| `committedAt` | Time | Timestamp of the pipeline's commit. | +| `configSource` | PipelineConfigSourceEnum | Configuration source of the pipeline (UNKNOWN_SOURCE, REPOSITORY_SOURCE, AUTO_DEVOPS_SOURCE, WEBIDE_SOURCE, REMOTE_SOURCE, EXTERNAL_PROJECT_SOURCE, BRIDGE_SOURCE, PARAMETER_SOURCE) | +| `coverage` | Float | Coverage percentage. | +| `createdAt` | Time! | Timestamp of the pipeline's creation. | +| `detailedStatus` | DetailedStatus! | Detailed status of the pipeline. | +| `downstream` | PipelineConnection | Pipelines this pipeline will trigger. | +| `duration` | Int | Duration of the pipeline in seconds. | +| `finishedAt` | Time | Timestamp of the pipeline's completion. | +| `id` | ID! | ID of the pipeline. | +| `iid` | String! | Internal ID of the pipeline. | +| `jobs` | CiJobConnection | Jobs belonging to the pipeline. | +| `path` | String | Relative path to the pipeline's page. | +| `project` | Project | Project the pipeline belongs to. | +| `retryable` | Boolean! | Specifies if a pipeline can be retried. | | `securityReportSummary` | SecurityReportSummary | Vulnerability and scanned resource counts for each security scanner of the pipeline | -| `sha` | String! | SHA of the pipeline's commit | -| `sourceJob` | CiJob | Job where pipeline was triggered from | -| `stages` | CiStageConnection | Stages of the pipeline | -| `startedAt` | Time | Timestamp when the pipeline was started | +| `sha` | String! | SHA of the pipeline's commit. | +| `sourceJob` | CiJob | Job where pipeline was triggered from. | +| `stages` | CiStageConnection | Stages of the pipeline. | +| `startedAt` | Time | Timestamp when the pipeline was started. | | `status` | PipelineStatusEnum! | Status of the pipeline (CREATED, WAITING_FOR_RESOURCE, PREPARING, PENDING, RUNNING, FAILED, SUCCESS, CANCELED, SKIPPED, MANUAL, SCHEDULED) | -| `updatedAt` | Time! | Timestamp of the pipeline's last activity | -| `upstream` | Pipeline | Pipeline that triggered the pipeline | -| `user` | User | Pipeline user | +| `updatedAt` | Time! | Timestamp of the pipeline's last activity. | +| `upstream` | Pipeline | Pipeline that triggered the pipeline. | +| `user` | User | Pipeline user. | | `userPermissions` | PipelinePermissions! | Permissions for the current user on the resource | ### PipelineAnalytics | Field | Type | Description | | ----- | ---- | ----------- | -| `monthPipelinesLabels` | String! => Array | Labels for the monthly pipeline count | -| `monthPipelinesSuccessful` | Int! => Array | Total monthly successful pipeline count | -| `monthPipelinesTotals` | Int! => Array | Total monthly pipeline count | -| `pipelineTimesLabels` | String! => Array | Pipeline times labels | -| `pipelineTimesValues` | Int! => Array | Pipeline times | -| `weekPipelinesLabels` | String! => Array | Labels for the weekly pipeline count | -| `weekPipelinesSuccessful` | Int! => Array | Total weekly successful pipeline count | -| `weekPipelinesTotals` | Int! => Array | Total weekly pipeline count | -| `yearPipelinesLabels` | String! => Array | Labels for the yearly pipeline count | -| `yearPipelinesSuccessful` | Int! => Array | Total yearly successful pipeline count | -| `yearPipelinesTotals` | Int! => Array | Total yearly pipeline count | +| `monthPipelinesLabels` | String! => Array | Labels for the monthly pipeline count. | +| `monthPipelinesSuccessful` | Int! => Array | Total monthly successful pipeline count. | +| `monthPipelinesTotals` | Int! => Array | Total monthly pipeline count. | +| `pipelineTimesLabels` | String! => Array | Pipeline times labels. | +| `pipelineTimesValues` | Int! => Array | Pipeline times. | +| `weekPipelinesLabels` | String! => Array | Labels for the weekly pipeline count. | +| `weekPipelinesSuccessful` | Int! => Array | Total weekly successful pipeline count. | +| `weekPipelinesTotals` | Int! => Array | Total weekly pipeline count. | +| `yearPipelinesLabels` | String! => Array | Labels for the yearly pipeline count. | +| `yearPipelinesSuccessful` | Int! => Array | Total yearly successful pipeline count. | +| `yearPipelinesTotals` | Int! => Array | Total yearly pipeline count. | ### PipelineCancelPayload @@ -2689,6 +2788,7 @@ Autogenerated return type of PipelineRetry. | `alertManagementAlertStatusCounts` | AlertManagementAlertStatusCountsType | Counts of alerts by status for the project | | `alertManagementAlerts` | AlertManagementAlertConnection | Alert Management alerts of the project | | `alertManagementIntegrations` | AlertManagementIntegrationConnection | Integrations which can receive alerts for the project | +| `alertManagementPayloadFields` | AlertManagementPayloadAlertField! => Array | Extract alert fields from payload for custom mapping | | `allowMergeOnSkippedPipeline` | Boolean | If `only_allow_merge_if_pipeline_succeeds` is true, indicates if merge requests of the project can also be merged with skipped jobs | | `archived` | Boolean | Indicates the archived status of the project | | `autocloseReferencedIssues` | Boolean | Indicates if issues referenced by merge requests and commits within the default branch are closed automatically | @@ -2705,10 +2805,11 @@ Autogenerated return type of PipelineRetry. | `containerRepositories` | ContainerRepositoryConnection | Container repositories of the project | | `containerRepositoriesCount` | Int! | Number of container repositories in the project | | `createdAt` | Time | Timestamp of the project creation | -| `dastScannerProfiles` | DastScannerProfileConnection | The DAST scanner profiles associated with the project | -| `dastSiteProfile` | DastSiteProfile | DAST Site Profile associated with the project | -| `dastSiteProfiles` | DastSiteProfileConnection | DAST Site Profiles associated with the project | -| `dastSiteValidations` | DastSiteValidationConnection | DAST Site Validations associated with the project. Will always return no nodes if `security_on_demand_scans_site_validation` is disabled | +| `dastProfiles` | DastProfileConnection | DAST Profiles associated with the project. Always returns no nodes if `dast_saved_scans` is disabled. | +| `dastScannerProfiles` | DastScannerProfileConnection | The DAST scanner profiles associated with the project. | +| `dastSiteProfile` | DastSiteProfile | DAST Site Profile associated with the project. | +| `dastSiteProfiles` | DastSiteProfileConnection | DAST Site Profiles associated with the project. | +| `dastSiteValidations` | DastSiteValidationConnection | DAST Site Validations associated with the project. Always returns no nodes if `security_on_demand_scans_site_validation` is disabled. | | `description` | String | Short description of the project | | `descriptionHtml` | String | The GitLab Flavored Markdown rendering of `description` | | `environment` | Environment | A single environment of the project | @@ -2772,18 +2873,19 @@ Autogenerated return type of PipelineRetry. | `sharedRunnersEnabled` | Boolean | Indicates if shared runners are enabled for the project | | `snippets` | SnippetConnection | Snippets of the project | | `snippetsEnabled` | Boolean | Indicates if Snippets are enabled for the current user | -| `squashReadOnly` | Boolean! | Indicates if squash readonly is enabled | +| `squashReadOnly` | Boolean! | Indicates if `squashReadOnly` is enabled | | `sshUrlToRepo` | String | URL to connect to the project via SSH | | `starCount` | Int! | Number of times the project has been starred | | `statistics` | ProjectStatistics | Statistics of the project | | `suggestionCommitMessage` | String | The commit message used to apply merge request suggestions | | `tagList` | String | List of project topics (not Git tags) | -| `terraformStates` | TerraformStateConnection | Terraform states associated with the project | +| `terraformState` | TerraformState | Find a single Terraform state by name. | +| `terraformStates` | TerraformStateConnection | Terraform states associated with the project. | | `userPermissions` | ProjectPermissions! | Permissions for the current user on the resource | | `visibility` | String | Visibility of the project | | `vulnerabilities` | VulnerabilityConnection | Vulnerabilities reported on the project | | `vulnerabilitiesCountByDay` | VulnerabilitiesCountByDayConnection | Number of vulnerabilities per day for the project | -| `vulnerabilityScanners` | VulnerabilityScannerConnection | Vulnerability scanners reported on the project vulnerabilties | +| `vulnerabilityScanners` | VulnerabilityScannerConnection | Vulnerability scanners reported on the project vulnerabilities | | `vulnerabilitySeveritiesCount` | VulnerabilitySeveritiesCount | Counts for each vulnerability severity in the project | | `webUrl` | String | Web URL of the project | | `wikiEnabled` | Boolean | Indicates if Wikis are enabled for the current user | @@ -2994,10 +3096,10 @@ Evidence for a release. | Field | Type | Description | | ----- | ---- | ----------- | -| `collectedAt` | Time | Timestamp when the evidence was collected | -| `filepath` | String | URL from where the evidence can be downloaded | -| `id` | ID! | ID of the evidence | -| `sha` | String | SHA1 ID of the evidence hash | +| `collectedAt` | Time | Timestamp when the evidence was collected. | +| `filepath` | String | URL from where the evidence can be downloaded. | +| `id` | ID! | ID of the evidence. | +| `sha` | String | SHA1 ID of the evidence hash. | ### ReleaseLinks @@ -3149,23 +3251,23 @@ Autogenerated return type of RunDASTScan. | Field | Type | Description | | ----- | ---- | ----------- | -| `downloadLocation` | String! | Download location for the runner for the platform architecture | -| `name` | String! | Name of the runner platform architecture | +| `downloadLocation` | String! | Download location for the runner for the platform architecture. | +| `name` | String! | Name of the runner platform architecture. | ### RunnerPlatform | Field | Type | Description | | ----- | ---- | ----------- | -| `architectures` | RunnerArchitectureConnection | Runner architectures supported for the platform | -| `humanReadableName` | String! | Human readable name of the runner platform | -| `name` | String! | Name slug of the runner platform | +| `architectures` | RunnerArchitectureConnection | Runner architectures supported for the platform. | +| `humanReadableName` | String! | Human readable name of the runner platform. | +| `name` | String! | Name slug of the runner platform. | ### RunnerSetup | Field | Type | Description | | ----- | ---- | ----------- | -| `installInstructions` | String! | Instructions for installing the runner on the specified architecture | -| `registerInstructions` | String | Instructions for registering the runner | +| `installInstructions` | String! | Instructions for installing the runner on the specified architecture. | +| `registerInstructions` | String | Instructions for registering the runner. | ### SastCiConfiguration @@ -3183,11 +3285,11 @@ Represents an analyzer entity in SAST CI configuration. | Field | Type | Description | | ----- | ---- | ----------- | -| `description` | String | Analyzer description that is displayed on the form | -| `enabled` | Boolean | Indicates whether an analyzer is enabled | -| `label` | String | Analyzer label used in the config UI | -| `name` | String | Name of the analyzer | -| `variables` | SastCiConfigurationEntityConnection | List of supported variables | +| `description` | String | Analyzer description that is displayed on the form. | +| `enabled` | Boolean | Indicates whether an analyzer is enabled. | +| `label` | String | Analyzer label used in the config UI. | +| `name` | String | Name of the analyzer. | +| `variables` | SastCiConfigurationEntityConnection | List of supported variables. | ### SastCiConfigurationEntity @@ -3228,13 +3330,13 @@ Represents summary of a security report. | Field | Type | Description | | ----- | ---- | ----------- | -| `apiFuzzing` | SecurityReportSummarySection | Aggregated counts for the api_fuzzing scan | -| `containerScanning` | SecurityReportSummarySection | Aggregated counts for the container_scanning scan | -| `coverageFuzzing` | SecurityReportSummarySection | Aggregated counts for the coverage_fuzzing scan | -| `dast` | SecurityReportSummarySection | Aggregated counts for the dast scan | -| `dependencyScanning` | SecurityReportSummarySection | Aggregated counts for the dependency_scanning scan | -| `sast` | SecurityReportSummarySection | Aggregated counts for the sast scan | -| `secretDetection` | SecurityReportSummarySection | Aggregated counts for the secret_detection scan | +| `apiFuzzing` | SecurityReportSummarySection | Aggregated counts for the `api_fuzzing` scan | +| `containerScanning` | SecurityReportSummarySection | Aggregated counts for the `container_scanning` scan | +| `coverageFuzzing` | SecurityReportSummarySection | Aggregated counts for the `coverage_fuzzing` scan | +| `dast` | SecurityReportSummarySection | Aggregated counts for the `dast` scan | +| `dependencyScanning` | SecurityReportSummarySection | Aggregated counts for the `dependency_scanning` scan | +| `sast` | SecurityReportSummarySection | Aggregated counts for the `sast` scan | +| `secretDetection` | SecurityReportSummarySection | Aggregated counts for the `secret_detection` scan | ### SecurityReportSummarySection @@ -3263,34 +3365,34 @@ A Sentry error. | Field | Type | Description | | ----- | ---- | ----------- | -| `count` | Int! | Count of occurrences | -| `culprit` | String! | Culprit of the error | -| `externalBaseUrl` | String! | External Base URL of the Sentry Instance | -| `externalUrl` | String! | External URL of the error | -| `firstReleaseLastCommit` | String | Commit the error was first seen | -| `firstReleaseShortVersion` | String | Release short version the error was first seen | -| `firstReleaseVersion` | String | Release version the error was first seen | -| `firstSeen` | Time! | Timestamp when the error was first seen | -| `frequency` | SentryErrorFrequency! => Array | Last 24hr stats of the error | -| `gitlabCommit` | String | GitLab commit SHA attributed to the Error based on the release version | -| `gitlabCommitPath` | String | Path to the GitLab page for the GitLab commit attributed to the error | -| `gitlabIssuePath` | String | URL of GitLab Issue | -| `id` | ID! | ID (global ID) of the error | -| `lastReleaseLastCommit` | String | Commit the error was last seen | -| `lastReleaseShortVersion` | String | Release short version the error was last seen | -| `lastReleaseVersion` | String | Release version the error was last seen | -| `lastSeen` | Time! | Timestamp when the error was last seen | -| `message` | String | Sentry metadata message of the error | -| `sentryId` | String! | ID (Sentry ID) of the error | -| `sentryProjectId` | ID! | ID of the project (Sentry project) | -| `sentryProjectName` | String! | Name of the project affected by the error | -| `sentryProjectSlug` | String! | Slug of the project affected by the error | -| `shortId` | String! | Short ID (Sentry ID) of the error | -| `status` | SentryErrorStatus! | Status of the error | -| `tags` | SentryErrorTags! | Tags associated with the Sentry Error | -| `title` | String! | Title of the error | -| `type` | String! | Type of the error | -| `userCount` | Int! | Count of users affected by the error | +| `count` | Int! | Count of occurrences. | +| `culprit` | String! | Culprit of the error. | +| `externalBaseUrl` | String! | External Base URL of the Sentry Instance. | +| `externalUrl` | String! | External URL of the error. | +| `firstReleaseLastCommit` | String | Commit the error was first seen. | +| `firstReleaseShortVersion` | String | Release short version the error was first seen. | +| `firstReleaseVersion` | String | Release version the error was first seen. | +| `firstSeen` | Time! | Timestamp when the error was first seen. | +| `frequency` | SentryErrorFrequency! => Array | Last 24hr stats of the error. | +| `gitlabCommit` | String | GitLab commit SHA attributed to the Error based on the release version. | +| `gitlabCommitPath` | String | Path to the GitLab page for the GitLab commit attributed to the error. | +| `gitlabIssuePath` | String | URL of GitLab Issue. | +| `id` | ID! | ID (global ID) of the error. | +| `lastReleaseLastCommit` | String | Commit the error was last seen. | +| `lastReleaseShortVersion` | String | Release short version the error was last seen. | +| `lastReleaseVersion` | String | Release version the error was last seen. | +| `lastSeen` | Time! | Timestamp when the error was last seen. | +| `message` | String | Sentry metadata message of the error. | +| `sentryId` | String! | ID (Sentry ID) of the error. | +| `sentryProjectId` | ID! | ID of the project (Sentry project). | +| `sentryProjectName` | String! | Name of the project affected by the error. | +| `sentryProjectSlug` | String! | Slug of the project affected by the error. | +| `shortId` | String! | Short ID (Sentry ID) of the error. | +| `status` | SentryErrorStatus! | Status of the error. | +| `tags` | SentryErrorTags! | Tags associated with the Sentry Error. | +| `title` | String! | Title of the error. | +| `type` | String! | Type of the error. | +| `userCount` | Int! | Count of users affected by the error. | ### SentryError @@ -3298,23 +3400,23 @@ A Sentry error. A simplified version of SentryDetailedError. | Field | Type | Description | | ----- | ---- | ----------- | -| `count` | Int! | Count of occurrences | -| `culprit` | String! | Culprit of the error | -| `externalUrl` | String! | External URL of the error | -| `firstSeen` | Time! | Timestamp when the error was first seen | -| `frequency` | SentryErrorFrequency! => Array | Last 24hr stats of the error | -| `id` | ID! | ID (global ID) of the error | -| `lastSeen` | Time! | Timestamp when the error was last seen | -| `message` | String | Sentry metadata message of the error | -| `sentryId` | String! | ID (Sentry ID) of the error | -| `sentryProjectId` | ID! | ID of the project (Sentry project) | -| `sentryProjectName` | String! | Name of the project affected by the error | -| `sentryProjectSlug` | String! | Slug of the project affected by the error | -| `shortId` | String! | Short ID (Sentry ID) of the error | -| `status` | SentryErrorStatus! | Status of the error | -| `title` | String! | Title of the error | -| `type` | String! | Type of the error | -| `userCount` | Int! | Count of users affected by the error | +| `count` | Int! | Count of occurrences. | +| `culprit` | String! | Culprit of the error. | +| `externalUrl` | String! | External URL of the error. | +| `firstSeen` | Time! | Timestamp when the error was first seen. | +| `frequency` | SentryErrorFrequency! => Array | Last 24hr stats of the error. | +| `id` | ID! | ID (global ID) of the error. | +| `lastSeen` | Time! | Timestamp when the error was last seen. | +| `message` | String | Sentry metadata message of the error. | +| `sentryId` | String! | ID (Sentry ID) of the error. | +| `sentryProjectId` | ID! | ID of the project (Sentry project). | +| `sentryProjectName` | String! | Name of the project affected by the error. | +| `sentryProjectSlug` | String! | Slug of the project affected by the error. | +| `shortId` | String! | Short ID (Sentry ID) of the error. | +| `status` | SentryErrorStatus! | Status of the error. | +| `title` | String! | Title of the error. | +| `type` | String! | Type of the error. | +| `userCount` | Int! | Count of users affected by the error. | ### SentryErrorCollection @@ -3322,17 +3424,17 @@ An object containing a collection of Sentry errors, and a detailed error. | Field | Type | Description | | ----- | ---- | ----------- | -| `detailedError` | SentryDetailedError | Detailed version of a Sentry error on the project | -| `errorStackTrace` | SentryErrorStackTrace | Stack Trace of Sentry Error | -| `errors` | SentryErrorConnection | Collection of Sentry Errors | -| `externalUrl` | String | External URL for Sentry | +| `detailedError` | SentryDetailedError | Detailed version of a Sentry error on the project. | +| `errorStackTrace` | SentryErrorStackTrace | Stack Trace of Sentry Error. | +| `errors` | SentryErrorConnection | Collection of Sentry Errors. | +| `externalUrl` | String | External URL for Sentry. | ### SentryErrorFrequency | Field | Type | Description | | ----- | ---- | ----------- | -| `count` | Int! | Count of errors received since the previously recorded time | -| `time` | Time! | Time the error frequency stats were recorded | +| `count` | Int! | Count of errors received since the previously recorded time. | +| `time` | Time! | Time the error frequency stats were recorded. | ### SentryErrorStackTrace @@ -3340,9 +3442,9 @@ An object containing a stack trace entry for a Sentry error. | Field | Type | Description | | ----- | ---- | ----------- | -| `dateReceived` | String! | Time the stack trace was received by Sentry | -| `issueId` | String! | ID of the Sentry error | -| `stackTraceEntries` | SentryErrorStackTraceEntry! => Array | Stack trace entries for the Sentry error | +| `dateReceived` | String! | Time the stack trace was received by Sentry. | +| `issueId` | String! | ID of the Sentry error. | +| `stackTraceEntries` | SentryErrorStackTraceEntry! => Array | Stack trace entries for the Sentry error. | ### SentryErrorStackTraceContext @@ -3350,8 +3452,8 @@ An object context for a Sentry error stack trace. | Field | Type | Description | | ----- | ---- | ----------- | -| `code` | String! | Code number of the context | -| `line` | Int! | Line number of the context | +| `code` | String! | Code number of the context. | +| `line` | Int! | Line number of the context. | ### SentryErrorStackTraceEntry @@ -3359,11 +3461,11 @@ An object containing a stack trace entry for a Sentry error. | Field | Type | Description | | ----- | ---- | ----------- | -| `col` | String | Function in which the Sentry error occurred | -| `fileName` | String | File in which the Sentry error occurred | -| `function` | String | Function in which the Sentry error occurred | -| `line` | String | Function in which the Sentry error occurred | -| `traceContext` | SentryErrorStackTraceContext! => Array | Context of the Sentry error | +| `col` | String | Function in which the Sentry error occurred. | +| `fileName` | String | File in which the Sentry error occurred. | +| `function` | String | Function in which the Sentry error occurred. | +| `line` | String | Function in which the Sentry error occurred. | +| `traceContext` | SentryErrorStackTraceContext! => Array | Context of the Sentry error. | ### SentryErrorTags @@ -3371,8 +3473,8 @@ State of a Sentry error. | Field | Type | Description | | ----- | ---- | ----------- | -| `level` | String | Severity level of the Sentry Error | -| `logger` | String | Logger of the Sentry Error | +| `level` | String | Severity level of the Sentry Error. | +| `logger` | String | Logger of the Sentry Error. | ### Snippet @@ -3427,7 +3529,7 @@ Represents how the blob content should be displayed. | ----- | ---- | ----------- | | `collapsed` | Boolean! | Shows whether the blob should be displayed collapsed | | `fileType` | String! | Content file type | -| `loadAsync` | Boolean! | Shows whether the blob content is loaded async | +| `loadAsync` | Boolean! | Shows whether the blob content is loaded asynchronously | | `loadingPartialName` | String! | Loading partial name | | `renderError` | String | Error rendering the blob content | | `tooLarge` | Boolean! | Shows whether the blob too large to be displayed | @@ -3463,11 +3565,11 @@ Represents the Geo sync and verification state of a snippet repository. | Field | Type | Description | | ----- | ---- | ----------- | -| `buttonTitle` | String | Title for the button, for example: Retry this job | -| `icon` | String | Icon used in the action button | -| `method` | String | Method for the action, for example: :post | -| `path` | String | Path for the action | -| `title` | String | Title for the action, for example: Retry | +| `buttonTitle` | String | Title for the button, for example: Retry this job. | +| `icon` | String | Icon used in the action button. | +| `method` | String | Method for the action, for example: :post. | +| `path` | String | Path for the action. | +| `title` | String | Title for the action, for example: Retry. | ### Submodule @@ -3477,7 +3579,7 @@ Represents the Geo sync and verification state of a snippet repository. | `id` | ID! | ID of the entry | | `name` | String! | Name of the entry | | `path` | String! | Path of the entry | -| `sha` | String! | Last commit sha for the entry | +| `sha` | String! | Last commit SHA for the entry | | `treeUrl` | String | Tree URL for the sub-module | | `type` | EntryType! | Type of tree entry | | `webUrl` | String | Web URL for the sub-module | @@ -3608,19 +3710,19 @@ Represents a historically accurate report about the timebox. ### Todo -Representing a todo entry. +Representing a to-do entry. | Field | Type | Description | | ----- | ---- | ----------- | -| `action` | TodoActionEnum! | Action of the todo | -| `author` | User! | The author of this todo | -| `body` | String! | Body of the todo | -| `createdAt` | Time! | Timestamp this todo was created | -| `group` | Group | Group this todo is associated with | -| `id` | ID! | ID of the todo | -| `project` | Project | The project this todo is associated with | -| `state` | TodoStateEnum! | State of the todo | -| `targetType` | TodoTargetEnum! | Target type of the todo | +| `action` | TodoActionEnum! | Action of the to-do item | +| `author` | User! | The author of this to-do item | +| `body` | String! | Body of the to-do item | +| `createdAt` | Time! | Timestamp this to-do item was created | +| `group` | Group | Group this to-do item is associated with | +| `id` | ID! | ID of the to-do item | +| `project` | Project | The project this to-do item is associated with | +| `state` | TodoStateEnum! | State of the to-do item | +| `targetType` | TodoTargetEnum! | Target type of the to-do item | ### TodoCreatePayload @@ -3630,7 +3732,7 @@ Autogenerated return type of TodoCreate. | ----- | ---- | ----------- | | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | -| `todo` | Todo | The to-do created. | +| `todo` | Todo | The to-do item created. | ### TodoMarkDonePayload @@ -3640,7 +3742,7 @@ Autogenerated return type of TodoMarkDone. | ----- | ---- | ----------- | | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | -| `todo` | Todo! | The requested todo. | +| `todo` | Todo! | The requested to-do item. | ### TodoRestoreManyPayload @@ -3650,8 +3752,8 @@ Autogenerated return type of TodoRestoreMany. | ----- | ---- | ----------- | | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | -| `todos` | Todo! => Array | Updated todos. | -| `updatedIds` **{warning-solid}** | TodoID! => Array | **Deprecated:** Use todos. Deprecated in 13.2. | +| `todos` | Todo! => Array | Updated to-do items. | +| `updatedIds` **{warning-solid}** | TodoID! => Array | **Deprecated:** Use to-do items. Deprecated in 13.2. | ### TodoRestorePayload @@ -3661,7 +3763,7 @@ Autogenerated return type of TodoRestore. | ----- | ---- | ----------- | | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | -| `todo` | Todo! | The requested todo. | +| `todo` | Todo! | The requested to-do item. | ### TodosMarkAllDonePayload @@ -3671,8 +3773,8 @@ Autogenerated return type of TodosMarkAllDone. | ----- | ---- | ----------- | | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | -| `todos` | Todo! => Array | Updated todos. | -| `updatedIds` **{warning-solid}** | TodoID! => Array | **Deprecated:** Use todos. Deprecated in 13.2. | +| `todos` | Todo! => Array | Updated to-do items. | +| `updatedIds` **{warning-solid}** | TodoID! => Array | **Deprecated:** Use to-do items. Deprecated in 13.2. | ### ToggleAwardEmojiPayload @@ -3704,7 +3806,7 @@ Represents a directory. | `id` | ID! | ID of the entry | | `name` | String! | Name of the entry | | `path` | String! | Path of the entry | -| `sha` | String! | Last commit sha for the entry | +| `sha` | String! | Last commit SHA for the entry | | `type` | EntryType! | Type of tree entry | | `webPath` | String | Web path for the tree entry (directory) | | `webUrl` | String | Web URL for the tree entry (directory) | @@ -3719,7 +3821,7 @@ Autogenerated return type of UpdateAlertStatus. | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `issue` | Issue | The issue created after mutation. | -| `todo` | Todo | The todo after mutation. | +| `todo` | Todo | The to-do item after mutation. | ### UpdateBoardEpicUserPreferencesPayload @@ -3857,10 +3959,13 @@ Autogenerated return type of UpdateSnippet. | Field | Type | Description | | ----- | ---- | ----------- | +| `captchaSiteKey` | String | The CAPTCHA site key which must be used to render a challenge for the user to solve to obtain a valid captchaResponse value. Included only when an operation was not completed because "NeedsCaptchaResponse" is true. | | `clientMutationId` | String | A unique identifier for the client performing the mutation. | | `errors` | String! => Array | Errors encountered during execution of the mutation. | +| `needsCaptchaResponse` | Boolean | Indicates whether the operation was detected as possible spam and not completed. If CAPTCHA is enabled, the request must be resubmitted with a valid CAPTCHA response and spam_log_id included for the operation to be completed. Included only when an operation was not completed because "NeedsCaptchaResponse" is true. | | `snippet` | Snippet | The snippet after mutation. | -| `spam` | Boolean | Indicates whether the operation returns a record detected as spam. | +| `spam` | Boolean | Indicates whether the operation was detected as definite spam. There is no option to resubmit the request with a CAPTCHA response. | +| `spamLogId` | Int | The spam log ID which must be passed along with a valid CAPTCHA response for an operation to be completed. Included only when an operation was not completed because "NeedsCaptchaResponse" is true. | ### User @@ -3882,7 +3987,7 @@ Autogenerated return type of UpdateSnippet. | `starredProjects` | ProjectConnection | Projects starred by the user | | `state` | UserState! | State of the user | | `status` | UserStatus | User status | -| `todos` | TodoConnection! | Todos of the user | +| `todos` | TodoConnection! | To-do items of the user | | `userPermissions` | UserPermissions! | Permissions for the current user on the resource | | `username` | String! | Username of the user. Unique within this instance of GitLab | | `webPath` | String! | Web path of the user | @@ -3937,6 +4042,7 @@ Represents a vulnerability. | `confirmedAt` | Time | Timestamp of when the vulnerability state was changed to confirmed | | `confirmedBy` | User | The user that confirmed the vulnerability. | | `description` | String | Description of the vulnerability | +| `details` | VulnerabilityDetail! => Array | Details of the vulnerability | | `detectedAt` | Time! | Timestamp of when the vulnerability was first detected | | `discussions` | DiscussionConnection! | All discussions on this noteable | | `dismissedAt` | Time | Timestamp of when the vulnerability state was changed to dismissed | @@ -3973,6 +4079,155 @@ Autogenerated return type of VulnerabilityConfirm. | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `vulnerability` | Vulnerability | The vulnerability after state change. | +### VulnerabilityDetailBase + +Represents the vulnerability details base. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `name` | String! | Name of the field. | + +### VulnerabilityDetailBoolean + +Represents the vulnerability details boolean value. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `name` | String! | Name of the field. | +| `value` | Boolean! | Value of the field. | + +### VulnerabilityDetailCode + +Represents the vulnerability details code field. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `lang` | String | Language of the code. | +| `name` | String! | Name of the field. | +| `value` | String! | Source code. | + +### VulnerabilityDetailCommit + +Represents the vulnerability details commit field. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `name` | String! | Name of the field. | +| `value` | String! | The commit SHA value. | + +### VulnerabilityDetailDiff + +Represents the vulnerability details diff field. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `after` | String! | Value of the field after the change. | +| `before` | String! | Value of the field before the change. | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `name` | String! | Name of the field. | + +### VulnerabilityDetailFileLocation + +Represents the vulnerability details location within a file in the project. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `fileName` | String! | File name. | +| `lineEnd` | Int! | End line number of the file location. | +| `lineStart` | Int! | Start line number of the file location. | +| `name` | String! | Name of the field. | + +### VulnerabilityDetailInt + +Represents the vulnerability details integer value. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `name` | String! | Name of the field. | +| `value` | Int! | Value of the field. | + +### VulnerabilityDetailList + +Represents the vulnerability details list value. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `items` | VulnerabilityDetail! => Array | List of details. | +| `name` | String! | Name of the field. | + +### VulnerabilityDetailMarkdown + +Represents the vulnerability details Markdown field. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `name` | String! | Name of the field. | +| `value` | String! | Value of the Markdown field. | + +### VulnerabilityDetailModuleLocation + +Represents the vulnerability details location within a file in the project. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `moduleName` | String! | Module name. | +| `name` | String! | Name of the field. | +| `offset` | Int! | Offset of the module location. | + +### VulnerabilityDetailTable + +Represents the vulnerability details table value. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `headers` | VulnerabilityDetail! => Array | Table headers. | +| `name` | String! | Name of the field. | +| `rows` | VulnerabilityDetail! => Array | Table rows. | + +### VulnerabilityDetailText + +Represents the vulnerability details text field. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `name` | String! | Name of the field. | +| `value` | String! | Value of the text field. | + +### VulnerabilityDetailUrl + +Represents the vulnerability details URL field. + +| Field | Type | Description | +| ----- | ---- | ----------- | +| `description` | String! | Description of the field. | +| `fieldName` | String | Name of the field. | +| `href` | String! | Href of the URL. | +| `name` | String! | Name of the field. | +| `text` | String | Text of the URL. | + ### VulnerabilityDismissPayload Autogenerated return type of VulnerabilityDismiss. @@ -4049,6 +4304,7 @@ Represents the location of a vulnerability found by a Coverage Fuzzing scan. | Field | Type | Description | | ----- | ---- | ----------- | +| `blobPath` | String | Blob path to the vulnerable file | | `endLine` | String | Number of the last relevant line in the vulnerable file | | `file` | String | Path to the vulnerable file | | `startLine` | String | Number of the first relevant line in the vulnerable file | @@ -4072,6 +4328,7 @@ Represents the location of a vulnerability found by a dependency security scan. | Field | Type | Description | | ----- | ---- | ----------- | +| `blobPath` | String | Blob path to the vulnerable file | | `dependency` | VulnerableDependency | Dependency containing the vulnerability | | `file` | String | Path to the vulnerable file | @@ -4081,6 +4338,7 @@ Represents the location of a vulnerability found by a SAST scan. | Field | Type | Description | | ----- | ---- | ----------- | +| `blobPath` | String | Blob path to the vulnerable file | | `endLine` | String | Number of the last relevant line in the vulnerable file | | `file` | String | Path to the vulnerable file | | `startLine` | String | Number of the first relevant line in the vulnerable file | @@ -4093,6 +4351,7 @@ Represents the location of a vulnerability found by a secret detection scan. | Field | Type | Description | | ----- | ---- | ----------- | +| `blobPath` | String | Blob path to the vulnerable file | | `endLine` | String | Number of the last relevant line in the vulnerable file | | `file` | String | Path to the vulnerable file | | `startLine` | String | Number of the first relevant line in the vulnerable file | @@ -4754,15 +5013,17 @@ State of a GitLab merge request. | `all` | | | `closed` | | | `locked` | | -| `merged` | | +| `merged` | Merge Request has been merged | | `opened` | | ### MilestoneStateEnum +Current state of milestone. + | Value | Description | | ----- | ----------- | -| `active` | | -| `closed` | | +| `active` | Milestone is currently active | +| `closed` | Milestone is closed | ### MoveType diff --git a/doc/api/graphql/removed_items.md b/doc/api/graphql/removed_items.md index f05b23495bb..2761c1a1c84 100644 --- a/doc/api/graphql/removed_items.md +++ b/doc/api/graphql/removed_items.md @@ -1,3 +1,9 @@ +--- +stage: Plan +group: Product Planning +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments +--- + # GraphQL API removed items GraphQL is a versionless API, unlike the REST API. diff --git a/doc/api/group_badges.md b/doc/api/group_badges.md index 7698fa9ba5f..e3fcaa3db37 100644 --- a/doc/api/group_badges.md +++ b/doc/api/group_badges.md @@ -12,11 +12,15 @@ info: To determine the technical writer assigned to the Stage/Group associated w Badges support placeholders that are replaced in real time in both the link and image URL. The allowed placeholders are: +<!-- vale gitlab.Spelling = NO --> + - **%{project_path}**: replaced by the project path. - **%{project_id}**: replaced by the project ID. - **%{default_branch}**: replaced by the project default branch. - **%{commit_sha}**: replaced by the last project's commit SHA. +<!-- vale gitlab.Spelling = YES --> + Because these endpoints aren't inside a project's context, the information used to replace the placeholders comes from the first group's project by creation date. If the group hasn't got any project the original URL with the placeholders is returned. diff --git a/doc/api/group_boards.md b/doc/api/group_boards.md index 722f3a76267..b892962e2b2 100644 --- a/doc/api/group_boards.md +++ b/doc/api/group_boards.md @@ -76,7 +76,7 @@ Example response: ] ``` -Users on GitLab [Premium, Silver, or higher](https://about.gitlab.com/pricing/) see +Users on GitLab [Premium or higher](https://about.gitlab.com/pricing/) see different parameters, due to the ability to have multiple group boards. Example response: @@ -192,7 +192,7 @@ Example response: } ``` -Users on GitLab [Premium, Silver, or higher](https://about.gitlab.com/pricing/) see +Users on GitLab [Premium or higher](https://about.gitlab.com/pricing/) see different parameters, due to the ability to have multiple group issue boards. Example response: diff --git a/doc/api/group_clusters.md b/doc/api/group_clusters.md index f169c1829be..c4044b2332b 100644 --- a/doc/api/group_clusters.md +++ b/doc/api/group_clusters.md @@ -4,7 +4,7 @@ group: Configure info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Group clusters API +# Group clusters API **(CORE)** > [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/30213) in GitLab 12.1. diff --git a/doc/api/group_import_export.md b/doc/api/group_import_export.md index 57670eff1ea..ac367bf7e5a 100644 --- a/doc/api/group_import_export.md +++ b/doc/api/group_import_export.md @@ -94,7 +94,7 @@ curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" --form "name=i NOTE: The maximum import file size can be set by the Administrator, default is `0` (unlimited). -As an administrator, you can modify the maximum import file size. To do so, use the `max_import_size` option in the [Application settings API](settings.md#change-application-settings) or the [Admin UI](../user/admin_area/settings/account_and_limit_settings.md). +As an administrator, you can modify the maximum import file size. To do so, use the `max_import_size` option in the [Application settings API](settings.md#change-application-settings) or the [Admin UI](../user/admin_area/settings/account_and_limit_settings.md). Default [modified](https://gitlab.com/gitlab-org/gitlab/-/issues/251106) from 50MB to 0 in GitLab 13.8. ## Important notes diff --git a/doc/api/group_iterations.md b/doc/api/group_iterations.md index d96f0881088..715f40e8325 100644 --- a/doc/api/group_iterations.md +++ b/doc/api/group_iterations.md @@ -49,7 +49,8 @@ Example response: "created_at": "2020-01-27T05:07:12.573Z", "updated_at": "2020-01-27T05:07:12.573Z", "due_date": "2020-02-01", - "start_date": "2020-02-14" + "start_date": "2020-02-14", + "web_url": "http://gitlab.example.com/groups/my-group/-/iterations/13" } ] ``` diff --git a/doc/api/group_wikis.md b/doc/api/group_wikis.md index f8804d1eadc..6c5e2b77f93 100644 --- a/doc/api/group_wikis.md +++ b/doc/api/group_wikis.md @@ -1,6 +1,6 @@ --- stage: Create -group: Knowledge +group: Editor info: "To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments" type: reference, api --- @@ -179,9 +179,9 @@ POST /groups/:id/wikis/attachments | `file` | string | yes | The attachment to be uploaded | | `branch` | string | no | The name of the branch. Defaults to the wiki repository default branch | -To upload a file from your filesystem, use the `--form` argument. This causes +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 `file=` parameter must point to a file on your filesystem and be preceded +The `file=` parameter must point to a file on your file system and be preceded by `@`. For example: ```shell diff --git a/doc/api/groups.md b/doc/api/groups.md index eb255f8de00..0aba679655b 100644 --- a/doc/api/groups.md +++ b/doc/api/groups.md @@ -685,7 +685,7 @@ Additional response parameters: } ``` -Users on GitLab [Silver, Premium, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab [Premium or higher](https://about.gitlab.com/pricing/) also see the `marked_for_deletion_on` attribute: ```json @@ -764,8 +764,8 @@ Parameters: | `request_access_enabled` | boolean | no | Allow users to request member access. | | `parent_id` | integer | no | The parent group ID for creating nested group. | | `default_branch_protection` | integer | no | See [Options for `default_branch_protection`](#options-for-default_branch_protection). Default to the global level default branch protection setting. | -| `shared_runners_minutes_limit` | integer | no | **(STARTER ONLY)** Pipeline minutes quota for this group (included in plan). Can be `nil` (default; inherit system default), `0` (unlimited) or `> 0` | -| `extra_shared_runners_minutes_limit` | integer | no | **(STARTER ONLY)** Extra pipeline minutes quota for this group (purchased in addition to the minutes included in the plan). | +| `shared_runners_minutes_limit` | integer | no | **(PREMIUM SELF)** Pipeline minutes quota for this group (included in plan). Can be `nil` (default; inherit system default), `0` (unlimited) or `> 0` | +| `extra_shared_runners_minutes_limit` | integer | no | **(PREMIUM SELF)** Extra pipeline minutes quota for this group (purchased in addition to the minutes included in the plan). | ### Options for `default_branch_protection` @@ -838,8 +838,8 @@ PUT /groups/:id | `request_access_enabled` | boolean | no | Allow users to request member access. | | `default_branch_protection` | integer | no | See [Options for `default_branch_protection`](#options-for-default_branch_protection). | | `file_template_project_id` | integer | no | **(PREMIUM)** The ID of a project to load custom file templates from. | -| `shared_runners_minutes_limit` | integer | no | **(STARTER ONLY)** Pipeline minutes quota for this group (included in plan). Can be `nil` (default; inherit system default), `0` (unlimited) or `> 0` | -| `extra_shared_runners_minutes_limit` | integer | no | **(STARTER ONLY)** Extra pipeline minutes quota for this group (purchased in addition to the minutes included in the plan). | +| `shared_runners_minutes_limit` | integer | no | **(PREMIUM SELF)** Pipeline minutes quota for this group (included in plan). Can be `nil` (default; inherit system default), `0` (unlimited) or `> 0` | +| `extra_shared_runners_minutes_limit` | integer | no | **(PREMIUM SELF)** Extra pipeline minutes quota for this group (purchased in addition to the minutes included in the plan). | | `prevent_forking_outside_group` | boolean | no | **(PREMIUM)** When enabled, users can **not** fork projects from this group to external namespaces | `shared_runners_setting` | string | no | See [Options for `shared_runners_setting`](#options-for-shared_runners_setting). Enable or disable shared runners for a group's subgroups and projects. | @@ -941,6 +941,19 @@ The `shared_runners_setting` attribute determines whether shared runners are ena | `disabled_with_override` | Disables shared runners for all projects and subgroups in this group, but allows subgroups to override this setting. | | `disabled_and_unoverridable` | Disables shared runners for all projects and subgroups in this group, and prevents subgroups from overriding this setting. | +### Upload a group avatar + +> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/36681) in GitLab 12.9. + +To upload an avatar file from your file system, use the `--form` argument. This causes +curl to post data using the header `Content-Type: multipart/form-data`. The +`file=` parameter must point to a file on your file system and be preceded by +`@`. For example: + +```shell +curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/22" --form "avatar=@/tmp/example.png" +``` + ## Remove group Only available to group owners and administrators. @@ -948,7 +961,7 @@ Only available to group owners and administrators. This endpoint either: - Removes group, and queues a background job to delete all projects in the group as well. -- Since [GitLab 12.8](https://gitlab.com/gitlab-org/gitlab/-/issues/33257), on [Premium or Silver](https://about.gitlab.com/pricing/) or higher tiers, marks a group for deletion. The deletion happens 7 days later by default, but this can be changed in the [instance settings](../user/admin_area/settings/visibility_and_access_controls.md#default-deletion-delay). +- Since [GitLab 12.8](https://gitlab.com/gitlab-org/gitlab/-/issues/33257), on [Premium](https://about.gitlab.com/pricing/) or higher tiers, marks a group for deletion. The deletion happens 7 days later by default, but this can be changed in the [instance settings](../user/admin_area/settings/visibility_and_access_controls.md#default-deletion-delay). ```plaintext DELETE /groups/:id @@ -997,7 +1010,7 @@ GET /groups?search=foobar ] ``` -## Hooks +## Hooks **(PREMIUM)** Also called Group Hooks and Webhooks. These are different from [System Hooks](system_hooks.md) that are system wide and [Project Hooks](projects.md#hooks) that are limited to one project. @@ -1044,6 +1057,7 @@ GET /groups/:id/hooks/:hook_id "wiki_page_events": true, "deployment_events": true, "releases_events": true, + "subgroup_events": true, "enable_ssl_verification": true, "created_at": "2012-10-12T17:04:47Z" } @@ -1073,6 +1087,7 @@ POST /groups/:id/hooks | `wiki_page_events` | boolean | no | Trigger hook on wiki events | | `deployment_events` | boolean | no | Trigger hook on deployment events | | `releases_events` | boolean | no | Trigger hook on release events | +| `subgroup_events` | boolean | no | Trigger hook on subgroup events | | `enable_ssl_verification` | boolean | no | Do SSL verification when triggering the hook | | `token` | string | no | Secret token to validate received payloads; not returned in the response | @@ -1101,6 +1116,7 @@ PUT /groups/:id/hooks/:hook_id | `wiki_events` | boolean | no | Trigger hook on wiki events | | `deployment_events` | boolean | no | Trigger hook on deployment events | | `releases_events` | boolean | no | Trigger hook on release events | +| `subgroup_events` | boolean | no | Trigger hook on subgroup events | | `enable_ssl_verification` | boolean | no | Do SSL verification when triggering the hook | | `token` | string | no | Secret token to validate received payloads; not returned in the response | @@ -1122,7 +1138,7 @@ DELETE /groups/:id/hooks/:hook_id Group audit events can be accessed via the [Group Audit Events API](audit_events.md#group-audit-events) -## Sync group with LDAP **(STARTER ONLY)** +## Sync group with LDAP **(PREMIUM SELF)** Syncs the group with its linked LDAP group. Only available to group owners and administrators. @@ -1142,7 +1158,7 @@ Please consult the [Group Members](members.md) documentation. List, add, and delete LDAP group links. -### List LDAP group links **(STARTER ONLY)** +### List LDAP group links **(PREMIUM SELF)** Lists LDAP group links. @@ -1154,7 +1170,7 @@ GET /groups/:id/ldap_group_links | --------- | -------------- | -------- | ----------- | | `id` | integer/string | yes | The ID or [URL-encoded path of the group](README.md#namespaced-path-encoding) | -### Add LDAP group link with CN or filter **(STARTER ONLY)** +### Add LDAP group link with CN or filter **(PREMIUM SELF)** Adds an LDAP group link using a CN or filter. Adding a group link by filter is only supported in the Premium tier and above. @@ -1173,7 +1189,7 @@ POST /groups/:id/ldap_group_links NOTE: To define the LDAP group link, provide either a `cn` or a `filter`, but not both. -### Delete LDAP group link **(STARTER ONLY)** +### Delete LDAP group link **(PREMIUM SELF)** Deletes an LDAP group link. Deprecated. Scheduled for removal in a future release. @@ -1198,7 +1214,7 @@ DELETE /groups/:id/ldap_group_links/:provider/:cn | `cn` | string | yes | The CN of an LDAP group | | `provider` | string | yes | LDAP provider for the LDAP group link | -### Delete LDAP group link with CN or filter **(STARTER ONLY)** +### Delete LDAP group link with CN or filter **(PREMIUM SELF)** Deletes an LDAP group link using a CN or filter. Deleting by filter is only supported in the Premium tier and above. @@ -1306,7 +1322,7 @@ GET /groups/:id/push_rule } ``` -Users on GitLab [Premium, Silver, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab [Premium or higher](https://about.gitlab.com/pricing/) also see the `commit_committer_check` and `reject_unsigned_commits` parameters: ```json diff --git a/doc/api/instance_clusters.md b/doc/api/instance_clusters.md index d5c033563d6..164830f2f34 100644 --- a/doc/api/instance_clusters.md +++ b/doc/api/instance_clusters.md @@ -4,7 +4,7 @@ group: Configure info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Instance clusters API +# Instance clusters API **(CORE)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/36001) in GitLab 13.2. diff --git a/doc/api/issue_links.md b/doc/api/issue_links.md index b94207f8e16..0d55b77df0e 100644 --- a/doc/api/issue_links.md +++ b/doc/api/issue_links.md @@ -4,9 +4,9 @@ group: unassigned info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Issue links API **(CORE)** +# Issue links API **(FREE)** -> The simple "relates to" relationship [moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212329) to [GitLab Core](https://about.gitlab.com/pricing/) in 13.4. +> The simple "relates to" relationship [moved](https://gitlab.com/gitlab-org/gitlab/-/issues/212329) to [GitLab Free](https://about.gitlab.com/pricing/) in 13.4. ## List issue relations diff --git a/doc/api/iterations.md b/doc/api/iterations.md index 1ee489e4cf1..ff6e8e2542f 100644 --- a/doc/api/iterations.md +++ b/doc/api/iterations.md @@ -51,7 +51,8 @@ Example response: "created_at": "2020-01-27T05:07:12.573Z", "updated_at": "2020-01-27T05:07:12.573Z", "due_date": "2020-02-01", - "start_date": "2020-02-14" + "start_date": "2020-02-14", + "web_url": "http://gitlab.example.com/groups/my-group/-/iterations/13" } ] ``` diff --git a/doc/api/license.md b/doc/api/license.md index 9aaf68d5b89..7aa00335933 100644 --- a/doc/api/license.md +++ b/doc/api/license.md @@ -4,7 +4,7 @@ group: unassigned info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# License **(CORE ONLY)** +# License **(FREE SELF)** To interact with license endpoints, you need to authenticate yourself as an administrator. diff --git a/doc/api/license_templates.md b/doc/api/license_templates.md deleted file mode 100644 index 7587721968b..00000000000 --- a/doc/api/license_templates.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -redirect_to: 'templates/licenses.md' ---- - -This document was moved to [another location](templates/licenses.md). - -<!-- This redirect file can be deleted after February 1, 2021. --> -<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page --> diff --git a/doc/api/members.md b/doc/api/members.md index 47b686d9275..bf2bf8c1220 100644 --- a/doc/api/members.md +++ b/doc/api/members.md @@ -284,6 +284,7 @@ Example response: "state": "active", "avatar_url": "https://www.gravatar.com/avatar/c2525a7f58ae3776070e44c106c48e15?s=80&d=identicon", "web_url": "http://192.168.1.8:3000/root", + "last_activity_on": "2021-01-27" }, { "id": 2, @@ -292,7 +293,8 @@ Example response: "state": "active", "avatar_url": "https://www.gravatar.com/avatar/c2525a7f58ae3776070e44c106c48e15?s=80&d=identicon", "web_url": "http://192.168.1.8:3000/root", - "email": "john@example.com" + "email": "john@example.com", + "last_activity_on": "2021-01-25" }, { "id": 3, @@ -300,7 +302,8 @@ Example response: "name": "Foo bar", "state": "active", "avatar_url": "https://www.gravatar.com/avatar/c2525a7f58ae3776070e44c106c48e15?s=80&d=identicon", - "web_url": "http://192.168.1.8:3000/root" + "web_url": "http://192.168.1.8:3000/root", + "last_activity_on": "2021-01-20" } ] ``` @@ -319,7 +322,7 @@ POST /projects/:id/members | `id` | integer/string | yes | The ID or [URL-encoded path of the project or group](README.md#namespaced-path-encoding) owned by the authenticated user | | `user_id` | integer/string | yes | The user ID of the new member or multiple IDs separated by commas | | `access_level` | integer | yes | A valid access level | -| `expires_at` | string | no | A date string in the format YEAR-MONTH-DAY | +| `expires_at` | string | no | A date string in the format `YEAR-MONTH-DAY` | ```shell curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" --data "user_id=1&access_level=30" "https://gitlab.example.com/api/v4/groups/:id/members" @@ -357,7 +360,7 @@ PUT /projects/:id/members/:user_id | `id` | integer/string | yes | The ID or [URL-encoded path of the project or group](README.md#namespaced-path-encoding) owned by the authenticated user | | `user_id` | integer | yes | The user ID of the member | | `access_level` | integer | yes | A valid access level | -| `expires_at` | string | no | A date string in the format YEAR-MONTH-DAY | +| `expires_at` | string | no | A date string in the format `YEAR-MONTH-DAY` | ```shell curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/members/:user_id?access_level=40" diff --git a/doc/api/merge_request_approvals.md b/doc/api/merge_request_approvals.md index e3ebb61768e..5b8bad1d685 100644 --- a/doc/api/merge_request_approvals.md +++ b/doc/api/merge_request_approvals.md @@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated type: reference, api --- -# Merge request approvals API **(STARTER)** +# Merge request approvals API **(PREMIUM)** Configuration for approvals on all Merge Requests (MR) in the project. Must be authenticated for all endpoints. @@ -13,7 +13,8 @@ Configuration for approvals on all Merge Requests (MR) in the project. Must be a ### Get Configuration -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in [GitLab Starter](https://about.gitlab.com/pricing/) 10.6. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in GitLab 10.6. +> - Moved to GitLab Premium in 13.9. You can request information about a project's approval configuration using the following endpoint: @@ -41,7 +42,8 @@ GET /projects/:id/approvals ### Change configuration -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in [GitLab Starter](https://about.gitlab.com/pricing/) 10.6. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in GitLab 10.6. +> - Moved to GitLab Premium in 13.9. If you are allowed to, you can change approval configuration using the following endpoint: @@ -75,7 +77,8 @@ POST /projects/:id/approvals ### Get project-level rules -> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.3. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in GitLab 12.3. +> - Moved to GitLab Premium in 13.9. > - `protected_branches` property was [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/460) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.7. You can request information about a project's approval rules using the following endpoint: @@ -273,7 +276,8 @@ GET /projects/:id/approval_rules/:approval_rule_id ### Create project-level rule -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.3. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in GitLab 12.3. +> - Moved to GitLab Premium in 13.9. You can create project approval rules using the following endpoint: @@ -375,7 +379,8 @@ POST /projects/:id/approval_rules ### Update project-level rule -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.3. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in GitLab 12.3. +> - Moved to GitLab Premium in 13.9. You can update project approval rules using the following endpoint: @@ -480,7 +485,8 @@ PUT /projects/:id/approval_rules/:approval_rule_id ### Delete project-level rule -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.3. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in GitLab 12.3. +> - Moved to GitLab Premium in 13.9. You can delete project approval rules using the following endpoint: @@ -497,7 +503,8 @@ DELETE /projects/:id/approval_rules/:approval_rule_id ### Change allowed approvers -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in [GitLab Starter](https://about.gitlab.com/pricing/) 10.6. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in GitLab 10.6. +> - Moved to GitLab Premium in 13.9. NOTE: This API endpoint has been deprecated. Please use Approval Rule API instead. @@ -566,7 +573,8 @@ Configuration for approvals on a specific Merge Request. Must be authenticated f ### Get Configuration -> Introduced in [GitLab Starter](https://about.gitlab.com/pricing/) 8.9. +> - Introduced in GitLab 8.9. +> - Moved to GitLab Premium in 13.9. You can request information about a merge request's approval status using the following endpoint: @@ -612,7 +620,8 @@ GET /projects/:id/merge_requests/:merge_request_iid/approvals ### Change approval configuration -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in [GitLab Starter](https://about.gitlab.com/pricing/) 10.6. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in GitLab 10.6. +> - Moved to GitLab Premium in 13.9. If you are allowed to, you can change `approvals_required` using the following endpoint: @@ -648,7 +657,8 @@ POST /projects/:id/merge_requests/:merge_request_iid/approvals ### Change allowed approvers for Merge Request -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in [GitLab Starter](https://about.gitlab.com/pricing/) 10.6. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/183) in GitLab 10.6. +> - Moved to GitLab Premium in 13.9. NOTE: This API endpoint has been deprecated. Please use Approval Rule API instead. @@ -722,7 +732,8 @@ PUT /projects/:id/merge_requests/:merge_request_iid/approvers ### Get the approval state of merge requests -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/13712) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.3. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/13712) in GitLab 12.3. +> - Moved to GitLab Premium in 13.9. You can request information about a merge request's approval state by using the following endpoint: @@ -794,7 +805,8 @@ This includes additional information about the users who have already approved ### Get merge request level rules -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/13712) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.3. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/13712) in GitLab 12.3. +> - Moved to GitLab Premium in 13.9. You can request information about a merge request's approval rules using the following endpoint: @@ -871,7 +883,8 @@ GET /projects/:id/merge_requests/:merge_request_iid/approval_rules ### Create merge request level rule -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.3. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in GitLab 12.3. +> - Moved to GitLab Premium in 13.9. You can create merge request approval rules using the following endpoint: @@ -955,7 +968,8 @@ will be used. ### Update merge request level rule -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.3. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in GitLab 12.3. +> - Moved to GitLab Premium in 13.9. You can update merge request approval rules using the following endpoint: @@ -1040,7 +1054,8 @@ These are system generated rules. ### Delete merge request level rule -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.3. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11877) in GitLab 12.3. +> - Moved to GitLab Premium in 13.9. You can delete merge request approval rules using the following endpoint: @@ -1061,7 +1076,8 @@ These are system generated rules. ## Approve Merge Request -> Introduced in [GitLab Starter](https://about.gitlab.com/pricing/) 8.9. +> - Introduced in GitLab 8.9. +> - Moved to GitLab Premium in 13.9. If you are allowed to, you can approve a merge request using the following endpoint: @@ -1077,7 +1093,7 @@ POST /projects/:id/merge_requests/:merge_request_iid/approve | `id` | integer | yes | The ID of a project | | `merge_request_iid` | integer | yes | The IID of MR | | `sha` | string | no | The HEAD of the MR | -| `approval_password` **(STARTER)** | string | no | Current user's password. Required if [**Require user password to approve**](../user/project/merge_requests/merge_request_approvals.md#require-authentication-when-approving-a-merge-request) is enabled in the project settings. | +| `approval_password` **(PREMIUM)** | string | no | Current user's password. Required if [**Require user password to approve**](../user/project/merge_requests/merge_request_approvals.md#require-authentication-when-approving-a-merge-request) is enabled in the project settings. | The `sha` parameter works in the same way as when [accepting a merge request](merge_requests.md#accept-mr): if it is passed, then it must @@ -1124,7 +1140,8 @@ does not match, the response code will be `409`. ## Unapprove Merge Request ->Introduced in [GitLab Starter](https://about.gitlab.com/pricing/) 9.0. +> - Introduced in GitLab 9.0. +> - Moved to GitLab Premium in 13.9. If you did approve a merge request, you can unapprove it using the following endpoint: diff --git a/doc/api/merge_requests.md b/doc/api/merge_requests.md index c43ac96a42f..097a9e5937f 100644 --- a/doc/api/merge_requests.md +++ b/doc/api/merge_requests.md @@ -15,6 +15,7 @@ type: reference, api > - `reference` was [deprecated](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/20354) in GitLab 12.10 in favour of `references`. > - `with_merge_status_recheck` was [introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/31890) in GitLab 13.0. > - `reviewer_username` and `reviewer_id` were [introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/49341) in GitLab 13.8. +> - `reviewer_ids` was [introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/51186) in GitLab 13.8. Every API call to merge requests must be authenticated. @@ -30,7 +31,7 @@ If you need the value of these fields from this endpoint, set the `with_merge_st `true` in the query. - `references.relative` is relative to the group or project that the merge request is being requested. When the merge request is fetched from its project, `relative` format would be the same as `short` format, and when requested across groups or projects, it is expected to be the same as `full` format. -- If `approvals_before_merge` **(STARTER)** is not provided, it inherits the value from the target project. If provided, the following conditions must hold for it to take effect: +- If `approvals_before_merge` is not provided, it inherits the value from the target project. If provided, the following conditions must hold for it to take effect: - The target project's `approvals_before_merge` must be greater than zero. A value of zero disables approvals for that project. @@ -91,8 +92,8 @@ Parameters: | `author_id` | integer | no | Returns merge requests created by the given user `id`. Mutually exclusive with `author_username`. Combine with `scope=all` or `scope=assigned_to_me`. | | `author_username` | string | no | Returns merge requests created by the given `username`. Mutually exclusive with `author_id`. | | `assignee_id` | integer | no | Returns merge requests assigned to the given user `id`. `None` returns unassigned merge requests. `Any` returns merge requests with an assignee. | -| `approver_ids` **(STARTER)** | integer array | no | Returns merge requests which have specified all the users with the given `id`s as individual approvers. `None` returns merge requests without approvers. `Any` returns merge requests with an approver. | -| `approved_by_ids` **(STARTER)** | integer array | no | Returns merge requests which have been approved by all the users with the given `id`s (Max: 5). `None` returns merge requests with no approvals. `Any` returns merge requests with an approval. | +| `approver_ids` **(PREMIUM)** | integer array | no | Returns merge requests which have specified all the users with the given `id`s as individual approvers. `None` returns merge requests without approvers. `Any` returns merge requests with an approver. | +| `approved_by_ids` **(PREMIUM)** | integer array | no | Returns merge requests which have been approved by all the users with the given `id`s (Max: 5). `None` returns merge requests with no approvals. `Any` returns merge requests with an approval. | | `reviewer_id` | integer | no | Returns merge requests which have the user as a [reviewer](../user/project/merge_requests/getting_started.md#reviewer) with the given user `id`. `None` returns merge requests with no reviewers. `Any` returns merge requests with any reviewer. Mutually exclusive with `reviewer_username`. | | `reviewer_username` | string | no | Returns merge requests which have the user as a [reviewer](../user/project/merge_requests/getting_started.md#reviewer) with the given `username`. `None` returns merge requests with no reviewers. `Any` returns merge requests with any reviewer. Mutually exclusive with `reviewer_id`. | | `my_reaction_emoji` | string | no | Return merge requests reacted by the authenticated user by the given `emoji`. `None` returns issues not given a reaction. `Any` returns issues given at least one reaction. | @@ -216,7 +217,7 @@ Parameters: ] ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab Premium or higher also see the `approvals_before_merge` parameter: ```json @@ -277,8 +278,8 @@ Parameters: | `author_id` | integer | no | Returns merge requests created by the given user `id`. Mutually exclusive with `author_username`. | | `author_username` | string | no | Returns merge requests created by the given `username`. Mutually exclusive with `author_id`.| | `assignee_id` | integer | no | Returns merge requests assigned to the given user `id`. `None` returns unassigned merge requests. `Any` returns merge requests with an assignee. | -| `approver_ids` **(STARTER)** | integer array | no | Returns merge requests which have specified all the users with the given `id`s as individual approvers. `None` returns merge requests without approvers. `Any` returns merge requests with an approver. | -| `approved_by_ids` **(STARTER)** | integer array | no | Returns merge requests which have been approved by all the users with the given `id`s (Max: 5). `None` returns merge requests with no approvals. `Any` returns merge requests with an approval. | +| `approver_ids` **(PREMIUM)** | integer array | no | Returns merge requests which have specified all the users with the given `id`s as individual approvers. `None` returns merge requests without approvers. `Any` returns merge requests with an approver. | +| `approved_by_ids` **(PREMIUM)** | integer array | no | Returns merge requests which have been approved by all the users with the given `id`s (Max: 5). `None` returns merge requests with no approvals. `Any` returns merge requests with an approval. | | `reviewer_id` | integer | no | Returns merge requests which have the user as a [reviewer](../user/project/merge_requests/getting_started.md#reviewer) with the given user `id`. `None` returns merge requests with no reviewers. `Any` returns merge requests with any reviewer. Mutually exclusive with `reviewer_username`. | | `reviewer_username` | string | no | Returns merge requests which have the user as a [reviewer](../user/project/merge_requests/getting_started.md#reviewer) with the given `username`. `None` returns merge requests with no reviewers. `Any` returns merge requests with any reviewer. Mutually exclusive with `reviewer_id`. | @@ -401,7 +402,7 @@ Parameters: ] ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab Premium or higher also see the `approvals_before_merge` parameter: ```json @@ -453,8 +454,8 @@ Parameters: | `author_id` | integer | no | Returns merge requests created by the given user `id`. Mutually exclusive with `author_username`. _([Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13060) in GitLab 9.5)_. | | `author_username` | string | no | Returns merge requests created by the given `username`. Mutually exclusive with `author_id`. _([Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13060) in GitLab 12.10)_. | | `assignee_id` | integer | no | Returns merge requests assigned to the given user `id`. `None` returns unassigned merge requests. `Any` returns merge requests with an assignee. _([Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13060) in GitLab 9.5)_. | -| `approver_ids` **(STARTER)** | integer array | no | Returns merge requests which have specified all the users with the given `id`s as individual approvers. `None` returns merge requests without approvers. `Any` returns merge requests with an approver. | -| `approved_by_ids` **(STARTER)** | integer array | no | Returns merge requests which have been approved by all the users with the given `id`s (Max: 5). `None` returns merge requests with no approvals. `Any` returns merge requests with an approval. | +| `approver_ids` **(PREMIUM)** | integer array | no | Returns merge requests which have specified all the users with the given `id`s as individual approvers. `None` returns merge requests without approvers. `Any` returns merge requests with an approver. | +| `approved_by_ids` **(PREMIUM)** | integer array | no | Returns merge requests which have been approved by all the users with the given `id`s (Max: 5). `None` returns merge requests with no approvals. `Any` returns merge requests with an approval. | | `reviewer_id` | integer | no | Returns merge requests which have the user as a [reviewer](../user/project/merge_requests/getting_started.md#enable-or-disable-merge-request-reviewers) with the given user `id`. `None` returns merge requests with no reviewers. `Any` returns merge requests with any reviewer. Mutually exclusive with `reviewer_username`. | | `reviewer_username` | string | no | Returns merge requests which have the user as a [reviewer](../user/project/merge_requests/getting_started.md#enable-or-disable-merge-request-reviewers) with the given `username`. `None` returns merge requests with no reviewers. `Any` returns merge requests with any reviewer. Mutually exclusive with `reviewer_id`. | | `my_reaction_emoji` | string | no | Return merge requests reacted by the authenticated user by the given `emoji`. `None` returns issues not given a reaction. `Any` returns issues given at least one reaction. _([Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14016) in GitLab 10.0)_. | @@ -574,7 +575,7 @@ Parameters: ] ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab Premium or higher also see the `approvals_before_merge` parameter: ```json @@ -745,7 +746,7 @@ Parameters: } ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab Premium also see the `approvals_before_merge` parameter: ```json @@ -884,6 +885,14 @@ Parameters: "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", "web_url": "https://gitlab.example.com/axel.block" }], + "reviewers": [{ + "name": "Miss Monserrate Beier", + "username": "axel.block", + "id": 12, + "state": "active", + "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", + "web_url": "https://gitlab.example.com/axel.block" + }], "source_project_id": 4, "target_project_id": 4, "labels": [ ], @@ -1052,6 +1061,8 @@ POST /projects/:id/merge_requests | `title` | string | yes | Title of MR. | | `assignee_id` | integer | no | Assignee user ID. | | `assignee_ids` | integer array | no | The ID of the user(s) to assign the MR to. Set to `0` or provide an empty value to unassign all assignees. | +| `assignee_ids` | integer array | no | The ID of the user(s) to assign the MR to. If set to `0` or left empty, there will be no assignees added. | +| `reviewer_ids` | integer array | no | The ID of the user(s) added as a reviewer to the MR. If set to `0` or left empty, there will be no reviewers added. | | `description` | string | no | Description of MR. Limited to 1,048,576 characters. | | `target_project_id` | integer | no | The target project (numeric ID). | | `labels` | string | no | Labels for MR as a comma-separated list. | @@ -1200,6 +1211,7 @@ PUT /projects/:id/merge_requests/:merge_request_iid | `title` | string | no | Title of MR. | | `assignee_id` | integer | no | The ID of the user to assign the merge request to. Set to `0` or provide an empty value to unassign all assignees. | | `assignee_ids` | integer array | no | The ID of the user(s) to assign the MR to. Set to `0` or provide an empty value to unassign all assignees. | +| `reviewer_ids` | integer array | no | The ID of the user(s) set as a reviewer to the MR. Set the value to `0` or provide an empty value to unset all reviewers. | | `milestone_id` | integer | no | The global ID of a milestone to assign the merge request to. Set to `0` or provide an empty value to unassign a milestone.| | `labels` | string | no | Comma-separated label names for a merge request. Set to an empty string to unassign all labels. | | `add_labels` | string | no | Comma-separated label names to add to a merge request. | @@ -1252,6 +1264,14 @@ Must include at least one non-required attribute from above. "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", "web_url": "https://gitlab.example.com/axel.block" }], + "reviewers": [{ + "name": "Miss Monserrate Beier", + "username": "axel.block", + "id": 12, + "state": "active", + "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", + "web_url": "https://gitlab.example.com/axel.block" + }], "source_project_id": 2, "target_project_id": 3, "labels": [ @@ -1333,7 +1353,7 @@ Must include at least one non-required attribute from above. } ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab Premium or higher also see the `approvals_before_merge` parameter: ```json @@ -1386,7 +1406,7 @@ Parameters: | `merge_request_iid` | integer | yes | The internal ID of the merge request. | | `merge_commit_message` | string | no | Custom merge commit message. | | `squash_commit_message` | string | no | Custom squash commit message. | -| `squash` | boolean | no | If `true` the commits the commits are squashed into a single commit on merge. | +| `squash` | boolean | no | If `true` the commits are squashed into a single commit on merge. | | `should_remove_source_branch` | boolean | no | If `true` removes the source branch. | | `merge_when_pipeline_succeeds` | boolean | no | If `true` the MR is merged when the pipeline succeeds. | | `sha` | string | no | If present, then this SHA must match the HEAD of the source branch, otherwise the merge fails. | @@ -1429,6 +1449,14 @@ Parameters: "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", "web_url": "https://gitlab.example.com/axel.block" }], + "reviewers": [{ + "name": "Miss Monserrate Beier", + "username": "axel.block", + "id": 12, + "state": "active", + "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", + "web_url": "https://gitlab.example.com/axel.block" + }], "source_project_id": 2, "target_project_id": 3, "labels": [ @@ -1510,7 +1538,7 @@ Parameters: } ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab Premium also see the `approvals_before_merge` parameter: ```json @@ -1609,6 +1637,14 @@ Parameters: "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", "web_url": "https://gitlab.example.com/axel.block" }], + "reviewers": [{ + "name": "Miss Monserrate Beier", + "username": "axel.block", + "id": 12, + "state": "active", + "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", + "web_url": "https://gitlab.example.com/axel.block" + }], "source_project_id": 2, "target_project_id": 3, "labels": [ @@ -1690,7 +1726,7 @@ Parameters: } ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab Premium or higher also see the `approvals_before_merge` parameter: ```json @@ -1902,6 +1938,14 @@ Example response: "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", "web_url": "https://gitlab.example.com/axel.block" }], + "reviewers": [{ + "name": "Miss Monserrate Beier", + "username": "axel.block", + "id": 12, + "state": "active", + "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", + "web_url": "https://gitlab.example.com/axel.block" + }], "source_project_id": 2, "target_project_id": 3, "labels": [ @@ -1982,7 +2026,7 @@ Example response: } ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab Premium also see the `approvals_before_merge` parameter: ```json @@ -2053,6 +2097,14 @@ Example response: "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", "web_url": "https://gitlab.example.com/axel.block" }], + "reviewers": [{ + "name": "Miss Monserrate Beier", + "username": "axel.block", + "id": 12, + "state": "active", + "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", + "web_url": "https://gitlab.example.com/axel.block" + }], "source_project_id": 2, "target_project_id": 3, "labels": [ @@ -2133,7 +2185,7 @@ Example response: } ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab Premium or higher also see the `approvals_before_merge` parameter: ```json @@ -2224,6 +2276,14 @@ Example response: "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", "web_url": "https://gitlab.example.com/axel.block" }], + "reviewers": [{ + "name": "Miss Monserrate Beier", + "username": "axel.block", + "id": 12, + "state": "active", + "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon", + "web_url": "https://gitlab.example.com/axel.block" + }], "source_project_id": 3, "target_project_id": 3, "labels": [], @@ -2513,7 +2573,7 @@ Example response: } ``` -## Approvals **(STARTER)** +## Approvals For approvals, please see [Merge Request Approvals](merge_request_approvals.md) diff --git a/doc/api/metrics_dashboard_annotations.md b/doc/api/metrics_dashboard_annotations.md index b92e26b03fb..896420ed0fb 100644 --- a/doc/api/metrics_dashboard_annotations.md +++ b/doc/api/metrics_dashboard_annotations.md @@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w type: concepts, howto --- -# Dashboard annotations API +# Dashboard annotations API **(FREE)** > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/29089) in GitLab 12.10 behind a disabled feature flag. diff --git a/doc/api/metrics_user_starred_dashboards.md b/doc/api/metrics_user_starred_dashboards.md index 79040333148..9178291181e 100644 --- a/doc/api/metrics_user_starred_dashboards.md +++ b/doc/api/metrics_user_starred_dashboards.md @@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w type: concepts, howto --- -# User-starred metrics dashboards API +# User-starred metrics dashboards API **(FREE)** The starred dashboard feature makes navigating to frequently-used dashboards easier by displaying favorited dashboards at the top of the select list. diff --git a/doc/api/namespaces.md b/doc/api/namespaces.md index 4e5a418be7a..a89e91f82e5 100644 --- a/doc/api/namespaces.md +++ b/doc/api/namespaces.md @@ -6,7 +6,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w # Namespaces API -Usernames and groupnames fall under a special category called namespaces. +Usernames and group names fall under a special category called namespaces. For users and groups supported API calls see the [users](users.md) and [groups](groups.md) documentation respectively. diff --git a/doc/api/notification_settings.md b/doc/api/notification_settings.md index 74746f60d7e..a85c6475331 100644 --- a/doc/api/notification_settings.md +++ b/doc/api/notification_settings.md @@ -196,7 +196,7 @@ Example responses: } ``` -Users on GitLab [Ultimate or Gold](https://about.gitlab.com/pricing/) also see the `new_epic` +Users on GitLab [Ultimate](https://about.gitlab.com/pricing/) also see the `new_epic` parameter: ```json diff --git a/doc/api/oauth2.md b/doc/api/oauth2.md index a80a97890ba..92d109cac5f 100644 --- a/doc/api/oauth2.md +++ b/doc/api/oauth2.md @@ -21,7 +21,7 @@ GitLab currently supports the following authorization flows: - **Authorization code with [Proof Key for Code Exchange (PKCE)](https://tools.ietf.org/html/rfc7636):** Most secure. Without PKCE, you'd have to include client secrets on mobile clients, - and is recommended for both client and server aoos. + and is recommended for both client and server apps. - **Authorization code:** Secure and common flow. Recommended option for secure server-side apps. - **Implicit grant:** Originally designed for user-agent only apps, such as @@ -89,7 +89,7 @@ Before starting the flow, generate the `STATE`, the `CODE_VERIFIER` and the `COD `/oauth/authorize` page with the following query parameters: ```plaintext - https://gitlab.example.com/oauth/authorize?client_id=APP_ID&redirect_uri=REDIRECT_URI&response_type=code&state=YOUR_UNIQUE_STATE_HASH&scope=REQUESTED_SCOPES&code_challenge=CODE_CHALLENGE&code_challenge_method=S256 + https://gitlab.example.com/oauth/authorize?client_id=APP_ID&redirect_uri=REDIRECT_URI&response_type=code&state=STATE&scope=REQUESTED_SCOPES&code_challenge=CODE_CHALLENGE&code_challenge_method=S256 ``` This page asks the user to approve the request from the app to access their @@ -100,7 +100,7 @@ Before starting the flow, generate the `STATE`, the `CODE_VERIFIER` and the `COD The redirect includes the authorization `code`, for example: ```plaintext - https://example.com/oauth/redirect?code=1234567890&state=YOUR_UNIQUE_STATE_HASH + https://example.com/oauth/redirect?code=1234567890&state=STATE ``` 1. With the authorization `code` returned from the previous request (denoted as @@ -139,29 +139,31 @@ detailed flow description. The authorization code flow is essentially the same as [authorization code flow with PKCE](#authorization-code-with-proof-key-for-code-exchange-pkce), +Before starting the flow, generate the `STATE`. It is a value that can't be predicted +used by the client to maintain state between the request and callback. It should also +be used as a CSRF token. + 1. Request authorization code. To do that, you should redirect the user to the - `/oauth/authorize` endpoint with the following GET parameters: + `/oauth/authorize` page with the following query parameters: ```plaintext https://gitlab.example.com/oauth/authorize?client_id=APP_ID&redirect_uri=REDIRECT_URI&response_type=code&state=STATE&scope=REQUESTED_SCOPES ``` - This will ask the user to approve the applications access to their account - based on the scopes specified in `REQUESTED_SCOPES` and then redirect back to - the `REDIRECT_URI` you provided. The [scope parameter](https://github.com/doorkeeper-gem/doorkeeper/wiki/Using-Scopes#requesting-particular-scopes) - is a space separated list of scopes you want to have access to (e.g. `scope=read_user+profile` - would request `read_user` and `profile` scopes). The redirect will - include the GET `code` parameter, for example: + This page asks the user to approve the request from the app to access their + account based on the scopes specified in `REQUESTED_SCOPES`. The user is then + redirected back to the specified `REDIRECT_URI`. The [scope parameter](https://github.com/doorkeeper-gem/doorkeeper/wiki/Using-Scopes#requesting-particular-scopes) + is a space separated list of scopes associated with the user. + For example,`scope=read_user+profile` requests the `read_user` and `profile` scopes. + The redirect includes the authorization `code`, for example: ```plaintext https://example.com/oauth/redirect?code=1234567890&state=STATE ``` - You should then use `code` to request an access token. - -1. After you have the authorization code you can request an `access_token` using the - code. You can do that by using any HTTP client. In the following example, - we are using Ruby's `rest-client`: +1. With the authorization `code` returned from the previous request (shown as + `RETURNED_CODE` in the following example), you can request an `access_token`, with + any HTTP client. The following example uses Ruby's `rest-client`: ```ruby parameters = 'client_id=APP_ID&client_secret=APP_SECRET&code=RETURNED_CODE&grant_type=authorization_code&redirect_uri=REDIRECT_URI' diff --git a/doc/api/packages.md b/doc/api/packages.md index a0d966fdd88..516f171e851 100644 --- a/doc/api/packages.md +++ b/doc/api/packages.md @@ -92,7 +92,7 @@ GET /groups/:id/packages | `include_versionless` | boolean | no | When set to true, versionless packages are included in the response. (_Introduced in GitLab 13.8_) ```shell -curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/packages?exclude_subgroups=true" +curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/packages?exclude_subgroups=false" ``` > **Deprecation:** @@ -264,7 +264,7 @@ GET /projects/:id/packages/:package_id/package_files | `package_id` | integer | yes | ID of a package. | ```shell -curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/packages/4/package_files" +curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/:id/packages/4/package_files" ``` Example response: diff --git a/doc/api/personal_access_tokens.md b/doc/api/personal_access_tokens.md index ca0ac3522c3..4949bf504fa 100644 --- a/doc/api/personal_access_tokens.md +++ b/doc/api/personal_access_tokens.md @@ -11,7 +11,7 @@ You can read more about [personal access tokens](../user/profile/personal_access ## List personal access tokens > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/227264) in [GitLab Ultimate](https://about.gitlab.com/pricing/) 13.3. -> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/270200) to [GitLab Core](https://about.gitlab.com/pricing/) in 13.6. +> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/270200) to [GitLab Free](https://about.gitlab.com/pricing/) in 13.6. Get a list of personal access tokens. @@ -71,7 +71,7 @@ curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/a ## Revoke a personal access token > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/216004) in [GitLab Ultimate](https://about.gitlab.com/pricing/) 13.3. -> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/270200) to [GitLab Core](https://about.gitlab.com/pricing/) in 13.6. +> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/270200) to [GitLab Free](https://about.gitlab.com/pricing/) in 13.6. Revoke a personal access token. diff --git a/doc/api/project_aliases.md b/doc/api/project_aliases.md index 270c88ca661..439f34ad93b 100644 --- a/doc/api/project_aliases.md +++ b/doc/api/project_aliases.md @@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated type: reference, api --- -# Project Aliases API **(PREMIUM ONLY)** +# Project Aliases API **(PREMIUM SELF)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/3264) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.1. diff --git a/doc/api/project_analytics.md b/doc/api/project_analytics.md index 97b15cc2c88..8f1ba912e57 100644 --- a/doc/api/project_analytics.md +++ b/doc/api/project_analytics.md @@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w type: reference, api --- -# Project Analytics API **(ULTIMATE ONLY)** +# Project Analytics API **(ULTIMATE SELF)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/279039) in [GitLab Ultimate](https://about.gitlab.com/pricing/) 13.7. diff --git a/doc/api/project_badges.md b/doc/api/project_badges.md index 2ca22baf654..331d05e0d6d 100644 --- a/doc/api/project_badges.md +++ b/doc/api/project_badges.md @@ -13,11 +13,14 @@ type: reference, api Badges support placeholders that will be replaced in real time in both the link and image URL. The allowed placeholders are: +<!-- vale gitlab.Spelling = NO --> + - **%{project_path}**: will be replaced by the project path. - **%{project_id}**: will be replaced by the project ID. - **%{default_branch}**: will be replaced by the project default branch. - **%{commit_sha}**: will be replaced by the last project's commit SHA. +<!-- vale gitlab.Spelling = YES --> ## List all badges of a project Gets a list of a project's badges and its group badges. @@ -103,9 +106,10 @@ POST /projects/:id/badges | `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user | | `link_url` | string | yes | URL of the badge link | | `image_url` | string | yes | URL of the badge image | +| `name` | string | no | Name of the badge | ```shell -curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" --data "link_url=https://gitlab.com/gitlab-org/gitlab-foss/commits/master&image_url=https://shields.io/my/badge1&position=0" "https://gitlab.example.com/api/v4/projects/:id/badges" +curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" --data "link_url=https://gitlab.com/gitlab-org/gitlab-foss/commits/master&image_url=https://shields.io/my/badge1&name=mybadge" "https://gitlab.example.com/api/v4/projects/:id/badges" ``` Example response: @@ -113,6 +117,7 @@ Example response: ```json { "id": 1, + "name": "mybadge", "link_url": "https://gitlab.com/gitlab-org/gitlab-foss/commits/master", "image_url": "https://shields.io/my/badge1", "rendered_link_url": "https://gitlab.com/gitlab-org/gitlab-foss/commits/master", @@ -135,6 +140,7 @@ PUT /projects/:id/badges/:badge_id | `badge_id` | integer | yes | The badge ID | | `link_url` | string | no | URL of the badge link | | `image_url` | string | no | URL of the badge image | +| `name` | string | no | Name of the badge | ```shell curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/:id/badges/:badge_id" @@ -145,6 +151,7 @@ Example response: ```json { "id": 1, + "name": "mybadge", "link_url": "https://gitlab.com/gitlab-org/gitlab-foss/commits/master", "image_url": "https://shields.io/my/badge", "rendered_link_url": "https://gitlab.com/gitlab-org/gitlab-foss/commits/master", diff --git a/doc/api/project_clusters.md b/doc/api/project_clusters.md index 3cc8cd07923..01bff56b9f6 100644 --- a/doc/api/project_clusters.md +++ b/doc/api/project_clusters.md @@ -4,7 +4,7 @@ group: Configure info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Project clusters API +# Project clusters API **(CORE)** > [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/23922) in GitLab 11.7. diff --git a/doc/api/project_import_export.md b/doc/api/project_import_export.md index 0711cc8abd6..f737dd6d46c 100644 --- a/doc/api/project_import_export.md +++ b/doc/api/project_import_export.md @@ -12,7 +12,7 @@ type: reference, api See also: - [Project import/export documentation](../user/project/settings/import_export.md). -- [Project import/export administration Rake tasks](../administration/raketasks/project_import_export.md). **(CORE ONLY)** +- [Project import/export administration Rake tasks](../administration/raketasks/project_import_export.md). **(FREE SELF)** ## Schedule an export @@ -194,7 +194,7 @@ requests.post(url, headers=headers, data=data, files=files) NOTE: The maximum import file size can be set by the Administrator, default is `0` (unlimited).. -As an administrator, you can modify the maximum import file size. To do so, use the `max_import_size` option in the [Application settings API](settings.md#change-application-settings) or the [Admin UI](../user/admin_area/settings/account_and_limit_settings.md). +As an administrator, you can modify the maximum import file size. To do so, use the `max_import_size` option in the [Application settings API](settings.md#change-application-settings) or the [Admin UI](../user/admin_area/settings/account_and_limit_settings.md). Default [modified](https://gitlab.com/gitlab-org/gitlab/-/issues/251106) from 50MB to 0 in GitLab 13.8. ## Import status diff --git a/doc/api/project_level_variables.md b/doc/api/project_level_variables.md index 413d89950cd..8ef887675e9 100644 --- a/doc/api/project_level_variables.md +++ b/doc/api/project_level_variables.md @@ -17,7 +17,7 @@ GET /projects/:id/variables | Attribute | Type | required | Description | |-----------|---------|----------|---------------------| -| `id` | integer/string | yes | The ID of a project or [urlencoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | +| `id` | integer/string | yes | The ID of a project or [URL-encoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/variables" @@ -48,7 +48,7 @@ GET /projects/:id/variables/:key | Attribute | Type | required | Description | |-----------|---------|----------|-----------------------| -| `id` | integer/string | yes | The ID of a project or [urlencoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | +| `id` | integer/string | yes | The ID of a project or [URL-encoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | | `key` | string | yes | The `key` of a variable | | `filter` | hash | no | Available filters: `[environment_scope]`. See the [`filter` parameter details](#the-filter-parameter). | @@ -76,7 +76,7 @@ POST /projects/:id/variables | Attribute | Type | required | Description | |---------------------|---------|----------|-----------------------| -| `id` | integer/string | yes | The ID of a project or [urlencoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | +| `id` | integer/string | yes | The ID of a project or [URL-encoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | | `key` | string | yes | The `key` of a variable; must have no more than 255 characters; only `A-Z`, `a-z`, `0-9`, and `_` are allowed | | `value` | string | yes | The `value` of a variable | | `variable_type` | string | no | The type of a variable. Available types are: `env_var` (default) and `file` | @@ -109,7 +109,7 @@ PUT /projects/:id/variables/:key | Attribute | Type | required | Description | |---------------------|---------|----------|-------------------------| -| `id` | integer/string | yes | The ID of a project or [urlencoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | +| `id` | integer/string | yes | The ID of a project or [URL-encoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | | `key` | string | yes | The `key` of a variable | | `value` | string | yes | The `value` of a variable | | `variable_type` | string | no | The type of a variable. Available types are: `env_var` (default) and `file` | @@ -143,7 +143,7 @@ DELETE /projects/:id/variables/:key | Attribute | Type | required | Description | |-----------|---------|----------|-------------------------| -| `id` | integer/string | yes | The ID of a project or [urlencoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | +| `id` | integer/string | yes | The ID of a project or [URL-encoded NAMESPACE/PROJECT_NAME of the project](README.md#namespaced-path-encoding) owned by the authenticated user | | `key` | string | yes | The `key` of a variable | | `filter` | hash | no | Available filters: `[environment_scope]`. See the [`filter` parameter details](#the-filter-parameter). | diff --git a/doc/api/project_repository_storage_moves.md b/doc/api/project_repository_storage_moves.md index 52c357ca32a..fd263314768 100644 --- a/doc/api/project_repository_storage_moves.md +++ b/doc/api/project_repository_storage_moves.md @@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w type: reference --- -# Project repository storage moves API **(CORE ONLY)** +# Project repository storage moves API **(FREE SELF)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/31285) in GitLab 13.0. diff --git a/doc/api/project_snippets.md b/doc/api/project_snippets.md index d264e68e96a..c5adf361fb6 100644 --- a/doc/api/project_snippets.md +++ b/doc/api/project_snippets.md @@ -225,8 +225,8 @@ Parameters: - `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user - `snippet_id` (required) - The ID of a project's snippet -- `ref` (required) - The name of a branch, tag or commit e.g. master -- `file_path` (required) - The URL-encoded path to the file, e.g. snippet%2Erb +- `ref` (required) - The name of a branch, tag or commit, such as `master` +- `file_path` (required) - The URL-encoded path to the file, such as `snippet%2Erb` Example request: @@ -239,7 +239,7 @@ curl "https://gitlab.com/api/v4/projects/1/snippets/2/files/master/snippet%2Erb/ > [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/29508) in GitLab 9.4. -Available only for admins. +Available only for users with Administrator [permissions](../user/permissions.md). ```plaintext GET /projects/:id/snippets/:snippet_id/user_agent_detail diff --git a/doc/api/project_templates.md b/doc/api/project_templates.md index d75047d6cb3..6c423f0b058 100644 --- a/doc/api/project_templates.md +++ b/doc/api/project_templates.md @@ -34,7 +34,7 @@ GET /projects/:id/templates/:type | Attribute | Type | Required | Description | | ---------- | ------ | -------- | ----------- | | `id` | integer / string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) | -| `type` | string | yes| The type `(dockerfiles|gitignores|gitlab_ci_ymls|licenses|issues|merge_requests)` of the template | +| `type` | string | yes | The type `(dockerfiles|gitignores|gitlab_ci_ymls|licenses|issues|merge_requests)` of the template | Example response (licenses): diff --git a/doc/api/projects.md b/doc/api/projects.md index f9a4b3ba55e..f58830f699c 100644 --- a/doc/api/projects.md +++ b/doc/api/projects.md @@ -298,7 +298,7 @@ When the user is authenticated and `simple` is not set this returns something li ``` NOTE: -For users of GitLab [Silver, Premium, or higher](https://about.gitlab.com/pricing/), +For users of GitLab [Premium or higher](https://about.gitlab.com/pricing/), the `marked_for_deletion_at` attribute has been deprecated, and is removed in API v5 in favor of the `marked_for_deletion_on` attribute. @@ -1280,6 +1280,8 @@ POST /projects/:id/fork | `namespace_path` | string | **{dotted-circle}** No | The path of the namespace that the project is forked to. | | `namespace` | integer/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. | +| `description` | string | **{dotted-circle}** No | The description 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. | ## List Forks of a project @@ -1875,7 +1877,7 @@ This endpoint: - Deletes a project including all associated resources (including issues and merge requests). - From [GitLab 13.2](https://gitlab.com/gitlab-org/gitlab/-/issues/220382) on - [Premium or Silver](https://about.gitlab.com/pricing/) or higher tiers, group + [Premium](https://about.gitlab.com/pricing/) or higher tiers, group admins can [configure](../user/group/index.md#enabling-delayed-project-removal) projects within a group to be deleted after a delayed period. When enabled, actual deletion happens after the number of days specified in the @@ -2229,7 +2231,7 @@ GET /projects/:id/push_rule } ``` -Users of GitLab [Premium, Silver, or higher](https://about.gitlab.com/pricing/) +Users of GitLab [Premium or higher](https://about.gitlab.com/pricing/) can also see the `commit_committer_check` and `reject_unsigned_commits` parameters: diff --git a/doc/api/protected_branches.md b/doc/api/protected_branches.md index 1dd15231dd8..9ff4e374311 100644 --- a/doc/api/protected_branches.md +++ b/doc/api/protected_branches.md @@ -62,7 +62,7 @@ Example response: ] ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) will also see +Users on GitLab Premium or higher also see the `user_id` and `group_id` parameters: Example response: @@ -133,7 +133,7 @@ Example response: } ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) will also see +Users on GitLab Premium or higher also see the `user_id` and `group_id` parameters: Example response: @@ -182,9 +182,9 @@ curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitla | `push_access_level` | string | no | Access levels allowed to push (defaults: `40`, maintainer access level) | | `merge_access_level` | string | no | Access levels allowed to merge (defaults: `40`, maintainer access level) | | `unprotect_access_level` | string | no | Access levels allowed to unprotect (defaults: `40`, maintainer access level) | -| `allowed_to_push` | array | no | **(STARTER)** Array of access levels allowed to push, with each described by a hash | -| `allowed_to_merge` | array | no | **(STARTER)** Array of access levels allowed to merge, with each described by a hash | -| `allowed_to_unprotect` | array | no | **(STARTER)** Array of access levels allowed to unprotect, with each described by a hash | +| `allowed_to_push` | array | no | **(PREMIUM)** Array of access levels allowed to push, with each described by a hash | +| `allowed_to_merge` | array | no | **(PREMIUM)** Array of access levels allowed to merge, with each described by a hash | +| `allowed_to_unprotect` | array | no | **(PREMIUM)** Array of access levels allowed to unprotect, with each described by a hash | | `code_owner_approval_required` | boolean | no | **(PREMIUM)** Prevent pushes to this branch if it matches an item in the [`CODEOWNERS` file](../user/project/code_owners.md). (defaults: false) | Example response: @@ -215,7 +215,7 @@ Example response: } ``` -Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) will also see +Users on GitLab Premium or higher also see the `user_id` and `group_id` parameters: Example response: @@ -252,7 +252,7 @@ Example response: } ``` -### Example with user / group level access **(STARTER)** +### Example with user / group level access **(PREMIUM)** Elements in the `allowed_to_push` / `allowed_to_merge` / `allowed_to_unprotect` array should take the form `{user_id: integer}`, `{group_id: integer}` or `{access_level: integer}`. Each user must have access to the project and each group must [have this project shared](../user/project/members/share_project_with_groups.md). These access levels allow [more granular control over protected branch access](../user/project/protected_branches.md#restricting-push-and-merge-access-to-certain-users) and were [added to the API](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/3516) in GitLab 10.3 EE. @@ -295,7 +295,9 @@ Example response: } ``` -### Example with allow to push and allow to merge access **(STARTER)** +### Example with allow to push and allow to merge access **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. Example request: @@ -375,7 +377,7 @@ curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://git ## Require code owner approvals for a single branch -Update the "code owner approval required" option for the given protected branch protected branch. +Update the "code owner approval required" option for the given protected branch. ```plaintext PATCH /projects/:id/protected_branches/:name diff --git a/doc/api/releases/index.md b/doc/api/releases/index.md index a58d6246a63..be9512ed0e0 100644 --- a/doc/api/releases/index.md +++ b/doc/api/releases/index.md @@ -486,7 +486,7 @@ Example response: } ``` -### Group milestones **(PREMIUM ONLY)** +### Group milestones **(PREMIUM SELF)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/235391) in [GitLab Premium](https://about.gitlab.com/pricing/) 13.5. @@ -495,7 +495,7 @@ array for [Create a release](#create-a-release) and [Update a release](#update-a API calls. Only milestones associated with the project's group may be specified, and adding milestones for ancestor groups raises an error. -## Collect release evidence **(PREMIUM ONLY)** +## Collect release evidence **(PREMIUM SELF)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/199065) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.10. diff --git a/doc/api/repositories.md b/doc/api/repositories.md index efdf010e072..6bbd4c56e40 100644 --- a/doc/api/repositories.md +++ b/doc/api/repositories.md @@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated type: reference, api --- -# Repositories API +# Repositories API **(CORE)** ## List repository tree @@ -18,14 +18,15 @@ This command provides essentially the same functionality as the `git ls-tree` co GET /projects/:id/repository/tree ``` -Parameters: +Supported attributes: -- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user -- `path` (optional) - The path inside repository. Used to get content of subdirectories -- `ref` (optional) - The name of a repository branch or tag or if not given the default branch -- `recursive` (optional) - Boolean value used to get a recursive tree (false by default) -- `per_page` (optional) - Number of results to show per page. If not specified, defaults to `20`. - Read more on [pagination](README.md#pagination). +| Attribute | Type | Required | Description | +| :---------- | :------------- | :------- | :---------- | +| `id` | integer/string | no | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user. | +| `path` | string | yes | The path inside repository. Used to get content of subdirectories. | +| `ref` | string | yes | The name of a repository branch or tag or if not given the default branch. | +| `recursive` | boolean | yes | Boolean value used to get a recursive tree (false by default). | +| `per_page` | integer | yes | Number of results to show per page. If not specified, defaults to `20`. [Learn more on pagination](README.md#pagination). | ```json [ @@ -91,10 +92,12 @@ without authentication if the repository is publicly accessible. GET /projects/:id/repository/blobs/:sha ``` -Parameters: +Supported attributes: -- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user -- `sha` (required) - The blob SHA +| Attribute | Type | Required | Description | +| :-------- | :------------- | :------- | :---------- | +| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user. | +| `sha` | string | yes | The blob SHA. | ## Raw blob content @@ -105,10 +108,12 @@ without authentication if the repository is publicly accessible. GET /projects/:id/repository/blobs/:sha/raw ``` -Parameters: +Supported attributes: -- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user -- `sha` (required) - The blob SHA +| Attribute | Type | Required | Description | +| :-------- | :------- | :------- | :---------- | +| `id` | datatype | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user. | +| `sha` | datatype | yes | The blob SHA. | ## Get file archive @@ -128,10 +133,14 @@ GET /projects/:id/repository/archive[.format] `bz2`, `tar`, and `zip`. For example, specifying `archive.zip` would send an archive in ZIP format. -Parameters: +Supported attributes: -- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user -- `sha` (optional) - The commit SHA to download. A tag, branch reference, or SHA can be used. This defaults to the tip of the default branch if not specified. For example: +| Attribute | Type | Required | Description | +|:------------|:---------------|:---------|:----------------------| +| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user. | +| `sha` | string | no | The commit SHA to download. A tag, branch reference, or SHA can be used. This defaults to the tip of the default branch if not specified. | + +Example request: ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.com/api/v4/projects/<project_id>/repository/archive?sha=<commit_sha>" @@ -146,21 +155,22 @@ publicly accessible. Note that diffs could have an empty diff string if [diff li GET /projects/:id/repository/compare ``` -Parameters: +Supported attributes: -- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user -- `from` (required) - the commit SHA or branch name -- `to` (required) - the commit SHA or branch name -- `straight` (optional) - comparison method, `true` for direct comparison between `from` and `to` (`from`..`to`), `false` to compare using merge base (`from`...`to`)'. Default is `false`. +| Attribute | Type | Required | Description | +| :--------- | :------------- | :------- | :---------- | +| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user. | +| `from` | string | yes | The commit SHA or branch name. | +| `to` | string | yes | The commit SHA or branch name. | +| `straight` | boolean | no | Comparison method, `true` for direct comparison between `from` and `to` (`from`..`to`), `false` to compare using merge base (`from`...`to`)'. Default is `false`. | ```plaintext GET /projects/:id/repository/compare?from=master&to=feature ``` -Response: +Example response: ```json - { "commit": { "id": "12d65c8dd2b2676fa3ac47d955accc085a37a9c1", @@ -203,15 +213,17 @@ GET /projects/:id/repository/contributors ``` WARNING: -The `additions` and `deletions` attributes are deprecated [as of GitLab 13.4](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39653) because they [always return `0`](https://gitlab.com/gitlab-org/gitlab/-/issues/233119). +The `additions` and `deletions` attributes are deprecated [as of GitLab 13.4](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39653), because they [always return `0`](https://gitlab.com/gitlab-org/gitlab/-/issues/233119). -Parameters: +Supported attributes: -- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user -- `order_by` (optional) - Return contributors ordered by `name`, `email`, or `commits` (orders by commit date) fields. Default is `commits` -- `sort` (optional) - Return contributors sorted in `asc` or `desc` order. Default is `asc` +| Attribute | Type | Required | Description | +| :--------- | :------------- | :------- | :---------- | +| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user. | +| `order_by` | string | no | Return contributors ordered by `name`, `email`, or `commits` (orders by commit date) fields. Default is `commits`. | +| `sort` | string | no | Return contributors sorted in `asc` or `desc` order. Default is `asc`. | -Response: +Example response: ```json [{ @@ -237,10 +249,12 @@ Get the common ancestor for 2 or more refs (commit SHAs, branch names or tags). GET /projects/:id/repository/merge_base ``` -| Attribute | Type | Required | Description | -| --------- | ---- | -------- | ----------- | -| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) | -| `refs` | array | yes | The refs to find the common ancestor of, multiple refs can be passed | +| Attribute | Type | Required | Description | +| --------- | -------------- | -------- | ------------------------------------------------------------------------------- | +| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) | +| `refs` | array | yes | The refs to find the common ancestor of, multiple refs can be passed | + +Example request: ```shell curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/repository/merge_base?refs[]=304d257dcb821665ab5110318fc58a007bd104ed&refs[]=0031876facac3f2b2702a0e53a26e89939a42209" @@ -264,3 +278,252 @@ Example response: "committed_date": "2014-02-27T08:03:18.000Z" } ``` + +## Generate changelog data + +> - [Introduced](https://gitlab.com/groups/gitlab-com/gl-infra/-/epics/351) in GitLab 13.9. +> - It's [deployed behind a feature flag](../user/feature_flags.md), disabled by default. +> - It's disabled on GitLab.com. +> - It's not yet recommended for production use. +> - To use it in GitLab self-managed instances, ask a GitLab administrator to [enable it](#enable-or-disable-generating-changelog-data). + +WARNING: +This feature might not be available to you. Check the **version history** note above for details. + +Generate changelog data based on commits in a repository. + +Given a version (using semantic versioning) and a range of commits, +GitLab generates a changelog for all commits that use a particular +[Git trailer](https://git-scm.com/docs/git-interpret-trailers). + +The output of this process is a new section in a changelog file in the Git +repository of the given project. The output format is in Markdown, and can be +customized. + +```plaintext +POST /projects/:id/repository/changelog +``` + +Supported attributes: + +| Attribute | Type | Required | Description | +| :-------- | :------- | :--------- | :---------- | +| `version` | string | yes | The version to generate the changelog for. The format must follow [semantic versioning](https://semver.org/). | +| `from` | string | yes | The start of the range of commits (as a SHA) to use for generating the changelog. This commit itself isn't included in the list. | +| `to` | string | yes | The end of the range of commits (as a SHA) to use for the changelog. This commit _is_ included in the list. | +| `date` | datetime | no | The date and time of the release, defaults to the current time. | +| `branch` | string | no | The branch to commit the changelog changes to, defaults to the project's default branch. | +| `trailer` | string | no | The Git trailer to use for including commits, defaults to `Changelog`. | +| `file` | string | no | The file to commit the changes to, defaults to `CHANGELOG.md`. | +| `message` | string | no | The commit message to produce when committing the changes, defaults to `Add changelog for version X` where X is the value of the `version` argument. | + +### How it works + +Changelogs are generated based on commit titles. Commits are only included if +they contain a specific Git trailer. GitLab uses the value of this trailer to +categorize the changes. + +GitLab uses Git trailers, because Git trailers are +supported by Git out of the box. We use commits as input, as this is the only +source of data every project uses. In addition, commits can be retrieved when +operating on a mirror. This is important for GitLab itself, because during a security +release we might need to include changes from both public projects and private +security mirrors. + +Changelogs are generated by taking the title of the commits to include and using +these as the changelog entries. You can enrich entries with additional data, +such as a link to the merge request or details about the commit author. You can +[customize the format of a changelog](#customize-the-changelog-output) section with a template. + +### Customize the changelog output + +The output is customized using a YAML configuration file stored in your +project's Git repository. This file must reside in +`.gitlab/changelog_config.yml`. + +You can set the following variables in this file: + +- `date_format`: the date format to use in the title of the newly added + changelog data. This uses regular `strftime` formatting. +- `template`: a custom template to use for generating the changelog data. +- `categories`: a hash that maps raw category names to the names to use in the + changelog. + +Using the default settings, generating a changelog results in a section along +the lines of the following: + +```markdown +## 1.0.0 (2021-01-05) + +### Features (4 changes) + +- [Feature 1](gitlab-org/gitlab@123abc) by @alice ([merge request](gitlab-org/gitlab!123)) +- [Feature 2](gitlab-org/gitlab@456abc) ([merge request](gitlab-org/gitlab!456)) +- [Feature 3](gitlab-org/gitlab@234abc) by @steve +- [Feature 4](gitlab-org/gitlab@456) +``` + +Each section starts with a title that contains the version and release date. +While the format of the date can be customized, the rest of the title can't be +changed. When adding a new section, GitLab parses these titles to determine +where in the file the new section should be placed. GitLab sorts sections +according to their versions, not their dates. + +Each section can have categories, each with their +corresponding changes. In the above example, "Features" is one such category. +You can customize the format of these sections. + +The section names are derived from the values of the Git trailer used to include +or exclude commits. + +For example, if the trailer to use is called `Changelog`, +and its value is `feature`, then the commit is grouped in the `feature` +category. The names of these raw values might differ from what you want to +show in a changelog, you can remap them. Let's say we use the `Changelog` +trailer and developers use the following values: `feature`, `bug`, and +`performance`. + +You can remap these using the following YAML configuration file: + +```yaml +--- +categories: + feature: Features + bug: Bug fixes + performance: Performance improvements +``` + +When generating the changelog data, the category titles are then `### Features`, +`### Bug fixes`, and `### Performance improvements`. + +### Custom templates + +The category sections are generated using a template. The default template is as +follows: + +```plaintext +{% if categories %} +{% each categories %} +### {{ title }} ({% if single_change %}1 change{% else %}{{ count }} changes{% end %}) + +{% each entries %} +- [{{ title }}]({{ commit.reference }})\ +{% if author.contributor %} by {{ author.reference }}{% end %}\ +{% if merge_request %} ([merge request]({{ merge_request.reference }})){% end %} +{% end %} + +{% end %} +{% else %} +No changes. +{% end %} +``` + +The `{% ... %}` tags are for statements, and `{{ ... }}` is used for printing +data. Statements must be terminated using a `{% end %}` tag. Both the `if` and +`each` statements require a single argument. + +For example, if we have a variable `valid`, and we want to display "yes" +when this value is true, and display "nope" otherwise. We can do so as follows: + +```plaintext +{% if valid %} +yes +{% else %} +nope +{% end %} +``` + +The use of `else` is optional. A value is considered true when it's a non-empty +value or boolean `true`. Empty arrays and hashes are considered false. + +Looping is done using `each`, and variables inside a loop are scoped to it. +Referring to the current value in a loop is done using the variable tag `{{ it +}}`. Other variables read their value from the current loop value. Take +this template for example: + +```plaintext +{% each users %} +{{name}} +{% end %} +``` + +Assuming `users` is an array of objects, each with a `name` field, this would +then print the name of every user. + +Using variable tags, you can access nested objects. For example, `{{ +users.0.name }}` prints the name of the first user in the `users` variable. + +If a line ends in a backslash, the next newline is ignored. This allows you to +wrap code across multiple lines, without introducing unnecessary newlines in the +Markdown output. + +You can specify a custom template in your configuration like so: + +```yaml +--- +template: > + {% if categories %} + {% each categories %} + ### {{ title }} + + {% each entries %} + - [{{ title }}]({{ commit.reference }})\ + {% if author.contributor %} by {{ author.reference }}{% end %} + {% end %} + + {% end %} + {% else %} + No changes. + {% end %} +``` + +### Template data + +At the top level, the following variable is available: + +- `categories`: an array of objects, one for every changelog category. + +In a category, the following variables are available: + +- `title`: the title of the category (after it has been remapped). +- `count`: the number of entries in this category. +- `single_change`: a boolean that indicates if there is only one change (`true`), + or multiple changes (`false`). +- `entries`: the entries that belong to this category. + +In an entry, the following variables are available (here `foo.bar` means that +`bar` is a sub-field of `foo`): + +- `title`: the title of the changelog entry (this is the commit title). +- `commit.reference`: a reference to the commit, for example, + `gitlab-org/gitlab@0a4cdd86ab31748ba6dac0f69a8653f206e5cfc7`. +- `commit.trailers`: an object containing all the Git trailers that were present + in the commit body. +- `author.reference`: a reference to the commit author (for example, `@alice`). +- `author.contributor`: a boolean set to `true` when the author is an external + contributor, otherwise this is set to `false`. +- `merge_request.reference`: a reference to the merge request that first + introduced the change (for example, `gitlab-org/gitlab!50063`). + +The `author` and `merge_request` objects might not be present if the data couldn't +be determined (for example, when a commit was created without a corresponding merge +request). + +### Enable or disable generating changelog data **(CORE ONLY)** + +This feature is under development and not ready for production use. It is +deployed behind a feature flag that is **disabled by default**. +[GitLab administrators with access to the GitLab Rails console](../administration/feature_flags.md) +can enable it. + +To enable it for a project: + +```ruby +Feature.enable(:changelog_api, Project.find(id_of_the_project)) +``` + +To disable it for a project: + +```ruby +Feature.disable(:changelog_api, Project.find(id_of_the_project)) +``` diff --git a/doc/api/resource_access_tokens.md b/doc/api/resource_access_tokens.md new file mode 100644 index 00000000000..50f5ea73634 --- /dev/null +++ b/doc/api/resource_access_tokens.md @@ -0,0 +1,107 @@ +--- +stage: Manage +group: Access +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments +--- + +# Project access tokens API + +You can read more about [project access tokens](../user/project/settings/project_access_tokens.md). + +## List project access tokens + +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/238991) in GitLab 13.9. + +Get a list of project access tokens. + +```plaintext +GET projects/:id/access_tokens +``` + +| Attribute | Type | required | Description | +|-----------|---------|----------|---------------------| +| `id` | integer/string | yes | The ID of the project | + +```shell +curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/<project_id>/access_tokens" +``` + +```json +[ + { + "user_id" : 141, + "scopes" : [ + "api" + ], + "name" : "token", + "expires_at" : "2021-01-31", + "id" : 42, + "active" : true, + "created_at" : "2021-01-20T22:11:48.151Z", + "revoked" : false + } +] +``` + +## Create a project access token + +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/238991) in GitLab 13.9. + +Create a project access token. + +```plaintext +POST projects/:id/access_tokens +``` + +| Attribute | Type | required | Description | +|-----------|---------|----------|---------------------| +| `name` | String | yes | The name of the project access token | +| `scopes` | Array\[String] | yes | [List of scopes](../user/project/settings/project_access_tokens.md#limiting-scopes-of-a-project-access-token) | +| `expires_at` | Date | no | The token expires at midnight UTC on that date | + +```shell +curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \ +--header "Content-Type:application/json" \ +--data '{ "name":"test_token", "scopes":["api", "read_repository"], "expires_at":"2021-01-31" }' \ +"https://gitlab.example.com/api/v4/projects/<project_id>/access_tokens" +``` + +```json +{ + "scopes" : [ + "api", + "read_repository" + ], + "active" : true, + "name" : "test", + "revoked" : false, + "created_at" : "2021-01-21T19:35:37.921Z", + "user_id" : 166, + "id" : 58, + "expires_at" : "2021-01-31" +} +``` + +## Revoke a project access token + +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/238991) in GitLab 13.9. + +Revoke a project access token. + +```plaintext +DELETE projects/:id/access_tokens/:token_id +``` + +| Attribute | Type | required | Description | +|-----------|---------|----------|---------------------| +| `id` | integer/string | yes | The ID of the project | +| `token_id` | integer/string | yes | The ID of the project access token | + +```shell +curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/<project_id>/access_tokens/<token_id>" +``` + +### Responses + +- `204: No Content` if successfully revoked. +- `400 Bad Request` or `404 Not Found` if not revoked successfully. diff --git a/doc/api/runners.md b/doc/api/runners.md index 131418de725..1782e236c36 100644 --- a/doc/api/runners.md +++ b/doc/api/runners.md @@ -575,7 +575,7 @@ Example response: ```json { - "id": "12345", + "id": 12345, "token": "6337ff461c94fd3fa32ba3b1ff4125" } ``` diff --git a/doc/api/scim.md b/doc/api/scim.md index 6e67b6fbc2d..d00a0988d2b 100644 --- a/doc/api/scim.md +++ b/doc/api/scim.md @@ -5,9 +5,9 @@ group: Access info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# SCIM API (SYSTEM ONLY) **(SILVER ONLY)** +# SCIM API (SYSTEM ONLY) **(PREMIUM SAAS)** -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/9388) in [GitLab.com Silver](https://about.gitlab.com/pricing/) 11.10. +> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/9388) in GitLab Premium 11.10. The SCIM API implements the [RFC7644 protocol](https://tools.ietf.org/html/rfc7644). As this API is for **system** use for SCIM provider integration, it is subject to change without notice. diff --git a/doc/api/search.md b/doc/api/search.md index 584b2cbb837..6f27b5af0b8 100644 --- a/doc/api/search.md +++ b/doc/api/search.md @@ -31,7 +31,7 @@ GET /search Search the expression within the specified scope. Currently these scopes are supported: projects, issues, merge_requests, milestones, snippet_titles, users. -If Elasticsearch is enabled additional scopes available are blobs, wiki_blobs, notes, and commits. Find more about [the feature](../integration/elasticsearch.md). **(STARTER)** +If Elasticsearch is enabled additional scopes available are blobs, wiki_blobs, notes, and commits. Find more about [the feature](../integration/elasticsearch.md). **(PREMIUM)** The response depends on the requested scope. @@ -266,7 +266,9 @@ Example response: ] ``` -### Scope: wiki_blobs **(STARTER)** +### Scope: wiki_blobs **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -295,7 +297,9 @@ Example response: NOTE: `filename` is deprecated in favor of `path`. Both return the full path of the file inside the repository, but in the future `filename` will be only the filename and not the full path. For details, see [issue 34521](https://gitlab.com/gitlab-org/gitlab/-/issues/34521). -### Scope: commits **(STARTER)** +### Scope: commits **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -328,7 +332,9 @@ Example response: ] ``` -### Scope: blobs **(STARTER)** +### Scope: blobs **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -367,7 +373,9 @@ Example response: NOTE: `filename` is deprecated in favor of `path`. Both return the full path of the file inside the repository, but in the future `filename` will be only the file name and not the full path. For details, see [issue 34521](https://gitlab.com/gitlab-org/gitlab/-/issues/34521). -### Scope: notes **(STARTER)** +### Scope: notes **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -444,7 +452,7 @@ GET /groups/:id/search Search the expression within the specified scope. Currently these scopes are supported: projects, issues, merge_requests, milestones, users. -If Elasticsearch is enabled additional scopes available are blobs, wiki_blobs, notes, and commits. Find more about [the feature](../integration/elasticsearch.md). **(STARTER)** +If Elasticsearch is enabled additional scopes available are blobs, wiki_blobs, notes, and commits. Find more about [the feature](../integration/elasticsearch.md). **(PREMIUM)** The response depends on the requested scope. @@ -648,7 +656,9 @@ Example response: ] ``` -### Scope: wiki_blobs **(STARTER)** +### Scope: wiki_blobs **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -677,7 +687,9 @@ Example response: NOTE: `filename` is deprecated in favor of `path`. Both return the full path of the file inside the repository, but in the future `filename` will be only the filename and not the full path. For details, see [issue 34521](https://gitlab.com/gitlab-org/gitlab/-/issues/34521). -### Scope: commits **(STARTER)** +### Scope: commits **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -710,7 +722,9 @@ Example response: ] ``` -### Scope: blobs **(STARTER)** +### Scope: blobs **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -749,7 +763,9 @@ Example response: NOTE: `filename` is deprecated in favor of `path`. Both return the full path of the file inside the repository, but in the future `filename` will be only the file name and not the full path. For details, see [issue 34521](https://gitlab.com/gitlab-org/gitlab/-/issues/34521). -### Scope: notes **(STARTER)** +### Scope: notes **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -998,7 +1014,9 @@ Example response: ] ``` -### Scope: notes **(STARTER)** +### Scope: notes **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -1032,7 +1050,9 @@ Example response: ] ``` -### Scope: wiki_blobs **(STARTER)** +### Scope: wiki_blobs **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -1078,7 +1098,9 @@ Example response: NOTE: `filename` is deprecated in favor of `path`. Both return the full path of the file inside the repository, but in the future `filename` will be only the filename and not the full path. For details, see [issue 34521](https://gitlab.com/gitlab-org/gitlab/-/issues/34521). -### Scope: commits **(STARTER)** +### Scope: commits **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. @@ -1111,7 +1133,9 @@ Example response: ] ``` -### Scope: blobs **(STARTER)** +### Scope: blobs **(PREMIUM)** + +> Moved to GitLab Premium in 13.9. This scope is available only if [Elasticsearch](../integration/elasticsearch.md) is enabled. diff --git a/doc/api/services.md b/doc/api/services.md index d00ddb07a05..16431937c7a 100644 --- a/doc/api/services.md +++ b/doc/api/services.md @@ -748,7 +748,7 @@ Send IRC messages, on update, to a list of recipients through an Irker gateway. Set Irker (IRC gateway) service for a project. NOTE: -Irker does NOT have built-in authentication, which makes it vulnerable to spamming IRC channels if it is hosted outside of a firewall. Please make sure you run the daemon within a secured network to prevent abuse. For more details, read: <http://www.catb.org/~esr/irker/security.html>. +Irker does NOT have built-in authentication, which makes it vulnerable to spamming IRC channels if it is hosted outside of a firewall. Please make sure you run the daemon within a secured network to prevent abuse. For more details, read [Security analysis of `irker`](http://www.catb.org/~esr/irker/security.html). ```plaintext PUT /projects/:id/services/irker @@ -1358,7 +1358,7 @@ Get JetBrains TeamCity CI service settings for a project. GET /projects/:id/services/teamcity ``` -## Jenkins CI **(STARTER)** +## Jenkins CI A continuous integration and build server diff --git a/doc/api/settings.md b/doc/api/settings.md index 264021b3a2d..6c996caed7b 100644 --- a/doc/api/settings.md +++ b/doc/api/settings.md @@ -4,7 +4,7 @@ group: unassigned info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Application settings API **(CORE ONLY)** +# Application settings API **(FREE SELF)** These API calls allow you to read and modify GitLab instance [application settings](#list-of-settings-that-can-be-accessed-via-api-calls) @@ -77,6 +77,7 @@ Example response: "asset_proxy_enabled": true, "asset_proxy_url": "https://assets.example.com", "asset_proxy_whitelist": ["example.com", "*.example.com", "your-instance.com"], + "asset_proxy_allowlist": ["example.com", "*.example.com", "your-instance.com"], "npm_package_requests_forwarding": true, "snippet_size_limit": 52428800, "issues_create_limit": 300, @@ -166,7 +167,7 @@ Example response: "local_markdown_version": 0, "asset_proxy_enabled": true, "asset_proxy_url": "https://assets.example.com", - "asset_proxy_whitelist": ["example.com", "*.example.com", "your-instance.com"], + "asset_proxy_allowlist": ["example.com", "*.example.com", "your-instance.com"], "geo_node_allowed_ips": "0.0.0.0/0, ::/0", "allow_local_requests_from_hooks_and_services": true, "allow_local_requests_from_web_hooks_and_services": true, @@ -190,7 +191,7 @@ these parameters: - `geo_status_timeout` - `deletion_adjourned_period` -Example responses: **(PREMIUM ONLY)** +Example responses: **(PREMIUM SELF)** ```json "file_template_project_id": 1, @@ -219,7 +220,8 @@ listed in the descriptions of the relevant settings. | `asset_proxy_enabled` | boolean | no | (**If enabled, requires:** `asset_proxy_url`) Enable proxying of assets. GitLab restart is required to apply changes. | | `asset_proxy_secret_key` | string | no | Shared secret with the asset proxy server. GitLab restart is required to apply changes. | | `asset_proxy_url` | string | no | URL of the asset proxy server. GitLab restart is required to apply changes. | -| `asset_proxy_whitelist` | string or array of strings | no | Assets that match these domain(s) are **not** proxied. Wildcards allowed. Your GitLab installation URL is automatically allowlisted. GitLab restart is required to apply changes. | +| `asset_proxy_whitelist` | string or array of strings | no | (Deprecated: Use `asset_proxy_allowlist` instead) Assets that match these domain(s) are **not** proxied. Wildcards allowed. Your GitLab installation URL is automatically allowlisted. GitLab restart is required to apply changes. | +| `asset_proxy_allowlist` | string or array of strings | no | Assets that match these domain(s) are **not** proxied. Wildcards allowed. Your GitLab installation URL is automatically allowlisted. GitLab restart is required to apply changes. | | `authorized_keys_enabled` | boolean | no | By default, we write to the `authorized_keys` file to support Git over SSH without additional configuration. GitLab can be optimized to authenticate SSH keys via the database file. Only disable this if you have configured your OpenSSH server to use the AuthorizedKeysCommand. | | `auto_devops_domain` | string | no | Specify a domain to use by default for every project's Auto Review Apps and Auto Deploy stages. | | `auto_devops_enabled` | boolean | no | Enable Auto DevOps for projects by default. It automatically builds, tests, and deploys applications based on a predefined CI/CD configuration. | @@ -235,7 +237,7 @@ listed in the descriptions of the relevant settings. | `default_project_visibility` | string | no | What visibility level new projects receive. Can take `private`, `internal` and `public` as a parameter. Default is `private`. | | `default_projects_limit` | integer | no | Project limit per user. Default is `100000`. | | `default_snippet_visibility` | string | no | What visibility level new snippets receive. Can take `private`, `internal` and `public` as a parameter. Default is `private`. | -| `deletion_adjourned_period` | integer | no | **(PREMIUM ONLY)** The number of days to wait before deleting a project or group that is marked for deletion. Value must be between 0 and 90. +| `deletion_adjourned_period` | integer | no | **(PREMIUM SELF)** The number of days to wait before deleting a project or group that is marked for deletion. Value must be between 0 and 90. | `diff_max_patch_bytes` | integer | no | Maximum diff patch size (Bytes). | | `disable_feed_token` | boolean | no | Disable display of RSS/Atom and calendar feed tokens ([introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/231493) in GitLab 13.7) | | `disabled_oauth_sign_in_sources` | array of strings | no | Disabled OAuth sign-in sources. | @@ -300,16 +302,16 @@ listed in the descriptions of the relevant settings. | `housekeeping_incremental_repack_period` | integer | required by: `housekeeping_enabled` | Number of Git pushes after which an incremental `git repack` is run. | | `html_emails_enabled` | boolean | no | Enable HTML emails. | | `import_sources` | array of strings | no | Sources to allow project import from, possible values: `github`, `bitbucket`, `bitbucket_server`, `gitlab`, `fogbugz`, `git`, `gitlab_project`, `gitea`, `manifest`, and `phabricator`. | -| `invisible_captcha_enabled` | boolean | no | Enable Invisible Captcha spam detection during signup. Disabled by default. | +| `invisible_captcha_enabled` | boolean | no | <!-- vale gitlab.Spelling = NO --> Enable Invisible Captcha <!-- vale gitlab.Spelling = YES --> spam detection during sign-up. Disabled by default. | | `issues_create_limit` | integer | no | Max number of issue creation requests per minute per user. Disabled by default.| | `local_markdown_version` | integer | no | Increase this value when any cached Markdown should be invalidated. | | `maintenance_mode_message` | string | no | **(PREMIUM)** Message displayed when instance is in maintenance mode | -| `maintenance_mode` | boolean | no | **(PREMIUM)** When instance is in maintenance mode, non-admin users can sign in with read-only access and make read-only API requests | +| `maintenance_mode` | boolean | no | **(PREMIUM)** When instance is in maintenance mode, non-administrative users can sign in with read-only access and make read-only API requests | | `max_artifacts_size` | integer | no | Maximum artifacts size in MB | | `max_attachment_size` | integer | no | Limit attachment size in MB | -| `max_import_size` | integer | no | Maximum import size in MB. 0 for unlimited. Default = 0 (unlimited) | +| `max_import_size` | integer | no | Maximum import size in MB. 0 for unlimited. Default = 0 (unlimited) [Modified](https://gitlab.com/gitlab-org/gitlab/-/issues/251106) from 50MB to 0 in GitLab 13.8. | | `max_pages_size` | integer | no | Maximum size of pages repositories in MB | -| `max_personal_access_token_lifetime` | integer | no | **(ULTIMATE ONLY)** Maximum allowable lifetime for personal access tokens in days | +| `max_personal_access_token_lifetime` | integer | no | **(ULTIMATE SELF)** Maximum allowable lifetime for personal access tokens in days | | `metrics_method_call_threshold` | integer | no | A method call is only tracked when it takes longer than the given amount of milliseconds. | | `mirror_available` | boolean | no | Allow repository mirroring to configured by project Maintainers. If disabled, only Admins can configure repository mirroring. | | `mirror_capacity_threshold` | integer | no | **(PREMIUM)** Minimum capacity to be available before scheduling more mirrors preemptively | diff --git a/doc/api/sidekiq_metrics.md b/doc/api/sidekiq_metrics.md index 2f018e67628..4791f066cd2 100644 --- a/doc/api/sidekiq_metrics.md +++ b/doc/api/sidekiq_metrics.md @@ -4,7 +4,7 @@ group: unassigned info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments --- -# Sidekiq Metrics API **(CORE ONLY)** +# Sidekiq Metrics API **(FREE SELF)** > Introduced in GitLab 8.9. diff --git a/doc/api/snippet_repository_storage_moves.md b/doc/api/snippet_repository_storage_moves.md index f60b1dfb449..7eb9f9d9817 100644 --- a/doc/api/snippet_repository_storage_moves.md +++ b/doc/api/snippet_repository_storage_moves.md @@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w type: reference --- -# Snippet repository storage moves API **(CORE ONLY)** +# Snippet repository storage moves API **(FREE SELF)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/49228) in GitLab 13.8. diff --git a/doc/api/suggestions.md b/doc/api/suggestions.md index 9f878cd029a..dd4340b0560 100644 --- a/doc/api/suggestions.md +++ b/doc/api/suggestions.md @@ -21,6 +21,7 @@ PUT /suggestions/:id/apply | Attribute | Type | Required | Description | | --------- | ---- | -------- | ----------- | | `id` | integer/string | yes | The ID of a suggestion | +| `commit_message` | string | no | A custom commit message to use instead of the default generated message or the project's default message | ```shell curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/suggestions/5/apply" diff --git a/doc/api/tags.md b/doc/api/tags.md index 126bc010022..262f5eb0010 100644 --- a/doc/api/tags.md +++ b/doc/api/tags.md @@ -123,7 +123,7 @@ Parameters: | `tag_name` | string | yes | The name of a tag | | `ref` | string | yes | Create tag using commit SHA, another tag name, or branch name | | `message` | string | no | Creates annotated tag | -| `release_description` | string | no | Add release notes to the Git tag and store it in the GitLab database | +| `release_description` | string | no | This parameter is [deprecated](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/41766) for use in GitLab 11.7, and is planned for [removal](https://gitlab.com/gitlab-org/gitlab/-/issues/290311) in GitLab 14.0. Use the [Releases API](../api/releases/index.md) instead. | ```shell curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/repository/tags?tag_name=test&ref=master" @@ -186,6 +186,11 @@ Parameters: ## Create a new release +WARNING: +This feature is in its end-of-life process. It is [deprecated](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/41766) +for use in GitLab 11.7, and is planned for [removal](https://gitlab.com/gitlab-org/gitlab/-/issues/290311) +in GitLab 14.0. Use the [Releases API](../api/releases/index.md) instead. + Add release notes to the existing Git tag. If there already exists a release for the given tag, status code `409` is returned. @@ -221,6 +226,11 @@ Response: ## Update a release +WARNING: +This feature is in its end-of-life process. It is [deprecated](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/41766) +for use in GitLab 11.7, and is planned for [removal](https://gitlab.com/gitlab-org/gitlab/-/issues/290311) +in GitLab 14.0. Use the [Releases API](../api/releases/index.md) instead. + Updates the release notes of a given release. ```plaintext diff --git a/doc/api/users.md b/doc/api/users.md index ecfd8e26626..70a7e2a815f 100644 --- a/doc/api/users.md +++ b/doc/api/users.md @@ -65,7 +65,7 @@ GET /users?active=true GET /users?blocked=true ``` -GitLab supports bot users such as the [alert bot](../operations/incident_management/alert_integrations.md) +GitLab supports bot users such as the [alert bot](../operations/incident_management/integrations.md) or the [support bot](../user/project/service_desk.md#support-bot-user). To exclude these users from the users' list, you can use the parameter `exclude_internal=true` ([introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/241144) in GitLab 13.4). @@ -186,7 +186,7 @@ Users on GitLab [Starter, Bronze, or higher](https://about.gitlab.com/pricing/) ] ``` -Users on GitLab [Silver or higher](https://about.gitlab.com/pricing/) also see +Users on GitLab [Premium or higher](https://about.gitlab.com/pricing/) also see the `group_saml` provider option: ```json @@ -264,6 +264,7 @@ Parameters: "created_at": "2012-05-23T08:00:58Z", "bio": "", "bio_html": "", + "bot": false, "location": null, "public_email": "john@example.com", "skype": "", @@ -350,7 +351,7 @@ the `shared_runners_minutes_limit`, and `extra_shared_runners_minutes_limit` par } ``` -Users on GitLab.com [Silver, or higher](https://about.gitlab.com/pricing/) also +Users on GitLab.com [Premium or higher](https://about.gitlab.com/pricing/) also see the `group_saml` option: ```json @@ -1374,7 +1375,7 @@ Example Responses: ``` ```json -{ "message": "The user you are trying to approve is not pending an approval" } +{ "message": "The user you are trying to approve is not pending approval" } ``` ## Get an impersonation token of a user @@ -1481,7 +1482,7 @@ Parameters: | `user_id` | integer | yes | The ID of the user | | `impersonation_token_id` | integer | yes | The ID of the impersonation token | -## Create a personal access token **(CORE ONLY)** +## Create a personal access token **(FREE SELF)** > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/17176) in GitLab 13.6. > - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/issues/267553) in GitLab 13.8. diff --git a/doc/api/v3_to_v4.md b/doc/api/v3_to_v4.md index 00e70d34db6..c63a04228a5 100644 --- a/doc/api/v3_to_v4.md +++ b/doc/api/v3_to_v4.md @@ -71,7 +71,7 @@ Below are the changes made between V3 and V4. - Notes do not return deprecated field `upvote` and `downvote` [!9384](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/9384) - Return HTTP status code `400` for all validation errors when creating or updating a member instead of sometimes `422` error. [!9523](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/9523) - Remove `GET /groups/owned`. Use `GET /groups?owned=true` instead [!9505](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/9505) -- Return 202 with JSON body on async removals on V4 API (`DELETE /projects/:id/repository/merged_branches` and `DELETE /projects/:id`) [!9449](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/9449) +- Return 202 with JSON body on asynchronous removals on V4 API (`DELETE /projects/:id/repository/merged_branches` and `DELETE /projects/:id`) [!9449](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/9449) - `GET /projects/:id/milestones?iid[]=x&iid[]=y` array filter has been renamed to `iids` [!9096](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/9096) - Return basic information about pipeline in `GET /projects/:id/pipelines` [!8875](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/8875) - Renamed all `build` references to `job` [!9463](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/9463) diff --git a/doc/api/visual_review_discussions.md b/doc/api/visual_review_discussions.md index 67d9c523862..c3414a4e9ec 100644 --- a/doc/api/visual_review_discussions.md +++ b/doc/api/visual_review_discussions.md @@ -5,9 +5,10 @@ info: To determine the technical writer assigned to the Stage/Group associated w type: reference, api --- -# Visual Review discussions API **(STARTER)** +# Visual Review discussions API **(PREMIUM)** -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/18710) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.5. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/18710) in GitLab 12.5. +> - [Moved](https://about.gitlab.com/blog/2021/01/26/new-gitlab-product-subscription-model/) to GitLab Premium in 13.9. Visual Review discussions are notes on Merge Requests sent as feedback from [Visual Reviews](../ci/review_apps/index.md#visual-reviews). diff --git a/doc/api/vulnerability_exports.md b/doc/api/vulnerability_exports.md index e4853920cab..f70662c7c61 100644 --- a/doc/api/vulnerability_exports.md +++ b/doc/api/vulnerability_exports.md @@ -37,7 +37,7 @@ POST /security/projects/:id/vulnerability_exports | `id` | integer or string | yes | The ID or [URL-encoded path](README.md#namespaced-path-encoding) of the project which the authenticated user is a member of | ```shell -curl --header POST "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/vulnerability_exports" +curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/security/projects/1/vulnerability_exports" ``` The created vulnerability export is automatically deleted after 1 hour. @@ -83,7 +83,7 @@ POST /security/groups/:id/vulnerability_exports | `id` | integer or string | yes | The ID or [URL-encoded path](README.md#namespaced-path-encoding) of the group which the authenticated user is a member of | ```shell -curl --header POST "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/security/groups/1/vulnerability_exports" +curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/security/groups/1/vulnerability_exports" ``` The created vulnerability export is automatically deleted after 1 hour. @@ -116,7 +116,7 @@ POST /security/vulnerability_exports ``` ```shell -curl --header POST "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/security/vulnerability_exports" +curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/security/vulnerability_exports" ``` The created vulnerability export is automatically deleted after one hour. diff --git a/doc/api/wikis.md b/doc/api/wikis.md index dfbedc9bfd1..43587da9473 100644 --- a/doc/api/wikis.md +++ b/doc/api/wikis.md @@ -1,6 +1,6 @@ --- stage: Create -group: Knowledge +group: Editor info: "To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments" type: reference, api --- @@ -175,9 +175,9 @@ POST /projects/:id/wikis/attachments | `file` | string | yes | The attachment to be uploaded | | `branch` | string | no | The name of the branch. Defaults to the wiki repository default branch | -To upload a file from your filesystem, use the `--form` argument. This causes +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 `file=` parameter must point to a file on your filesystem and be preceded +The `file=` parameter must point to a file on your file system and be preceded by `@`. For example: ```shell |